Misc fixes (#2860)

* Misc matches

* Remove more old dol2asm stuff

* Remove dCcS::SetMass-related fakematches

No longer necessary with the PCH for some reason.

* Use attention types enum in more places

* Remove more dol2asm stuff

* Clean up matDL_dis.py
This commit is contained in:
LagoLunatic
2025-11-25 11:32:34 -05:00
committed by GitHub
parent b46885816c
commit 1420aa0d0d
156 changed files with 209 additions and 594 deletions
-1
View File
@@ -32,7 +32,6 @@ Z2AudioMgr::Z2AudioMgr() : mSoundStarter(true) {
/* 802CD34C-802CD7F8 2C7C8C 04AC+00 0/0 1/1 0/0 .text
* init__10Z2AudioMgrFP12JKRSolidHeapUlPvP10JKRArchive */
// NONMATCHING JASPoolAllocObject<_> locations
void Z2AudioMgr::init(JKRSolidHeap* param_0, u32 param_1, void* param_2, JKRArchive* param_3) {
JAU_JASInitializer stack_60;
stack_60.field_0x04 = param_1;
+40 -43
View File
@@ -973,7 +973,6 @@ void Z2EnvSeMgr::setHyrulSewerOpen(bool param_0) {
}
/* 802C8300-802C8730 2C2C40 0430+00 2/1 1/1 0/0 .text startRiverSe__10Z2EnvSeMgrFSc */
// NONMATCHING JAISound stack issues
bool Z2EnvSeMgr::startRiverSe(s8 param_1) {
#ifdef DEBUG
char* spotName = sSpotName;
@@ -990,14 +989,7 @@ bool Z2EnvSeMgr::startRiverSe(s8 param_1) {
break;
}
case 8:
// fake match: should be 2000.0f according to debug, but that generates an extra entry in sdata2
if ((Z2GetStatusMgr()->mPolygonPosition.y >
#ifdef DEBUG
2000.0f
#else
-14500.0f
#endif
)) {
if ((Z2GetStatusMgr()->mPolygonPosition.y > 2000.0f)) {
break;
}
case 0x15:
@@ -1013,64 +1005,70 @@ bool Z2EnvSeMgr::startRiverSe(s8 param_1) {
if (mRiverSeMgr.getPosCount() < 0) {
return false;
}
JAISoundID aJStack_742 = 0xffffffff;
bool uVar8 = false;
f32 dVar16 = param_1 / 127.0f;
f32 dVar18 = field_0x1ac * mRiverSeMgr.getMaxVolume();
f32 dVar13 = mRiverSeMgr.getPanPower();
f32 dolbyPower = mRiverSeMgr.getDolbyPower();
f32 dVar17 = field_0x1b0;
f32 fArr0;
f32 fArr1;
f32 fArr2;
f32 fArr3;
JAISoundID sp3C = -1;
bool r30 = false;
f32 f31;
f32 f29;
f32 dolbyPower;
f32 f30;
f32 f27;
f27 = param_1 / 127.0f;
f31 = field_0x1ac * mRiverSeMgr.getMaxVolume();
f29 = mRiverSeMgr.getPanPower();
dolbyPower = mRiverSeMgr.getDolbyPower();
f30 = field_0x1b0;
f32 sp18;
f32 sp14;
f32 sp10;
f32 sp0C;
switch (field_0x188) {
case 0:
return false;
case 1:
aJStack_742 = Z2SE_ENV_RIVER_SMALL;
fArr3 = dolbyPower;
dVar18 *= Z2Calc::linearTransform(field_0x18c.calcNoise1f(), 0.0f, 1.0f, 0.7f, 1.0f,
sp3C = Z2SE_ENV_RIVER_SMALL;
sp18 = dolbyPower;
f31 *= Z2Calc::linearTransform(field_0x18c.calcNoise1f(), 0.0f, 1.0f, 0.7f, 1.0f,
true);
dVar17 *= Z2Calc::linearTransform(field_0x19c.calcNoise1f(), 0.0f, 1.0f, 0.8f, 1.1f,
f30 *= Z2Calc::linearTransform(field_0x19c.calcNoise1f(), 0.0f, 1.0f, 0.8f, 1.1f,
true);
uVar8 = field_0x180.startEnvSeLevel(aJStack_742, dVar16, dVar18, dVar13, dolbyPower, dVar17, 0);
r30 = field_0x180.startEnvSeLevel(sp3C, f27, f31, f29, dolbyPower, f30, 0);
break;
case 2:
aJStack_742 = Z2SE_ENV_RIVER_NORMAL;
sp3C = Z2SE_ENV_RIVER_NORMAL;
mRiverSeMgr.getMaxPowL();
mRiverSeMgr.getMaxPowR();
fArr2 = mRiverSeMgr.getDolbyPower();
uVar8 = field_0x180.startEnvSeLevel(aJStack_742, dVar16, dVar18, dVar13, dolbyPower, dVar17, 0);
sp14 = mRiverSeMgr.getDolbyPower();
r30 = field_0x180.startEnvSeLevel(sp3C, f27, f31, f29, dolbyPower, f30, 0);
break;
case 3:
if (field_0x1b8 > 0) {
dVar18 *= (field_0x1b8 + 50) / 150.0f;
f31 *= (field_0x1b8 + 50) / 150.0f;
} else {
if (field_0x1b8 < 0) {
dVar18 *= (field_0x1b8 + 150) / 150.0f;
f31 *= (field_0x1b8 + 150) / 150.0f;
} else {
dVar18 *= 0.3f;
f31 *= 0.3f;
}
}
aJStack_742 = Z2SE_ENV_SEWER;
fArr1 = dolbyPower;
dVar18 *= Z2Calc::linearTransform(field_0x18c.calcNoise1f(), 0.0f, 1.0f, 0.6f, 1.0f, true);
dVar17 *= Z2Calc::linearTransform(field_0x19c.calcNoise1f(), 0.0f, 1.0f, 0.8f, 1.0f, true);
uVar8 = field_0x180.startEnvSeLevel(aJStack_742, dVar16, dVar18, dVar13, dolbyPower, dVar17, 0);
sp3C = Z2SE_ENV_SEWER;
sp10 = dolbyPower;
f31 *= Z2Calc::linearTransform(field_0x18c.calcNoise1f(), 0.0f, 1.0f, 0.6f, 1.0f, true);
f30 *= Z2Calc::linearTransform(field_0x19c.calcNoise1f(), 0.0f, 1.0f, 0.8f, 1.0f, true);
r30 = field_0x180.startEnvSeLevel(sp3C, f27, f31, f29, dolbyPower, f30, 0);
break;
case 5:
aJStack_742 = Z2SE_ENV_SPIRIT_FOUNTAIN;
fArr0 = dolbyPower;
dVar18 *= Z2Calc::linearTransform(field_0x18c.calcNoise1f(), 0.0f, 1.0f, 0.6f, 1.0f, true);
dVar17 *= Z2Calc::linearTransform(field_0x19c.calcNoise1f(), 0.0f, 1.0f, 0.8f, 1.0f, true);
uVar8 = field_0x180.startEnvSeLevel(aJStack_742, dVar16, dVar18, dVar13, dolbyPower, dVar17, 0);
sp3C = Z2SE_ENV_SPIRIT_FOUNTAIN;
sp0C = dolbyPower;
f31 *= Z2Calc::linearTransform(field_0x18c.calcNoise1f(), 0.0f, 1.0f, 0.6f, 1.0f, true);
f30 *= Z2Calc::linearTransform(field_0x19c.calcNoise1f(), 0.0f, 1.0f, 0.8f, 1.0f, true);
r30 = field_0x180.startEnvSeLevel(sp3C, f27, f31, f29, dolbyPower, f30, 0);
break;
}
mRiverSeMgr.resetMultiSePos();
return uVar8;
return r30;
}
/* 802C8730-802C886C 2C3070 013C+00 1/1 1/1 0/0 .text initFallSe__10Z2EnvSeMgrFUcUcUcUc
@@ -1343,7 +1341,6 @@ f32 Z2EnvSeMgr::getFogDensity() {
}
/* 802C9400-802C950C 2C3D40 010C+00 0/0 0/0 1/1 .text startFogSe__10Z2EnvSeMgrFv */
// NONMATCHING fmuls reg order
bool Z2EnvSeMgr::startFogSe() {
bool iVar5 = false;
f32 dVar10 = field_0x2e8.calcNoise1f();
-2
View File
@@ -546,7 +546,6 @@ Z2LinkSoundStarter::Z2LinkSoundStarter() : Z2SoundStarter(false) {}
/* 802C4928-802C4FFC 2BF268 06D4+00 2/0 0/0 0/0 .text
* startSound__18Z2LinkSoundStarterF10JAISoundIDP14JAISoundHandlePCQ29JGeometry8TVec3<f>UlfffffUl */
// NONMATCHING stack alloc
bool Z2LinkSoundStarter::startSound(JAISoundID i_soundID, JAISoundHandle* param_1,
JGeometry::TVec3<f32> const* param_2, u32 param_3,
f32 param_4, f32 param_5, f32 param_6, f32 param_7,
@@ -732,7 +731,6 @@ Z2RideSoundStarter::Z2RideSoundStarter(Z2CreatureRide* ride) : Z2SoundStarter(fa
/* 802C5284-802C54B8 2BFBC4 0234+00 2/0 0/0 0/0 .text
* startSound__18Z2RideSoundStarterF10JAISoundIDP14JAISoundHandlePCQ29JGeometry8TVec3<f>UlfffffUl */
// NONMATCHING regalloc / extra load
bool Z2RideSoundStarter::startSound(JAISoundID i_soundID, JAISoundHandle* param_1,
JGeometry::TVec3<f32> const* param_2, u32 param_3,
f32 param_4, f32 param_5, f32 param_6, f32 param_7,
+5 -5
View File
@@ -187,7 +187,6 @@ void Z2SceneMgr::setFadeInStart(u8 param_0) {
}
/* 802B6AF8-802B995C 2B1438 2E64+00 8/0 1/1 0/0 .text setSceneName__10Z2SceneMgrFPcll */
// NONMATCHING JSULink<JAIStream>::getNext() inlining
void Z2SceneMgr::setSceneName(char* spotName, s32 room, s32 layer) {
JAISoundID bgm_id = -1;
JAISound* sound;
@@ -1982,9 +1981,12 @@ void Z2SceneMgr::load2ndDynamicWave() {
}
/* 802BA294-802BA56C 2B4BD4 02D8+00 1/0 2/2 0/0 .text sceneBgmStart__10Z2SceneMgrFv */
// NONMATCHING regalloc
// NONMATCHING - extra BGM_ID load
void Z2SceneMgr::sceneBgmStart() {
OS_REPORT("[Z2SceneMgr::sceneBgmStart] %08x", BGM_ID.mId.mFullId);
inGame = true;
BOOL r28 = FALSE;
setSceneExist(true);
Z2GetStatusMgr()->setPauseFlag(0);
@@ -1992,7 +1994,7 @@ void Z2SceneMgr::sceneBgmStart() {
return;
}
if (!BGM_ID.isAnonymous() && Z2GetStatusMgr()->getDemoStatus() != 11) {
if (!BGM_ID.isAnonymous() && !r28 && Z2GetStatusMgr()->getDemoStatus() != 11) {
bool var;
switch (BGM_ID.mId.mBytes.b0) {
case 1:
@@ -2144,5 +2146,3 @@ bool Z2SceneMgr::loadBgmWave(u32 wave) {
}
return false;
}
/* 8039BFA8-8039BFA8 028608 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-1
View File
@@ -512,7 +512,6 @@ void Z2SeqMgr::subBgmStop() {
/* 802AF9D0-802AFB94 2AA310 01C4+00 2/2 0/0 0/0 .text subBgmStopInner__8Z2SeqMgrFv */
// NONMATCHING regalloc
void Z2SeqMgr::subBgmStopInner() {
if (field_0xb8 == -1) {
return;
-2
View File
@@ -385,5 +385,3 @@ bool Z2SoundMgr::isPlayingSoundID(JAISoundID i_soundID) {
}
return false;
}
/* 8039B9D0-8039B9D0 028030 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-2
View File
@@ -334,5 +334,3 @@ void Z2StatusMgr::setCameraInWaterDepth(f32 depth) {
}
mUnderwaterDepth = depth;
}
/* 8039BC88-8039BC88 0282E8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */