From 0ccaaee38c0d21212668ed9e7741feb84c91c365 Mon Sep 17 00:00:00 2001 From: skidau Date: Tue, 26 Mar 2013 08:23:20 +1100 Subject: Forced the exception check only for ARAM DMA transfers. Removed the Eternal Darkness boot hack and replaced it with an exception check. --- Source/Core/VideoCommon/Src/CommandProcessor.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'Source/Core/VideoCommon/Src/CommandProcessor.cpp') diff --git a/Source/Core/VideoCommon/Src/CommandProcessor.cpp b/Source/Core/VideoCommon/Src/CommandProcessor.cpp index 71b4591bf7..dacec67823 100644 --- a/Source/Core/VideoCommon/Src/CommandProcessor.cpp +++ b/Source/Core/VideoCommon/Src/CommandProcessor.cpp @@ -642,14 +642,11 @@ void SetCpStatusRegister() void SetCpControlRegister() { - // If the new fifo is being attached We make sure there wont be SetFinish event pending. - // This protection fix eternal darkness booting, because the second SetFinish event when it is booting - // seems invalid or has a bug and hang the game. - + // If the new fifo is being attached, force an exception check + // This fixes the hang while booting Eternal Darkness if (!fifo.bFF_GPReadEnable && m_CPCtrlReg.GPReadEnable && !m_CPCtrlReg.BPEnable) { - ProcessFifoEvents(); - PixelEngine::ResetSetFinish(); + CoreTiming::ForceExceptionCheck(0); } fifo.bFF_BPInt = m_CPCtrlReg.BPInt; -- cgit v1.2.3