mirror of https://github.com/PCSX2/pcsx2.git
Fix bug in BIOS skip hack (which I always forget to test since I never use it personally ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2340 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
c17455c702
commit
fa95c0f191
|
@ -385,13 +385,13 @@ static void intExecute()
|
|||
try {
|
||||
while( true )
|
||||
execI();
|
||||
} catch( Exception::ForceDispatcherReg& ) { }
|
||||
} catch( Exception::ExitCpuExecute& ) { }
|
||||
}
|
||||
|
||||
static void intCheckExecutionState()
|
||||
{
|
||||
if( GetCoreThread().HasPendingStateChangeRequest() )
|
||||
throw Exception::ForceDispatcherReg();
|
||||
throw Exception::ExitCpuExecute();
|
||||
}
|
||||
|
||||
static void intStep()
|
||||
|
|
|
@ -344,7 +344,8 @@
|
|||
<Unit filename="../gui/ConsoleLogger.cpp" />
|
||||
<Unit filename="../gui/ConsoleLogger.h" />
|
||||
<Unit filename="../gui/Dialogs/AboutBoxDialog.cpp" />
|
||||
<Unit filename="../gui/Dialogs/ConfigurationDialog.cpp" />
|
||||
<Unit filename="../gui/Dialogs/AssertionDialog.cpp" />
|
||||
<Unit filename="../gui/Dialogs/ConfigurationDialog.cpp" />
|
||||
<Unit filename="../gui/Dialogs/ConfigurationDialog.h" />
|
||||
<Unit filename="../gui/Dialogs/ConfirmationDialogs.cpp" />
|
||||
<Unit filename="../gui/Dialogs/FirstTimeWizard.cpp" />
|
||||
|
|
|
@ -32,16 +32,10 @@ namespace Exception
|
|||
// Implementation Note: this exception has no meaningful type information and we don't
|
||||
// care to have it be caught by any BaseException handlers lying about, so let's not
|
||||
// derive from BaseException :D
|
||||
class ForceDispatcherReg
|
||||
class ExitCpuExecute
|
||||
{
|
||||
public:
|
||||
explicit ForceDispatcherReg() { }
|
||||
};
|
||||
|
||||
class ExitRecExecute
|
||||
{
|
||||
public:
|
||||
explicit ExitRecExecute() { }
|
||||
explicit ExitCpuExecute() { }
|
||||
};
|
||||
}
|
||||
#ifndef __LINUX__
|
||||
|
|
|
@ -264,7 +264,7 @@ u32* recGetImm64(u32 hi, u32 lo)
|
|||
if (recConstBufPtr >= recConstBuf + RECCONSTBUF_SIZE)
|
||||
{
|
||||
Console.WriteLn( "EErec const buffer filled; Resetting..." );
|
||||
throw Exception::ForceDispatcherReg();
|
||||
throw Exception::ExitCpuExecute();
|
||||
|
||||
/*for (u32 *p = recConstBuf; p < recConstBuf + RECCONSTBUF_SIZE; p += 2)
|
||||
{
|
||||
|
@ -675,7 +675,7 @@ static void recCheckExecutionState()
|
|||
if( GetCoreThread().HasPendingStateChangeRequest() )
|
||||
{
|
||||
#if PCSX2_SEH
|
||||
throw Exception::ForceDispatcherReg();
|
||||
throw Exception::ExitCpuExecute();
|
||||
#else
|
||||
// Without SEH we'll need to hop to a safehouse point outside the scope of recompiled
|
||||
// code. C++ exceptions can't cross the mighty chasm in the stackframe that the recompiler
|
||||
|
@ -699,7 +699,7 @@ static void recExecute()
|
|||
try {
|
||||
EnterRecompiledCode();
|
||||
}
|
||||
catch( Exception::ForceDispatcherReg& ) { }
|
||||
catch( Exception::ExitCpuExecute& ) { }
|
||||
|
||||
#else
|
||||
|
||||
|
@ -837,7 +837,7 @@ void recClear(u32 addr, u32 size)
|
|||
static void recExitExecution()
|
||||
{
|
||||
#if PCSX2_SEH
|
||||
throw Exception::ExitRecExecute();
|
||||
throw Exception::ExitCpuExecute();
|
||||
#else
|
||||
longjmp( m_SetJmp_StateCheck, 1 );
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue