diff options
author | Arisotura <thetotalworm@gmail.com> | 2019-06-18 21:12:39 +0200 |
---|---|---|
committer | Arisotura <thetotalworm@gmail.com> | 2019-06-18 21:12:39 +0200 |
commit | 841122bc51156f3f1d351c47c8ac17af7a605e56 (patch) | |
tree | 7330abb33532efb1a2279a730d66efbbf6ac06a9 /src | |
parent | 7335379127f3b39298c57b1a691f1650af31d381 (diff) |
prevent old DMA from being a shitshow.
Diffstat (limited to 'src')
-rw-r--r-- | src/DMA.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/DMA.cpp b/src/DMA.cpp index 51ce825..2814264 100644 --- a/src/DMA.cpp +++ b/src/DMA.cpp @@ -18,6 +18,7 @@ #include <stdio.h> #include "NDS.h" +#include "DSi.h" #include "DMA.h" #include "NDSCart.h" #include "GPU.h" @@ -232,7 +233,8 @@ void DMA::Run9() { NDS::ARM9Timestamp += (unitcycles << NDS::ARM9ClockShift); - NDS::ARM9Write16(CurDstAddr, NDS::ARM9Read16(CurSrcAddr)); + //NDS::ARM9Write16(CurDstAddr, NDS::ARM9Read16(CurSrcAddr)); + DSi::ARM9Write16(CurDstAddr, DSi::ARM9Read16(CurSrcAddr)); CurSrcAddr += SrcAddrInc<<1; CurDstAddr += DstAddrInc<<1; @@ -268,7 +270,8 @@ void DMA::Run9() { NDS::ARM9Timestamp += (unitcycles << NDS::ARM9ClockShift); - NDS::ARM9Write32(CurDstAddr, NDS::ARM9Read32(CurSrcAddr)); + //NDS::ARM9Write32(CurDstAddr, NDS::ARM9Read32(CurSrcAddr)); + DSi::ARM9Write32(CurDstAddr, DSi::ARM9Read32(CurSrcAddr)); CurSrcAddr += SrcAddrInc<<2; CurDstAddr += DstAddrInc<<2; @@ -344,7 +347,8 @@ void DMA::Run7() { NDS::ARM7Timestamp += unitcycles; - NDS::ARM7Write16(CurDstAddr, NDS::ARM7Read16(CurSrcAddr)); + //NDS::ARM7Write16(CurDstAddr, NDS::ARM7Read16(CurSrcAddr)); + DSi::ARM7Write16(CurDstAddr, DSi::ARM7Read16(CurSrcAddr)); CurSrcAddr += SrcAddrInc<<1; CurDstAddr += DstAddrInc<<1; @@ -380,7 +384,8 @@ void DMA::Run7() { NDS::ARM7Timestamp += unitcycles; - NDS::ARM7Write32(CurDstAddr, NDS::ARM7Read32(CurSrcAddr)); + //NDS::ARM7Write32(CurDstAddr, NDS::ARM7Read32(CurSrcAddr)); + DSi::ARM7Write32(CurDstAddr, DSi::ARM7Read32(CurSrcAddr)); CurSrcAddr += SrcAddrInc<<2; CurDstAddr += DstAddrInc<<2; |