mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-08-13 03:29:16 -04:00
Isolate JKRHeap operator overloads
Fixes #25 This isolates the JKRHeap operator new/delete overloads. Every single new/delete site in the code has been replaced with a macro. Sadly for new[] and delete[] we have to keep global operators. The global new[] just allocates into malloc() however, and delete[] goes into free() if it's not in a JKRHeap. So that's fine.
This commit is contained in:
@@ -526,7 +526,7 @@ JAIAudible* Z2Audience::newAudible(const JGeometry::TVec3<f32>& pos, JAISoundID
|
||||
JAUAudibleParam params = Z2GetSoundInfo()->getAudibleSwFull(soundID);
|
||||
bool x = params.field_0x0.bytes.b0_0 != 0;
|
||||
|
||||
Z2Audible* audible = new Z2Audible(pos, param_2, channelNum, x);
|
||||
Z2Audible* audible = JKR_NEW Z2Audible(pos, param_2, channelNum, x);
|
||||
if (audible == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
@@ -552,7 +552,7 @@ JAIAudible* Z2Audience::newAudible(const JGeometry::TVec3<f32>& pos, JAISoundID
|
||||
}
|
||||
|
||||
void Z2Audience::deleteAudible(JAIAudible* audible) {
|
||||
delete audible;
|
||||
JKR_DELETE(audible);
|
||||
}
|
||||
|
||||
Z2Audible::~Z2Audible() {}
|
||||
|
||||
@@ -55,7 +55,7 @@ void Z2AudioArcLoader::readBSTN(const void* addr, u32 param_1) {
|
||||
|
||||
u8* bstnDst = (u8*)addr;
|
||||
if (param_1 != 0) {
|
||||
bstnDst = new (gameHeap, 4) u8[param_1];
|
||||
bstnDst = JKR_NEW_ARGS (gameHeap, 4) u8[param_1];
|
||||
if (bstnDst != NULL) {
|
||||
memcpy(bstnDst, addr, param_1);
|
||||
}
|
||||
@@ -63,7 +63,7 @@ void Z2AudioArcLoader::readBSTN(const void* addr, u32 param_1) {
|
||||
JUT_ASSERT(122, bstnDst);
|
||||
}
|
||||
|
||||
JAUSoundNameTable* soundNameTable = new (gameHeap, 0) JAUSoundNameTable(true);
|
||||
JAUSoundNameTable* soundNameTable = JKR_NEW_ARGS (gameHeap, 0) JAUSoundNameTable(true);
|
||||
JUT_ASSERT(125, soundNameTable);
|
||||
|
||||
soundNameTable->init(bstnDst);
|
||||
|
||||
@@ -89,7 +89,7 @@ void Z2AudioMgr::init(JKRSolidHeap* heap, u32 memSize, void* baaData, JKRArchive
|
||||
seqMgr->getParams()->moveVolume(Z2Param::VOL_BGM_DEFAULT, 0);
|
||||
|
||||
JAIStreamMgr* streamMgr = mSoundMgr.getStreamMgr();
|
||||
JAUStreamStaticAramMgr_<1>* streamStaticAramMgr = new(heap, 0) JAUStreamStaticAramMgr_<1>();
|
||||
JAUStreamStaticAramMgr_<1>* streamStaticAramMgr = JKR_NEW_ARGS(heap, 0) JAUStreamStaticAramMgr_<1>();
|
||||
streamStaticAramMgr->reserveAram(NULL, 0, 0x14);
|
||||
streamMgr->setStreamAramMgr(streamStaticAramMgr);
|
||||
streamMgr->getParams()->moveVolume(Z2Param::VOL_BGM_DEFAULT, 0);
|
||||
|
||||
@@ -42,28 +42,28 @@ void Z2DebugSys::initJAW() {
|
||||
JAWPlayerChView* playerChView;
|
||||
JKRSetCurrentHeap(heap);
|
||||
u32 local_50 = heap->getFreeSize();
|
||||
soundPlayer = new (heap, 0) Z2SoundPlayer("GC-Zelda2");
|
||||
sysMemView = new (heap, 0) JAWSysMemView();
|
||||
bankView = new (heap, 0) JAWBankView();
|
||||
chView = new (heap, 0) JAWChView();
|
||||
trackView = new (heap, 0) Z2TrackView(0, Z2TrackView::DISPMODE0);
|
||||
reportView = new (heap, 0) JAWReportView();
|
||||
soundPlayer = JKR_NEW_ARGS (heap, 0) Z2SoundPlayer("GC-Zelda2");
|
||||
sysMemView = JKR_NEW_ARGS (heap, 0) JAWSysMemView();
|
||||
bankView = JKR_NEW_ARGS (heap, 0) JAWBankView();
|
||||
chView = JKR_NEW_ARGS (heap, 0) JAWChView();
|
||||
trackView = JKR_NEW_ARGS (heap, 0) Z2TrackView(0, Z2TrackView::DISPMODE0);
|
||||
reportView = JKR_NEW_ARGS (heap, 0) JAWReportView();
|
||||
JASReportInit(heap, 500);
|
||||
hioBankEdit = new (heap, 0) JAWHioBankEdit();
|
||||
waveArcLoader = new (heap, 0) Z2WaveArcLoader();
|
||||
volume = new (heap, 0) JAWVolume(90, 480);
|
||||
playSeView = new (heap, 0) Z2PlaySeView();
|
||||
audSettingView = new (heap, 0) Z2AudSettingView();
|
||||
dspCheck = new (heap, 0) Z2DSPCheck();
|
||||
hioBankEdit = JKR_NEW_ARGS (heap, 0) JAWHioBankEdit();
|
||||
waveArcLoader = JKR_NEW_ARGS (heap, 0) Z2WaveArcLoader();
|
||||
volume = JKR_NEW_ARGS (heap, 0) JAWVolume(90, 480);
|
||||
playSeView = JKR_NEW_ARGS (heap, 0) Z2PlaySeView();
|
||||
audSettingView = JKR_NEW_ARGS (heap, 0) Z2AudSettingView();
|
||||
dspCheck = JKR_NEW_ARGS (heap, 0) Z2DSPCheck();
|
||||
JAWExtSystem::registWindow(1, soundPlayer, 10, 22);
|
||||
entrySeView = new (heap, 0) Z2EntrySeView();
|
||||
entrySeView = JKR_NEW_ARGS (heap, 0) Z2EntrySeView();
|
||||
JAWExtSystem::registWindow(2, entrySeView, 10, 22);
|
||||
JAWExtSystem::registWindow(3, playSeView, 10, 22);
|
||||
JAWExtSystem::registWindow(4, sysMemView, 10, 22);
|
||||
JAWExtSystem::registWindow(5, bankView, 10, 22);
|
||||
JAWExtSystem::registWindow(6, chView, 10, 22);
|
||||
JAWExtSystem::registWindow(7, trackView, 10, 22);
|
||||
playerChView = new (heap, 0) JAWPlayerChView();
|
||||
playerChView = JKR_NEW_ARGS (heap, 0) JAWPlayerChView();
|
||||
JAWExtSystem::registWindow(8, playerChView, 10, 22);
|
||||
JAWExtSystem::registWindow(11, reportView, 330, 0);
|
||||
JAWExtSystem::registWindow(12, hioBankEdit, 10, 0);
|
||||
@@ -80,21 +80,21 @@ void Z2DebugSys::initSoundHioNode() {
|
||||
JKRSetCurrentHeap(heap);
|
||||
s32 freeSize = heap->getFreeSize();
|
||||
JAHSingletonBase<JAHioMgr>::newInstance();
|
||||
JAHioNode* soundRoot = new (heap, 0) JAHioNode("サウンド");
|
||||
JAHioNode* soundRoot = JKR_NEW_ARGS (heap, 0) JAHioNode("サウンド");
|
||||
JUT_ASSERT(239, soundRoot);
|
||||
JAHSingletonBase<JAHioMgr>::getIns()->init_OnGame();
|
||||
JAHSingletonBase<JAHioMgr>::getIns()->appendRootNode(&mDoHIO_root, soundRoot);
|
||||
mDoHIO_createChild("サウンド", soundRoot);
|
||||
JAHSoundPlayerNode* soundPlayerNode = new (heap, 0) JAHSoundPlayerNode();
|
||||
JAHSoundPlayerNode* soundPlayerNode = JKR_NEW_ARGS (heap, 0) JAHSoundPlayerNode();
|
||||
JUT_ASSERT(258, soundPlayerNode);
|
||||
soundRoot->appendNode(soundPlayerNode, NULL);
|
||||
Z2ParamNode* paramNode = new (heap, 0) Z2ParamNode();
|
||||
Z2ParamNode* paramNode = JKR_NEW_ARGS (heap, 0) Z2ParamNode();
|
||||
JUT_ASSERT(262, paramNode);
|
||||
soundRoot->appendNode(paramNode, NULL);
|
||||
Z2FxLineEditNode* fxNode = new (heap, 0) Z2FxLineEditNode(heap);
|
||||
Z2FxLineEditNode* fxNode = JKR_NEW_ARGS (heap, 0) Z2FxLineEditNode(heap);
|
||||
JUT_ASSERT(267, fxNode);
|
||||
soundRoot->appendNode(fxNode, NULL);
|
||||
Z2F1SwingTestNode* f1TestWin = new (heap, 0) Z2F1SwingTestNode();
|
||||
Z2F1SwingTestNode* f1TestWin = JKR_NEW_ARGS (heap, 0) Z2F1SwingTestNode();
|
||||
JUT_ASSERT(284, f1TestWin);
|
||||
soundRoot->appendNode(f1TestWin, NULL);
|
||||
JAWExtSystem::registWindow(10, f1TestWin, 10, 22);
|
||||
@@ -111,9 +111,9 @@ JAISeqDataMgr* Z2DebugSys::initSeSeqDataMgr(const void* param_1) {
|
||||
JKRExpHeap* heap = mDoExt_getGameHeap();
|
||||
JKRSetCurrentHeap(heap);
|
||||
s32 freeSize = heap->getFreeSize();
|
||||
JAWHioReceiver* receiver = new (heap, 0) JAWHioReceiver();
|
||||
JAWHioReceiver* receiver = JKR_NEW_ARGS (heap, 0) JAWHioReceiver();
|
||||
JAWExtSystem::registWindow(0, receiver, 10, 22);
|
||||
seqDataMgr = new (heap, 0) Z2HioSeSeqDataMgr(param_1, receiver);
|
||||
seqDataMgr = JKR_NEW_ARGS (heap, 0) Z2HioSeSeqDataMgr(param_1, receiver);
|
||||
JKRSetCurrentHeap(oldHeap);
|
||||
return seqDataMgr;
|
||||
}
|
||||
|
||||
@@ -20,10 +20,10 @@ void Z2FxLineMgr::initDataArc(JKRArchive* arc, JKRHeap* heap) {
|
||||
JUT_ASSERT(44, arc);
|
||||
JUT_ASSERT(45, heap);
|
||||
|
||||
mFxLineBuffer[0] = new (heap, 0x20) u8[0x2800];
|
||||
mFxLineBuffer[1] = new (heap, 0x20) u8[0x2800];
|
||||
mFxLineBuffer[2] = new (heap, 0x20) u8[0x4B00];
|
||||
mFxLineBuffer[3] = new (heap, 0x20) u8[0x4B00];
|
||||
mFxLineBuffer[0] = JKR_NEW_ARGS (heap, 0x20) u8[0x2800];
|
||||
mFxLineBuffer[1] = JKR_NEW_ARGS (heap, 0x20) u8[0x2800];
|
||||
mFxLineBuffer[2] = JKR_NEW_ARGS (heap, 0x20) u8[0x4B00];
|
||||
mFxLineBuffer[3] = JKR_NEW_ARGS (heap, 0x20) u8[0x4B00];
|
||||
|
||||
JUT_ASSERT(53, mFxLineBuffer[0]);
|
||||
JUT_ASSERT(54, mFxLineBuffer[1]);
|
||||
@@ -31,7 +31,7 @@ void Z2FxLineMgr::initDataArc(JKRArchive* arc, JKRHeap* heap) {
|
||||
JUT_ASSERT(56, mFxLineBuffer[3]);
|
||||
|
||||
mFxDataNum = arc->countResource();
|
||||
mConfig = new (heap, 0) Z2FxLineConfig[mFxDataNum];
|
||||
mConfig = JKR_NEW_ARGS (heap, 0) Z2FxLineConfig[mFxDataNum];
|
||||
|
||||
for (u8 i = 0; i < mFxDataNum; i++) {
|
||||
void* res = arc->getResource(i);
|
||||
|
||||
@@ -20,7 +20,7 @@ void Z2SoundHandles::deleteHandlesPool() {
|
||||
JUT_ASSERT(48, handle->getSupervisor() == this);
|
||||
|
||||
remove(handle);
|
||||
delete handle;
|
||||
JKR_DELETE(handle);
|
||||
}
|
||||
|
||||
handleNum_ = 0;
|
||||
@@ -64,7 +64,7 @@ Z2SoundHandlePool* Z2SoundHandles::getFreeHandle() {
|
||||
}
|
||||
|
||||
if (getNumHandles() < handleNum_) {
|
||||
Z2SoundHandlePool* handle = new Z2SoundHandlePool();
|
||||
Z2SoundHandlePool* handle = JKR_NEW Z2SoundHandlePool();
|
||||
if (handle != NULL) {
|
||||
append(handle);
|
||||
JUT_ASSERT(113, handle->getSupervisor() == this);
|
||||
@@ -141,7 +141,7 @@ void Z2SoundHandles::setPos(const JGeometry::TVec3<f32>& pos) {
|
||||
}
|
||||
else {
|
||||
remove(handle);
|
||||
delete handle;
|
||||
JKR_DELETE(handle);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user