Reorganize library code into libs/ (#3119)

* Reorganize files into libs/{dolphin,JSystem,PowerPC_EABI_Support,revolution,TRK_MINNOW_DOLPHIN}

* Update configure.py and project.py for new libs structure

* Refactor `#include <dolphin/x.h>` -> `<x.h>`

* Remove `__REVOLUTION_SDK__` forwards from dolphin

* Fix dolphin/ references in revolution

* Wrap `#include <dolphin.h>` in `!__REVOLUTION_SDK__`

* Always build TRK against dolphin headers

* Resolve revolution SDK header resolution issues
This commit is contained in:
Luke Street
2026-03-01 15:35:36 -07:00
committed by GitHub
parent c9a46bd65b
commit 4df8ccc871
1740 changed files with 583 additions and 825 deletions
@@ -0,0 +1,41 @@
#include "JSystem/JSystem.h" // IWYU pragma: keep
#include "JSystem/JUtility/JUTGraphFifo.h"
#include "JSystem/JKernel/JKRHeap.h"
#include <stdint.h>
static bool data_804514B8;
JUTGraphFifo* JUTGraphFifo::sCurrentFifo;
JUTGraphFifo::JUTGraphFifo(u32 size) {
mSize = ROUND(size, 0x20);
if (data_804514B8) {
u32 fifoSize = sizeof(GXFifoObj);
mFifo = (GXFifoObj*)JKRAllocFromSysHeap(fifoSize + mSize, 32);
mBase = (u8*)mFifo + fifoSize;
GXInitFifoBase(mFifo, mBase, mSize);
GXInitFifoPtrs(mFifo, mBase, mBase);
} else {
mBase = JKRAllocFromSysHeap(mSize + 0xA0, 32);
mBase = (void*)ALIGN_NEXT((uintptr_t)mBase, 0x20);
mFifo = GXInit(mBase, mSize);
data_804514B8 = true;
sCurrentFifo = this;
}
}
bool JUTGraphFifo::mGpStatus[5];
JUTGraphFifo::~JUTGraphFifo() {
sCurrentFifo->save();
while (isGPActive()) {
// nop
}
if (sCurrentFifo == this) {
sCurrentFifo = NULL;
}
JKRFreeToSysHeap(mBase);
}