Improving compatibility with standard cpp compiler (#2920)

* Improving compatibility with standard cpp compiler

* Add __REGISTER macro for non mwcc compatibility

* Fix for PR comments

* fix missing define for revolution

* Simplifying cSAngle conversion
This commit is contained in:
kipcode66
2025-12-07 00:08:05 -05:00
committed by GitHub
parent 7ac2c38caf
commit fc31053cb6
68 changed files with 1417 additions and 1399 deletions
+2 -2
View File
@@ -2533,9 +2533,9 @@ void daAlink_c::setRoofHangHandOnSE(cBgS_PolyInfo* unused) {
int daAlink_c::checkRoofHangMovePos() {
static const s16 offsetAngle[] = {
0x0000,
0x8000,
-0x8000,
0x4000,
0xC000,
-0x4000,
};
if (field_0x2f98 >= 4) {
+69 -69
View File
@@ -808,7 +808,7 @@ static void __THPDecompressiMCURow512x448() {
__THPInfo->dLC[2] += 0x800;
}
static void __THPInverseDCTY8(register THPCoeff* in, register u32 xPos) {
static void __THPInverseDCTY8(__REGISTER THPCoeff* in, __REGISTER u32 xPos) {
#ifdef __MWERKS__
register f32 *q, *ws;
register f32 tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8, tmp9;
@@ -1120,7 +1120,7 @@ static void __THPInverseDCTY8(register THPCoeff* in, register u32 xPos) {
#endif
}
static void __THPInverseDCTNoYPos(register THPCoeff* in, register u32 xPos) {
static void __THPInverseDCTNoYPos(__REGISTER THPCoeff* in, __REGISTER u32 xPos) {
#ifdef __MWERKS__
register f32 *q, *ws;
register f32 tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8, tmp9;
@@ -1558,11 +1558,11 @@ static void __THPDecompressiMCURowNxN() {
__THPInfo->dLC[2] += ((sizeof(u8) * 64) * (x / 16));
}
static void __THPHuffDecodeDCTCompY(register THPFileInfo* info, THPCoeff* block) {
static void __THPHuffDecodeDCTCompY(__REGISTER THPFileInfo* info, THPCoeff* block) {
{
register s32 t;
__REGISTER s32 t;
THPCoeff dc;
register THPCoeff diff;
__REGISTER THPCoeff diff;
__dcbz((void*)block, 0);
t = __THPHuffDecodeTab(info, Ydchuff);
@@ -1572,13 +1572,13 @@ static void __THPHuffDecodeDCTCompY(register THPFileInfo* info, THPCoeff* block)
if (t) {
{
register s32 v;
register u32 cb;
register u32 cnt;
register u32 code;
register u32 tmp;
register u32 cnt1;
register u32 tmp1;
__REGISTER s32 v;
__REGISTER u32 cb;
__REGISTER u32 cnt;
__REGISTER u32 code;
__REGISTER u32 tmp;
__REGISTER u32 cnt1;
__REGISTER u32 tmp1;
// clang-format off
#ifdef __MWERKS__
asm {
@@ -1637,13 +1637,13 @@ static void __THPHuffDecodeDCTCompY(register THPFileInfo* info, THPCoeff* block)
}
{
register s32 k;
register s32 code;
register u32 cnt;
register u32 cb;
register u32 increment;
register s32 tmp;
register THPHuffmanTab* h = Yachuff;
__REGISTER s32 k;
__REGISTER s32 code;
__REGISTER u32 cnt;
__REGISTER u32 cb;
__REGISTER u32 increment;
__REGISTER s32 tmp;
__REGISTER THPHuffmanTab* h = Yachuff;
// clang-format off
#ifdef __MWERKS__
@@ -1658,8 +1658,8 @@ static void __THPHuffDecodeDCTCompY(register THPFileInfo* info, THPCoeff* block)
for (k = 1; k < 64; k++)
{
register s32 ssss;
register s32 rrrr;
__REGISTER s32 ssss;
__REGISTER s32 rrrr;
// clang-format off
#ifdef __MWERKS__
@@ -1681,8 +1681,8 @@ static void __THPHuffDecodeDCTCompY(register THPFileInfo* info, THPCoeff* block)
// clang-format on
{
register u32 maxcodebase;
register u32 tmp2;
__REGISTER u32 maxcodebase;
__REGISTER u32 tmp2;
_FailedCheckEnoughBits:
cnt += 5;
@@ -1827,8 +1827,8 @@ static void __THPHuffDecodeDCTCompY(register THPFileInfo* info, THPCoeff* block)
goto _DoneDecodeTab;
_Read4 : {
register u32 maxcodebase = (u32) & (h->maxCode);
register u32 tmp2;
__REGISTER u32 maxcodebase = (u32) & (h->maxCode);
__REGISTER u32 tmp2;
// clang-format off
#ifdef __MWERKS__
@@ -1860,9 +1860,9 @@ static void __THPHuffDecodeDCTCompY(register THPFileInfo* info, THPCoeff* block)
_FailedCheckNoBits0:
_FailedCheckNoBits1:
_REALFAILEDCHECKNOBITS : {
register u32 mask = 0xFFFFFFFF << (33 - cnt);
register u32 tmp2;
register u32 tmp3;
__REGISTER u32 mask = 0xFFFFFFFF << (33 - cnt);
__REGISTER u32 tmp2;
__REGISTER u32 tmp3;
code = (s32)(cb & (~mask));
mask = (u32) & (h->maxCode);
@@ -1917,9 +1917,9 @@ static void __THPHuffDecodeDCTCompY(register THPFileInfo* info, THPCoeff* block)
{
k += ssss;
{
register s32 v;
register u32 cnt1;
register u32 tmp1;
__REGISTER s32 v;
__REGISTER u32 cnt1;
__REGISTER u32 tmp1;
// clang-format off
#ifdef __MWERKS__
asm
@@ -1992,12 +1992,12 @@ static void __THPHuffDecodeDCTCompY(register THPFileInfo* info, THPCoeff* block)
}
}
static s32 __THPHuffDecodeTab(register THPFileInfo* info, register THPHuffmanTab* h) {
register s32 code;
register u32 cnt;
register s32 cb;
register u32 increment;
register s32 tmp;
static s32 __THPHuffDecodeTab(__REGISTER THPFileInfo* info, __REGISTER THPHuffmanTab* h) {
__REGISTER s32 code;
__REGISTER u32 cnt;
__REGISTER s32 cb;
__REGISTER u32 increment;
__REGISTER s32 tmp;
// clang-format off
#ifdef __MWERKS__
@@ -2024,8 +2024,8 @@ _done:
return code;
{
register u32 maxcodebase;
register u32 tmp2;
__REGISTER u32 maxcodebase;
__REGISTER u32 tmp2;
_FailedCheckEnoughBits:
maxcodebase = (u32) & (h->maxCode);
@@ -2134,8 +2134,8 @@ _FCEB_Done:
return tmp;
_Read4 : {
register u32 maxcodebase = (u32) & (h->maxCode);
register u32 tmp2;
__REGISTER u32 maxcodebase = (u32) & (h->maxCode);
__REGISTER u32 tmp2;
// clang-format off
#ifdef __MWERKS__
@@ -2215,8 +2215,8 @@ _FailedCheckNoBits0:
_FailedCheckNoBits1:
{
register u32 mask = 0xFFFFFFFF << (33 - cnt);
register u32 tmp2;
__REGISTER u32 mask = 0xFFFFFFFF << (33 - cnt);
__REGISTER u32 tmp2;
code = (s32)(cb & (~mask));
mask = (u32) & (h->maxCode);
@@ -2262,20 +2262,20 @@ _FailedCheckNoBits1:
return (h->Vij[(s32)(code + h->valPtr[cnt])]);
}
static void __THPHuffDecodeDCTCompU(register THPFileInfo* info, THPCoeff* block) {
register s32 t;
register THPCoeff diff;
static void __THPHuffDecodeDCTCompU(__REGISTER THPFileInfo* info, THPCoeff* block) {
__REGISTER s32 t;
__REGISTER THPCoeff diff;
THPCoeff dc;
register s32 v;
register u32 cb;
register u32 cnt;
register u32 cnt33;
register u32 tmp;
register u32 cnt1;
register u32 tmp1;
register s32 k;
register s32 ssss;
register s32 rrrr;
__REGISTER s32 v;
__REGISTER u32 cb;
__REGISTER u32 cnt;
__REGISTER u32 cnt33;
__REGISTER u32 tmp;
__REGISTER u32 cnt1;
__REGISTER u32 tmp1;
__REGISTER s32 k;
__REGISTER s32 ssss;
__REGISTER s32 rrrr;
__dcbz((void*)block, 0);
t = __THPHuffDecodeTab(info, Udchuff);
@@ -2406,20 +2406,20 @@ static void __THPHuffDecodeDCTCompU(register THPFileInfo* info, THPCoeff* block)
}
}
static void __THPHuffDecodeDCTCompV(register THPFileInfo* info, THPCoeff* block) {
register s32 t;
register THPCoeff diff;
static void __THPHuffDecodeDCTCompV(__REGISTER THPFileInfo* info, THPCoeff* block) {
__REGISTER s32 t;
__REGISTER THPCoeff diff;
THPCoeff dc;
register s32 v;
register u32 cb;
register u32 cnt;
register u32 cnt33;
register u32 tmp;
register u32 cnt1;
register u32 tmp1;
register s32 k;
register s32 ssss;
register s32 rrrr;
__REGISTER s32 v;
__REGISTER u32 cb;
__REGISTER u32 cnt;
__REGISTER u32 cnt33;
__REGISTER u32 tmp;
__REGISTER u32 cnt1;
__REGISTER u32 tmp1;
__REGISTER s32 k;
__REGISTER s32 ssss;
__REGISTER s32 rrrr;
__dcbz((void*)block, 0);
t = __THPHuffDecodeTab(info, Vdchuff);
+1 -1
View File
@@ -16,7 +16,7 @@ cXyz* daShopItem_c::getPosP() {
}
ResourceData const daShopItem_c::mData[23] = {
{"B_mD_sold", 3, -1, -1, -1, -1, -1, -1, 0.0f, 1.0f, 0, {0, 0x8000, 0}, 0, 0, 0, 0, -1, -1},
{"B_mD_sold", 3, -1, -1, -1, -1, -1, -1, 0.0f, 1.0f, 0, {0, -0x8000, 0}, 0, 0, 0, 0, -1, -1},
{"B_mD_oil", 3, -1, -1, -1, -1, -1, -1, 0.0f, 1.0f, 0, {0, 0, 0}, 0, 0, 0, 0, -1, -1},
{"O_mD_red", 3, -1, -1, -1, -1, -1, -11, 0.0f, 1.0f, 0, {0, 0, 0}, 0, 0, 0, 0, -1, -1},
{"B_mD_milk", 3, -1, -1, -1, -1, -1, -1, 0.0f, 1.0f, 0, {0, 0, 0}, 0, 0, 0, 0, -1, -1},
+1 -1
View File
@@ -4223,7 +4223,7 @@ bool dCamera_c::lockonCamera(s32 param_0) {
// this should probably be an ifdef, but we force it to be compiled
// to make the function large enough to stop doing inlining
if (!NDEBUG) {
if (!NDEBUG_DEFINED) {
if (mCamSetup.CheckFlag(0x8000)) {
//char name[28];
fopAcM_getNameString(mpPlayerActor, NULL);
+2 -2
View File
@@ -272,8 +272,8 @@ const char* daSetBgObj_c::getArcName(fopAc_ac_c* i_this) {
s16 const daObjMovebox::Act_c::M_dir_base[4] = {
0x0000,
0x4000,
0x8000,
0xC000,
-0x8000,
-0x4000,
};
f32 const daDsh_c::OPEN_SIZE = 270.1f;
+2 -2
View File
@@ -995,7 +995,7 @@ bool dCamera_c::transEvCamera(int param_1) {
trans->mEye = (*ptr1).mEye;
trans->mFovy = (*ptr1).mFovy;
trans->field_0x3c = (*ptr1).mBank;
if ((*ptr1).mBank != 0.0f) {
if (float(s16(ptr1->mBank)) != 0.0f) {
trans->field_0x68 = true;
}
}
@@ -1011,7 +1011,7 @@ bool dCamera_c::transEvCamera(int param_1) {
trans->mStartEye = (*ptr2).mEye;
trans->mStartFovy = (*ptr2).mFovy;
trans->field_0x1c = (*ptr2).mBank;
if ((*ptr2).mBank != 0.0f) {
if (float(s16(ptr2->mBank)) != 0.0f) {
trans->field_0x68 = true;
}
}
+5 -3
View File
@@ -485,7 +485,7 @@ void dFile_select_c::dataSelectInAnmSet() {
}
}
(char*)pSave += 0xa94;
pSave = (dSv_save_c*)((u8*)pSave + 0xa94);
if (field_0x025b[i] != 0 || mDataNew[i] != 0) {
field_0x0220[i]->setAlpha(0);
@@ -2720,7 +2720,7 @@ void dFile_select_c::setSaveData() {
mDataNew[i] = res;
field_0x025b[i] = 0;
}
(char*)pSave += 0xa94;
pSave = (dSv_save_c*)((u8*)pSave + 0xa94);
}
}
@@ -4096,5 +4096,7 @@ void dFile_select3D_c::toItem3Dpos(f32 param_0, f32 param_1, f32 param_2, cXyz*
#pragma pop
void dFile_select3D_c::calcViewMtx(Mtx param_0) {
cMtx_lookAt(param_0, &cXyz(0.0f, 0.0f, -1000.0f), &cXyz::Zero, &cXyz(0.0f, 1.0f, 0.0f), 0);
cXyz pos1(0.0f, 0.0f, -1000.0f);
cXyz pos2(0.0f, 1.0f, 0.0f);
cMtx_lookAt(param_0, &pos1, &cXyz::Zero, &pos2, 0);
}
+1 -1
View File
@@ -24,7 +24,7 @@
#include "m_Do/m_Do_graphic.h"
#include "m_Do/m_Do_lib.h"
#ifdef DEBUG
#if DEBUG
extern "C" int atoi(const char* str);
extern "C" f32 atof(const char* str);
#endif
+3 -1
View File
@@ -2579,7 +2579,9 @@ void dMenu_Collect3D_c::toItem3Dpos(f32 param_0, f32 param_1, f32 param_2, cXyz*
#pragma pop
void dMenu_Collect3D_c::calcViewMtx(Mtx param_0) {
mDoMtx_lookAt(param_0, &cXyz(0.0f, 0.0f, -1000.0f), &cXyz::Zero, &cXyz(0.0f, 1.0f, 0.0f), 0);
cXyz pos1(0.0f, 0.0f, -1000.0f);
cXyz pos2(0.0f, 1.0f, 0.0f);
mDoMtx_lookAt(param_0, &pos1, &cXyz::Zero, &pos2, 0);
}
+2 -2
View File
@@ -3088,9 +3088,9 @@ static leafdraw_method_class l_dMeter2_Method = {
};
extern msg_process_profile_definition g_profile_METER2 = {
-3,
fpcLy_CURRENT_e,
12,
-3,
fpcPi_CURRENT_e,
PROC_METER2,
(process_method_class*)&g_fpcLf_Method,
sizeof(dMeter2_c),
+769 -769
View File
File diff suppressed because it is too large Load Diff