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 11b713902f
commit df0ffcd87c
50 changed files with 690 additions and 407 deletions
+1 -2
View File
@@ -991,8 +991,7 @@ int daObjStone_c::draw() {
int daObjStone_c::_delete() {
mSound.deleteObject();
u16 setid = fopAcM_GetSetId(this);
fopAcM_offActor(this, setid);
fopAcM_offActor(this, fopAcM_GetSetId(this));
effect_delete(true);
dComIfG_resDelete(&mPhase, l_arcName[mStoneType]);
return 1;
+3 -3
View File
@@ -4391,7 +4391,7 @@ bool dCamera_c::lockonCamera(s32 param_0) {
v.Val(lockon->field_0x34.V() + ang5 * 0.05f);
} else {
r = lockon->field_0x34.R();
r = r + ((fVar44a - r) * lockon->field_0x54 * fabsf(ang5.Cos()));
r = r + (fVar44a - r) * lockon->field_0x54 * fabsf(ang5.Cos());
u.Val(lockon->field_0x34.U() + (ang4 - lockon->field_0x34.U()) * lockon->field_0x58);
v.Val(lockon->field_0x34.V() + ang5 * lockon->field_0x58);
}
@@ -4443,9 +4443,9 @@ bool dCamera_c::lockonCamera(s32 param_0) {
bool bVar3 = false;
f32 fVar31;
if (std::fabsf(fVar47) > 0.05f) {
if (fabsf(fVar47) > 0.05f) {
cSAngle ang = globe2.U() + cSAngle(dCamMath::rationalBezierRatio(fVar47, 0.5f) * 7.5f);
fVar31 = std::fabsf(fVar47) - 0.05f;
fVar31 = fabsf(fVar47) - 0.05f;
lockon->field_0x42 = ang;
lockon->field_0x4c = 0.0f;
bVar3 = true;
+4 -2
View File
@@ -557,6 +557,8 @@ int dDbgCamera_c::moveTool() {
field_0x44.Val(*sp30 - *var_r28);
switch (field_0xc00) {
f32 temp_f26;
f32 temp_f1_2;
case 2:
*var_r28 = *var_r28 + (field_0x44.Norm() * mCamSetup.Turbo(field_0xc10 * var_f30));
@@ -571,8 +573,8 @@ int dDbgCamera_c::moveTool() {
*var_r28 = *var_r28 - (field_0x44.Norm() * mCamSetup.Translate(field_0xc10 * var_f30));
break;
case 3: {
f32 temp_f26 = fabsf(substick_x);
f32 temp_f1_2 = fabsf(substick_y);
temp_f26 = fabsf(substick_x);
temp_f1_2 = fabsf(substick_y);
if (field_0xc0c == 0 || temp_f26 < temp_f1_2) {
cXyz sp1B0(0.0f, 1.0f, 0.0f);
+1 -1
View File
@@ -1218,7 +1218,7 @@ bool dPa_control_c::readScene(u8 param_0, mDoDvdThd_toMainRam_c** param_1) {
if (m_sceneRes) {
JUT_ASSERT(2641, !(--mSceneCount));
JKRHeap::free(m_sceneRes, NULL);
JKRFree(m_sceneRes);
m_sceneRes = NULL;
}
JUT_ASSERT(2647, !mSceneCount++);