JASSimpleWaveBank

This commit is contained in:
Jcw87
2023-10-30 05:11:58 -07:00
parent 11776b2073
commit a60d94f79d
3 changed files with 66 additions and 41 deletions
+1 -1
View File
@@ -677,7 +677,7 @@ config.libs = [
Object(NonMatching, "JSystem/JAudio/JASBasicInst.cpp"),
Object(NonMatching, "JSystem/JAudio/JASDrumSet.cpp"),
Object(NonMatching, "JSystem/JAudio/JASBasicWaveBank.cpp"),
Object(NonMatching, "JSystem/JAudio/JASSimpleWaveBank.cpp"),
Object(Matching, "JSystem/JAudio/JASSimpleWaveBank.cpp"),
Object(Matching, "JSystem/JAudio/JASInstEffect.cpp"),
Object(NonMatching, "JSystem/JAudio/JASInstSense.cpp"),
Object(NonMatching, "JSystem/JAudio/JASInstRand.cpp"),
@@ -0,0 +1,39 @@
#ifndef JASSIMPLEWAVEBANK_H
#define JASSIMPLEWAVEBANK_H
#include "JSystem/JAudio/JASWaveArcLoader.h"
#include "JSystem/JAudio/JASWaveBank.h"
#include "dolphin/types.h"
namespace JASystem {
class TSimpleWaveBank : public TWaveBank, TWaveArc {
public:
class TWaveHandle : public JASystem::TWaveHandle {
public:
TWaveHandle() { mHeap = NULL; }
~TWaveHandle();
const TWaveInfo* getWaveInfo() const { return &field_0x4; };
const void* getWavePtr() const {
if (mHeap->mBase == NULL) {
return NULL;
}
return (u8*)mHeap->mBase + field_0x4.field_0x8;
}
/* 0x04 */ TWaveInfo field_0x4;
/* 0x30 */ Kernel::THeap* mHeap;
};
TSimpleWaveBank();
~TSimpleWaveBank();
void setWaveTableSize(u32);
TWaveHandle* getWaveHandle(u32) const;
void setWaveInfo(u32, const JASystem::TWaveInfo&);
TWaveArc* getWaveArc(int);
/* 0x7C */ TWaveHandle* mWaveTable;
/* 0x80 */ u32 mWaveCount;
};
}
#endif /* JASSIMPLEWAVEBANK_H */
+26 -40
View File
@@ -3,66 +3,52 @@
// Translation Unit: JASSimpleWaveBank.cpp
//
#include "JASSimpleWaveBank.h"
#include "JSystem/JAudio/JASSimpleWaveBank.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "JSystem/JUtility/JUTAssert.h"
#include "dolphin/types.h"
/* 802864C8-80286528 .text __ct__Q28JASystem15TSimpleWaveBankFv */
JASystem::TSimpleWaveBank::TSimpleWaveBank() {
/* Nonmatching */
mWaveTable = NULL;
mWaveCount = 0;
}
/* 80286528-802865F4 .text __dt__Q28JASystem15TSimpleWaveBankFv */
JASystem::TSimpleWaveBank::~TSimpleWaveBank() {
/* Nonmatching */
delete[] mWaveTable;
}
/* 802865F4-80286650 .text __dt__Q38JASystem15TSimpleWaveBank11TWaveHandleFv */
JASystem::TSimpleWaveBank::TWaveHandle::~TWaveHandle() {
/* Nonmatching */
}
JASystem::TSimpleWaveBank::TWaveHandle::~TWaveHandle() {}
/* 80286650-8028670C .text setWaveTableSize__Q28JASystem15TSimpleWaveBankFUl */
void JASystem::TSimpleWaveBank::setWaveTableSize(unsigned long) {
/* Nonmatching */
void JASystem::TSimpleWaveBank::setWaveTableSize(u32 param_1) {
delete[] mWaveTable;
mWaveTable = new (getCurrentHeap(), 0) TWaveHandle[param_1];
JUT_ASSERT(34, mWaveTable != 0);
mWaveCount = param_1;
}
/* 8028670C-80286730 .text getWaveHandle__Q28JASystem15TSimpleWaveBankCFUl */
void JASystem::TSimpleWaveBank::getWaveHandle(unsigned long) const {
/* Nonmatching */
JASystem::TSimpleWaveBank::TWaveHandle* JASystem::TSimpleWaveBank::getWaveHandle(u32 param_1) const {
if (param_1 >= mWaveCount) {
return NULL;
}
return mWaveTable + param_1;
}
/* 80286730-802867D4 .text setWaveInfo__Q28JASystem15TSimpleWaveBankFUlRCQ28JASystem9TWaveInfo */
void JASystem::TSimpleWaveBank::setWaveInfo(unsigned long, const JASystem::TWaveInfo&) {
/* Nonmatching */
void JASystem::TSimpleWaveBank::setWaveInfo(u32 param_1, const JASystem::TWaveInfo& param_2) {
mWaveTable[param_1].field_0x4 = param_2;
mWaveTable[param_1].field_0x4.field_0x24 = &field_0x4c;
mWaveTable[param_1].mHeap = &field_0x4;
}
/* 802867D4-802867F4 .text getWaveArc__Q28JASystem15TSimpleWaveBankFi */
void JASystem::TSimpleWaveBank::getWaveArc(int) {
/* Nonmatching */
JASystem::TWaveArc* JASystem::TSimpleWaveBank::getWaveArc(int param_1) {
if (param_1 != 0) {
return NULL;
}
return this;
}
/* 802867F4-80286818 .text __ct__Q38JASystem15TSimpleWaveBank11TWaveHandleFv */
JASystem::TSimpleWaveBank::TWaveHandle::TWaveHandle() {
/* Nonmatching */
}
/* 80286818-80286820 .text getWaveInfo__Q38JASystem15TSimpleWaveBank11TWaveHandleCFv */
void JASystem::TSimpleWaveBank::TWaveHandle::getWaveInfo() const {
/* Nonmatching */
}
/* 80286820-80286844 .text getWavePtr__Q38JASystem15TSimpleWaveBank11TWaveHandleCFv */
void JASystem::TSimpleWaveBank::TWaveHandle::getWavePtr() const {
/* Nonmatching */
}
/* 80286844-80286848 .text onLoadDone__Q28JASystem8TWaveArcFv */
void JASystem::TWaveArc::onLoadDone() {
/* Nonmatching */
}
/* 80286848-8028684C .text onEraseDone__Q28JASystem8TWaveArcFv */
void JASystem::TWaveArc::onEraseDone() {
/* Nonmatching */
}