diff options
Diffstat (limited to 'src/DMA.cpp')
-rw-r--r-- | src/DMA.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/DMA.cpp b/src/DMA.cpp index b779d26..91f2345 100644 --- a/src/DMA.cpp +++ b/src/DMA.cpp @@ -47,9 +47,10 @@ using Platform::LogLevel; // TODO: timings are nonseq when address is fixed/decrementing -DMA::DMA(u32 cpu, u32 num) : +DMA::DMA(u32 cpu, u32 num, Melon::GPU& gpu) : CPU(cpu), - Num(num) + Num(num), + GPU(gpu) { if (cpu == 0) CountMask = 0x001FFFFF; @@ -142,7 +143,7 @@ void DMA::WriteCnt(u32 val) if ((StartMode & 0x7) == 0) Start(); else if (StartMode == 0x07) - GPU3D::CheckFIFODMA(); + GPU.GPU3D.CheckFIFODMA(); if (StartMode==0x06 || StartMode==0x13) Log(LogLevel::Warn, "UNIMPLEMENTED ARM%d DMA%d START MODE %02X, %08X->%08X\n", CPU?7:9, Num, StartMode, SrcAddr, DstAddr); @@ -609,7 +610,7 @@ void DMA::Run9() NDS::ResumeCPU(0, 1<<Num); if (StartMode == 0x07) - GPU3D::CheckFIFODMA(); + GPU.GPU3D.CheckFIFODMA(); } return; |