From aba4610d45c67c552077e40da5a3d6039e559919 Mon Sep 17 00:00:00 2001 From: StapleButter Date: Sun, 9 Dec 2018 01:46:10 +0100 Subject: [PATCH] fix bugs still kinda shitty tho. like, we lost enough timer accuracy to have visible effects (aging cart tests that fail, FMVs that play too slow, etc) --- src/ARM.cpp | 2 +- src/NDS.cpp | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/ARM.cpp b/src/ARM.cpp index 09ee17db..24858c28 100644 --- a/src/ARM.cpp +++ b/src/ARM.cpp @@ -461,7 +461,7 @@ s32 ARMv5::Execute() else { Cycles = CyclesToRun; - NDS::RunTimingCriticalDevices(0, CyclesToRun >> ClockShift); + //NDS::RunTimingCriticalDevices(0, CyclesToRun >> ClockShift); return Cycles; } } diff --git a/src/NDS.cpp b/src/NDS.cpp index 28d459da..d3557d29 100644 --- a/src/NDS.cpp +++ b/src/NDS.cpp @@ -764,11 +764,13 @@ u32 RunFrame() if (CPUStop & 0x0FFF0000) { s32 cycles = ndscyclestorun - ARM7Offset; + s32 critcycles = cycles; cycles = DMAs[4]->Run(cycles); if (cycles > 0) cycles = DMAs[5]->Run(cycles); if (cycles > 0) cycles = DMAs[6]->Run(cycles); if (cycles > 0) cycles = DMAs[7]->Run(cycles); ARM7Offset = -cycles; + RunTimingCriticalDevices(1, critcycles); } else {