mirror of
https://github.com/zeldaret/tww.git
synced 2026-09-10 11:55:14 -04:00
@@ -64,7 +64,7 @@ void JASystem::TBasicWaveBank::setWaveTableSize(u32 param_1) {
|
||||
void JASystem::TBasicWaveBank::incWaveTable(const TWaveGroup* param_1) {
|
||||
/* Nonmatching */
|
||||
OSLockMutex(&mMutex);
|
||||
for (int i = 0; i < param_1->mWaveCount; i++) {
|
||||
for (int i = 0; i < param_1->getWaveCount(); i++) {
|
||||
u32 waveID = param_1->getWaveID(i);
|
||||
TWaveInfo** table = mWaveTable;
|
||||
TWaveInfo* waveInfo = ¶m_1->mCtrlWaveArray[i];
|
||||
@@ -79,8 +79,28 @@ void JASystem::TBasicWaveBank::incWaveTable(const TWaveGroup* param_1) {
|
||||
}
|
||||
|
||||
/* 80285D54-80285E28 .text decWaveTable__Q28JASystem14TBasicWaveBankFPCQ38JASystem14TBasicWaveBank10TWaveGroup */
|
||||
void JASystem::TBasicWaveBank::decWaveTable(const TWaveGroup*) {
|
||||
void JASystem::TBasicWaveBank::decWaveTable(const TWaveGroup* param_1) {
|
||||
/* Nonmatching */
|
||||
OSLockMutex(&mMutex);
|
||||
for (int i = 0; i < param_1->getWaveCount(); i++) {
|
||||
u32 waveID = param_1->getWaveID(i);
|
||||
TWaveInfo* waveInfo = mWaveTable[waveID];
|
||||
TWaveInfo* waveInfo2 = ¶m_1->mCtrlWaveArray[i];
|
||||
for (; waveInfo; waveInfo = waveInfo->mPrev) {
|
||||
if (waveInfo == waveInfo2) {
|
||||
if (!waveInfo->mNext) {
|
||||
mWaveTable[waveID] = waveInfo->mPrev;
|
||||
} else {
|
||||
waveInfo->mNext->mPrev = waveInfo->mPrev;
|
||||
}
|
||||
if (waveInfo->mPrev) {
|
||||
waveInfo->mPrev->mNext = waveInfo->mNext;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
OSUnlockMutex(&mMutex);
|
||||
}
|
||||
|
||||
/* 80285E28-80285E58 .text getWaveHandle__Q28JASystem14TBasicWaveBankCFUl */
|
||||
|
||||
Reference in New Issue
Block a user