mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-07-10 04:46:48 -04:00
Various alignments to debug + matching TUs (#2391)
This commit is contained in:
@@ -118,6 +118,10 @@ namespace JASDsp {
|
||||
extern TChannel* CH_BUF;
|
||||
extern FxBuf* FX_BUF;
|
||||
extern f32 sDSPVolume;
|
||||
|
||||
#ifdef DEBUG
|
||||
extern s32 dspMutex;
|
||||
#endif
|
||||
};
|
||||
|
||||
u16 DSP_CreateMap2(u32 msg);
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "JSystem/JSupport/JSUList.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
#include <dolphin/os.h>
|
||||
#include <dolphin/os.h>
|
||||
|
||||
@@ -112,7 +113,7 @@ class JASMemChunkPool : public OSMutex {
|
||||
mChunks = 0;
|
||||
}
|
||||
|
||||
bool checkArea(void* ptr) {
|
||||
bool checkArea(const void* ptr) const {
|
||||
return (u8*)this + 0xc <= (u8*)ptr && (u8*)ptr < (u8*)this + (ChunkSize + 0xc);
|
||||
}
|
||||
|
||||
@@ -127,11 +128,11 @@ class JASMemChunkPool : public OSMutex {
|
||||
return rv;
|
||||
}
|
||||
|
||||
void free() {
|
||||
void free(void* mem) {
|
||||
mChunks--;
|
||||
}
|
||||
|
||||
bool isEmpty() {
|
||||
bool isEmpty() const {
|
||||
return mChunks == 0;
|
||||
}
|
||||
|
||||
@@ -201,7 +202,8 @@ public:
|
||||
MemoryChunk* prevChunk = NULL;
|
||||
while (chunk != NULL) {
|
||||
if (chunk->checkArea(ptr)) {
|
||||
chunk->free();
|
||||
chunk->free(ptr);
|
||||
|
||||
if (chunk != field_0x18 && chunk->isEmpty()) {
|
||||
MemoryChunk* nextChunk = chunk->getNextChunk();
|
||||
delete chunk;
|
||||
@@ -212,6 +214,8 @@ public:
|
||||
prevChunk = chunk;
|
||||
chunk = chunk->getNextChunk();
|
||||
}
|
||||
|
||||
JUT_PANIC(362,"Cannnot free for JASMemChunkPool")
|
||||
}
|
||||
|
||||
/* 0x18 */ MemoryChunk* field_0x18;
|
||||
|
||||
@@ -37,10 +37,10 @@ public:
|
||||
const JASSeqReader* getSeqReader() const { return &mReader; }
|
||||
void* getBase() { return mReader.getBase(); }
|
||||
void* getAddr(u32 param_0) { return mReader.getAddr(param_0); }
|
||||
u8 getByte(u32 param_0) { return mReader.getByte(param_0); }
|
||||
u16 get16(u32 param_0) { return mReader.get16(param_0); }
|
||||
u32 get24(int param_0) { return mReader.get24(param_0); }
|
||||
u32 get32(u32 param_0) { return mReader.get32(param_0); }
|
||||
u8 getByte(u32 param_0) const { return mReader.getByte(param_0); }
|
||||
u16 get16(u32 param_0) const { return mReader.get16(param_0); }
|
||||
u32 get24(u32 param_0) const { return mReader.get24(param_0); }
|
||||
u32 get32(u32 param_0) const { return mReader.get32(param_0); }
|
||||
void* getCur() { return mReader.getCur(); }
|
||||
u32 readByte() { return mReader.readByte(); }
|
||||
u32 read16() { return mReader.read16(); }
|
||||
|
||||
@@ -25,29 +25,30 @@ public:
|
||||
field_0x04 = (u8*)param_1;
|
||||
}
|
||||
|
||||
u32 get24(int param_0) {
|
||||
u32 get24(int param_0) const {
|
||||
return (*(u32*)(field_0x00 + param_0 - 1)) & 0xffffff;
|
||||
}
|
||||
|
||||
u32* getBase() { return (u32*)field_0x00; }
|
||||
void* getAddr(u32 param_0) { return field_0x00 + param_0; }
|
||||
u8 getByte(u32 param_0) { return *(field_0x00 + param_0); }
|
||||
u16 get16(u32 param_0) { return *(u16*)(field_0x00 + param_0); }
|
||||
u32 get32(u32 param_0) { return *(u32*)(field_0x00 + param_0); }
|
||||
u8 getByte(u32 param_0) const { return *(field_0x00 + param_0); }
|
||||
u16 get16(u32 param_0) const { return *(u16*)(field_0x00 + param_0); }
|
||||
u32 get32(u32 param_0) const { return *(u32*)(field_0x00 + param_0); }
|
||||
u8* getCur() { return field_0x04; }
|
||||
u32 readByte() { return *field_0x04++; }
|
||||
u32 read16() {
|
||||
u16* tmp = (u16*)field_0x04;
|
||||
field_0x04 += 2;
|
||||
return *tmp;
|
||||
return *((u16*)field_0x04)++;
|
||||
}
|
||||
u32 read24() {
|
||||
field_0x04--;
|
||||
u32* tmp = (u32*)field_0x04;
|
||||
field_0x04 += 4;
|
||||
return *tmp & 0x00ffffff;
|
||||
return (*((u32*)field_0x04)++) & 0x00ffffff;
|
||||
}
|
||||
u16 getLoopCount() const {
|
||||
if (field_0x08 == 0) {
|
||||
return 0;
|
||||
}
|
||||
return field_0x2c[field_0x08 - 1];
|
||||
}
|
||||
u16 getLoopCount() const { return field_0x08 == 0 ? 0 : field_0x2c[field_0x08 - 1]; }
|
||||
|
||||
/* 0x00 */ u8* field_0x00;
|
||||
/* 0x04 */ u8* field_0x04;
|
||||
|
||||
@@ -17,6 +17,8 @@ namespace JASDsp {
|
||||
extern const u32 FILTER_MODE_IIR;
|
||||
};
|
||||
|
||||
#define MAX_CHILDREN 16
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-jaudio
|
||||
*
|
||||
@@ -125,14 +127,17 @@ struct JASTrack : public JASPoolAllocObject_MultiThreaded<JASTrack> {
|
||||
static TList sTrackList;
|
||||
|
||||
JASSeqCtrl* getSeqCtrl() { return &mSeqCtrl; }
|
||||
u16 getPort(u32 param_0) { return mTrackPort.get(param_0); }
|
||||
u16 getPort(u32 param_0) const { return mTrackPort.get(param_0); }
|
||||
void setPort(u32 param_0, u16 param_1) { mTrackPort.set(param_0, param_1); }
|
||||
u32 checkPortIn(u32 param_0) { return mTrackPort.checkImport(param_0); }
|
||||
u32 checkPort(u32 param_0) { return mTrackPort.checkExport(param_0); }
|
||||
u32 checkPortIn(u32 param_0) const { return mTrackPort.checkImport(param_0); }
|
||||
u32 checkPort(u32 param_0) const { return mTrackPort.checkExport(param_0); }
|
||||
u32 readReg(JASRegisterParam::RegID param_0) { return mRegisterParam.read(param_0); }
|
||||
void writeReg(JASRegisterParam::RegID param_0, u32 param_1) { mRegisterParam.write(param_0, param_1); }
|
||||
JASTrack* getParent() { return mParent; }
|
||||
JASTrack* getChild(u32 index) { return mChildren[index]; }
|
||||
JASTrack* getChild(u32 index) {
|
||||
JUT_ASSERT(115, index < MAX_CHILDREN)
|
||||
return mChildren[index];
|
||||
}
|
||||
int getChannelMgrCount() { return mChannelMgrCount; }
|
||||
f32 getVibDepth() const { return mVibDepth; }
|
||||
void setVibDepth(f32 param_0) { mVibDepth = param_0; }
|
||||
@@ -142,9 +147,9 @@ struct JASTrack : public JASPoolAllocObject_MultiThreaded<JASTrack> {
|
||||
void setTremDepth(f32 param_0) { mTremDepth = param_0; }
|
||||
f32 getTremPitch() const { return mTremPitch; }
|
||||
void setTremPitch(f32 param_0) { mTremPitch = param_0; }
|
||||
u16 getVibDelay() const { return mVibDelay; }
|
||||
u32 getVibDelay() const { return mVibDelay; }
|
||||
void setVibDelay(u32 param_0) { mVibDelay = param_0; }
|
||||
u16 getTremDelay() const { return mTremDelay; }
|
||||
u32 getTremDelay() const { return mTremDelay; }
|
||||
void setTremDelay(u32 param_0) { mTremDelay = param_0; }
|
||||
u8 getStatus() const { return mStatus; }
|
||||
void setAutoDelete(u8 param_0) { mFlags.autoDelete = param_0; }
|
||||
@@ -155,8 +160,8 @@ struct JASTrack : public JASPoolAllocObject_MultiThreaded<JASTrack> {
|
||||
u16 getDirectRelease() const { return mDirectRelease; }
|
||||
void setDirectRelease(u16 param_0) {mDirectRelease = param_0; }
|
||||
u16 getTimebase() const { return mTimebase; }
|
||||
s8 getTranspose() const { return mTranspose; }
|
||||
void setTranspose(u32 param_0) { mTranspose = param_0; }
|
||||
int getTranspose() const { return mTranspose; }
|
||||
void setTranspose(s32 param_0) { mTranspose = param_0; }
|
||||
u16 getBankNumber() const { return mBankNumber; }
|
||||
void setBankNumber(u16 param_0) { mBankNumber = param_0; }
|
||||
u16 getProgNumber() const { return mProgNumber; }
|
||||
@@ -187,7 +192,7 @@ struct JASTrack : public JASPoolAllocObject_MultiThreaded<JASTrack> {
|
||||
/* 0x0e4 */ JASOscillator::Data mOscParam[2];
|
||||
/* 0x114 */ JASOscillator::Point mOscPoint[4];
|
||||
/* 0x12C */ JASTrack* mParent;
|
||||
/* 0x130 */ JASTrack* mChildren[16];
|
||||
/* 0x130 */ JASTrack* mChildren[MAX_CHILDREN];
|
||||
/* 0x170 */ TChannelMgr* mChannelMgrs[4];
|
||||
/* 0x180 */ TChannelMgr mDefaultChannelMgr;
|
||||
/* 0x1D0 */ int mChannelMgrCount;
|
||||
|
||||
@@ -17,7 +17,7 @@ public:
|
||||
/* 8029360C */ u32 checkImport(u32) const;
|
||||
/* 80293628 */ u32 checkExport(u32) const;
|
||||
|
||||
u16 get(u32 param_0) { return field_0x4[param_0]; }
|
||||
u16 get(u32 param_0) const { return field_0x4[param_0]; }
|
||||
void set(u32 param_0, u16 param_1) { field_0x4[param_0] = param_1; }
|
||||
|
||||
u16 field_0x0;
|
||||
|
||||
Reference in New Issue
Block a user