mirror of
https://github.com/zeldaret/mm.git
synced 2026-06-01 17:57:18 -04:00
Audio_Load OK and Documented (#620)
* Copy audio_load progress from main branch * Fix warning * fix UB * cleanup WIP * Add docs, bss still broken * bss fix * bytesRemaining with size_t * PR Suggestions * PR Suggestions * Fix bss * Fix bss * PR Suggestions
This commit is contained in:
@@ -18,7 +18,7 @@ void* Yaz0_FirstDMA() {
|
||||
curSize = (u32)sYaz0CurDataEnd - (u32)sYaz0DataBuffer;
|
||||
dmaSize = (curSize > sYaz0CurSize) ? sYaz0CurSize : curSize;
|
||||
|
||||
DmaMgr_DMARomToRam(sYaz0CurRomStart, sYaz0DataBuffer, dmaSize);
|
||||
DmaMgr_DmaRomToRam(sYaz0CurRomStart, sYaz0DataBuffer, dmaSize);
|
||||
sYaz0CurRomStart += dmaSize;
|
||||
sYaz0CurSize -= dmaSize;
|
||||
return sYaz0DataBuffer;
|
||||
@@ -41,7 +41,7 @@ void* Yaz0_NextDMA(void* curSrcPos) {
|
||||
}
|
||||
|
||||
if (dmaSize != 0) {
|
||||
DmaMgr_DMARomToRam(sYaz0CurRomStart, dst + restSize, dmaSize);
|
||||
DmaMgr_DmaRomToRam(sYaz0CurRomStart, dst + restSize, dmaSize);
|
||||
sYaz0CurRomStart += dmaSize;
|
||||
sYaz0CurSize -= dmaSize;
|
||||
if (!sYaz0CurSize) {
|
||||
|
||||
@@ -10,7 +10,7 @@ OSMesg sDmaMgrMsgs[32];
|
||||
OSThread sDmaMgrThread;
|
||||
u8 sDmaMgrStack[0x500];
|
||||
|
||||
s32 DmaMgr_DMARomToRam(uintptr_t rom, void* ram, size_t size) {
|
||||
s32 DmaMgr_DmaRomToRam(uintptr_t rom, void* ram, size_t size) {
|
||||
OSIoMesg ioMsg;
|
||||
OSMesgQueue queue;
|
||||
OSMesg msg[1];
|
||||
@@ -56,8 +56,8 @@ END:
|
||||
return ret;
|
||||
}
|
||||
|
||||
void DmaMgr_DmaCallback0(OSPiHandle* pihandle, OSIoMesg* mb, s32 direction) {
|
||||
osEPiStartDma(pihandle, mb, direction);
|
||||
s32 DmaMgr_DmaHandler(OSPiHandle* pihandle, OSIoMesg* mb, s32 direction) {
|
||||
return osEPiStartDma(pihandle, mb, direction);
|
||||
}
|
||||
|
||||
DmaEntry* DmaMgr_FindDmaEntry(u32 vrom) {
|
||||
@@ -130,7 +130,7 @@ void DmaMgr_ProcessMsg(DmaRequest* req) {
|
||||
if (dmaEntry->vromEnd < (vrom + size)) {
|
||||
Fault_AddHungupAndCrash("../z_std_dma.c", 499);
|
||||
}
|
||||
DmaMgr_DMARomToRam((dmaEntry->romStart + vrom) - dmaEntry->vromStart, (u8*)ram, size);
|
||||
DmaMgr_DmaRomToRam((dmaEntry->romStart + vrom) - dmaEntry->vromStart, (u8*)ram, size);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -211,7 +211,7 @@ s32 DmaMgr_SendRequest0(void* vramStart, uintptr_t vromStart, size_t size) {
|
||||
}
|
||||
|
||||
void DmaMgr_Start(void) {
|
||||
DmaMgr_DMARomToRam(SEGMENT_ROM_START(dmadata), dmadata, SEGMENT_ROM_SIZE(dmadata));
|
||||
DmaMgr_DmaRomToRam(SEGMENT_ROM_START(dmadata), dmadata, SEGMENT_ROM_SIZE(dmadata));
|
||||
|
||||
{
|
||||
DmaEntry* iter = dmadata;
|
||||
|
||||
Reference in New Issue
Block a user