aboutsummaryrefslogtreecommitdiff
path: root/src/DMA.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/DMA.cpp')
-rw-r--r--src/DMA.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/DMA.cpp b/src/DMA.cpp
index 335ad2c..edd6f8b 100644
--- a/src/DMA.cpp
+++ b/src/DMA.cpp
@@ -200,6 +200,8 @@ void DMA::Start()
return;
}
+ IsGXFIFODMA = (CPU == 0 && (CurSrcAddr>>24) == 0x02 && CurDstAddr == 0x04000400 && DstAddrInc == 0);
+
// TODO eventually: not stop if we're running code in ITCM
Running = true;
@@ -234,7 +236,7 @@ s32 DMA::Run(s32 cycles)
else
{
// optimized path for typical GXFIFO DMA
- if (CPU == 0 && (CurSrcAddr>>24) == 0x02 && CurDstAddr == 0x04000400 && DstAddrInc == 0)
+ if (IsGXFIFODMA)
{
while (IterCount > 0 && cycles > 0)
{