diff --git a/ares/gba/cpu/bus.cpp b/ares/gba/cpu/bus.cpp index 474928ce11..8b293b6933 100644 --- a/ares/gba/cpu/bus.cpp +++ b/ares/gba/cpu/bus.cpp @@ -12,6 +12,7 @@ auto CPU::get(u32 mode, n32 address) -> n32 { } else if(address & 0x0800'0000) { if(mode & Prefetch && wait.prefetch) { prefetchSync(address); + prefetchStep(1); word = prefetchRead(); if(mode & Word) word |= prefetchRead() << 16; } else { diff --git a/ares/gba/cpu/prefetch.cpp b/ares/gba/cpu/prefetch.cpp index 7ccd57c9ba..856484819f 100644 --- a/ares/gba/cpu/prefetch.cpp +++ b/ares/gba/cpu/prefetch.cpp @@ -25,7 +25,6 @@ auto CPU::prefetchReset() -> void { auto CPU::prefetchRead() -> n16 { if(prefetch.empty()) prefetchStep(prefetch.wait); - else prefetchStep(1); if(prefetch.full()) prefetch.wait = _wait(Half | Sequential, prefetch.load);