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 {
|
try {
|
||||||
while( true )
|
while( true )
|
||||||
execI();
|
execI();
|
||||||
} catch( Exception::ForceDispatcherReg& ) { }
|
} catch( Exception::ExitCpuExecute& ) { }
|
||||||
}
|
}
|
||||||
|
|
||||||
static void intCheckExecutionState()
|
static void intCheckExecutionState()
|
||||||
{
|
{
|
||||||
if( GetCoreThread().HasPendingStateChangeRequest() )
|
if( GetCoreThread().HasPendingStateChangeRequest() )
|
||||||
throw Exception::ForceDispatcherReg();
|
throw Exception::ExitCpuExecute();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void intStep()
|
static void intStep()
|
||||||
|
|
|
@ -344,7 +344,8 @@
|
||||||
<Unit filename="../gui/ConsoleLogger.cpp" />
|
<Unit filename="../gui/ConsoleLogger.cpp" />
|
||||||
<Unit filename="../gui/ConsoleLogger.h" />
|
<Unit filename="../gui/ConsoleLogger.h" />
|
||||||
<Unit filename="../gui/Dialogs/AboutBoxDialog.cpp" />
|
<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/ConfigurationDialog.h" />
|
||||||
<Unit filename="../gui/Dialogs/ConfirmationDialogs.cpp" />
|
<Unit filename="../gui/Dialogs/ConfirmationDialogs.cpp" />
|
||||||
<Unit filename="../gui/Dialogs/FirstTimeWizard.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
|
// 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
|
// care to have it be caught by any BaseException handlers lying about, so let's not
|
||||||
// derive from BaseException :D
|
// derive from BaseException :D
|
||||||
class ForceDispatcherReg
|
class ExitCpuExecute
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
explicit ForceDispatcherReg() { }
|
explicit ExitCpuExecute() { }
|
||||||
};
|
|
||||||
|
|
||||||
class ExitRecExecute
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
explicit ExitRecExecute() { }
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
#ifndef __LINUX__
|
#ifndef __LINUX__
|
||||||
|
|
|
@ -264,7 +264,7 @@ u32* recGetImm64(u32 hi, u32 lo)
|
||||||
if (recConstBufPtr >= recConstBuf + RECCONSTBUF_SIZE)
|
if (recConstBufPtr >= recConstBuf + RECCONSTBUF_SIZE)
|
||||||
{
|
{
|
||||||
Console.WriteLn( "EErec const buffer filled; Resetting..." );
|
Console.WriteLn( "EErec const buffer filled; Resetting..." );
|
||||||
throw Exception::ForceDispatcherReg();
|
throw Exception::ExitCpuExecute();
|
||||||
|
|
||||||
/*for (u32 *p = recConstBuf; p < recConstBuf + RECCONSTBUF_SIZE; p += 2)
|
/*for (u32 *p = recConstBuf; p < recConstBuf + RECCONSTBUF_SIZE; p += 2)
|
||||||
{
|
{
|
||||||
|
@ -675,7 +675,7 @@ static void recCheckExecutionState()
|
||||||
if( GetCoreThread().HasPendingStateChangeRequest() )
|
if( GetCoreThread().HasPendingStateChangeRequest() )
|
||||||
{
|
{
|
||||||
#if PCSX2_SEH
|
#if PCSX2_SEH
|
||||||
throw Exception::ForceDispatcherReg();
|
throw Exception::ExitCpuExecute();
|
||||||
#else
|
#else
|
||||||
// Without SEH we'll need to hop to a safehouse point outside the scope of recompiled
|
// 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
|
// code. C++ exceptions can't cross the mighty chasm in the stackframe that the recompiler
|
||||||
|
@ -699,7 +699,7 @@ static void recExecute()
|
||||||
try {
|
try {
|
||||||
EnterRecompiledCode();
|
EnterRecompiledCode();
|
||||||
}
|
}
|
||||||
catch( Exception::ForceDispatcherReg& ) { }
|
catch( Exception::ExitCpuExecute& ) { }
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
|
@ -837,7 +837,7 @@ void recClear(u32 addr, u32 size)
|
||||||
static void recExitExecution()
|
static void recExitExecution()
|
||||||
{
|
{
|
||||||
#if PCSX2_SEH
|
#if PCSX2_SEH
|
||||||
throw Exception::ExitRecExecute();
|
throw Exception::ExitCpuExecute();
|
||||||
#else
|
#else
|
||||||
longjmp( m_SetJmp_StateCheck, 1 );
|
longjmp( m_SetJmp_StateCheck, 1 );
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue