mirror of https://github.com/PCSX2/pcsx2.git
* Re-enabled PCH in release builds; fixes various mysterious crashes.
* Restored Run->Execute's old behavior when the emu is in a reset condition (plain jane bootup using CDVD plugin). * Fixed some CDVD init stuff on the Linux side of things. git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1691 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
7265d33526
commit
4c39dd35a7
|
@ -118,7 +118,7 @@ static int FindDiskType(int mType)
|
|||
}
|
||||
else if (mType < 0)
|
||||
{
|
||||
static char bleh[2352];
|
||||
static u8 bleh[2352];
|
||||
cdvdTD td;
|
||||
|
||||
CDVD->getTD(0,&td);
|
||||
|
@ -126,12 +126,12 @@ static int FindDiskType(int mType)
|
|||
{
|
||||
iCDType = CDVD_TYPE_DETCTDVDS;
|
||||
}
|
||||
else if (DoCDVDreadSector((u8*)bleh,16,CDVD_MODE_2048) == 0)
|
||||
else
|
||||
{
|
||||
struct cdVolDesc* volDesc=(struct cdVolDesc *)bleh;
|
||||
if (volDesc)
|
||||
if (DoCDVDreadSector(bleh, 16, CDVD_MODE_2048) == 0)
|
||||
{
|
||||
if(volDesc->rootToc.tocSize==2048)
|
||||
const cdVolDesc& volDesc = (cdVolDesc&)bleh;
|
||||
if(volDesc.rootToc.tocSize == 2048)
|
||||
iCDType = CDVD_TYPE_DETCTCD;
|
||||
else
|
||||
iCDType = CDVD_TYPE_DETCTDVDS;
|
||||
|
|
|
@ -132,7 +132,7 @@ int main(int argc, const char *argv[])
|
|||
}
|
||||
|
||||
CDVDsys_ChangeSource( g_Startup.CdvdSource );
|
||||
DoCDVDopen( g_Startup.ImageName );
|
||||
if( !OpenCDVD( g_Startup.ImageName ) ) return -1;
|
||||
if (OpenPlugins() == -1) return -1;
|
||||
|
||||
SysPrepareExecution( (g_Startup.StartupMode == Startup_FromELF) ? g_Startup.ImageName : NULL, !g_Startup.SkipBios );
|
||||
|
@ -329,7 +329,7 @@ void OnFile_RunCD(GtkMenuItem *menuitem, gpointer user_data)
|
|||
{
|
||||
SysReset();
|
||||
CDVDsys_ChangeSource( CDVDsrc_Plugin );
|
||||
DoCDVDopen( NULL );
|
||||
if( OpenCDVD( NULL ) )
|
||||
SysPrepareExecution(NULL);
|
||||
}
|
||||
|
||||
|
@ -350,7 +350,7 @@ void OnRunIso_Ok(GtkButton* button, gpointer user_data)
|
|||
|
||||
SysReset();
|
||||
CDVDsys_ChangeSource( CDVDsrc_Iso );
|
||||
DoCDVDopen( File );
|
||||
if( OpenCDVD( File ) );
|
||||
SysPrepareExecution( NULL );
|
||||
}
|
||||
|
||||
|
@ -398,7 +398,7 @@ void OnRunElf_Ok(GtkButton* button, gpointer user_data)
|
|||
|
||||
SysReset();
|
||||
CDVDsys_ChangeSource( source );
|
||||
OpenCDVD( NULL );
|
||||
if( OpenCDVD( NULL ) )
|
||||
SysPrepareExecution(elf_name);
|
||||
}
|
||||
|
||||
|
|
|
@ -814,6 +814,7 @@ void ShutdownPlugins()
|
|||
|
||||
if (CDVDshutdown != NULL) CDVDshutdown();
|
||||
cdvd_FileNameParam.clear();
|
||||
CDVD = NULL;
|
||||
|
||||
if (DEV9shutdown != NULL) DEV9shutdown();
|
||||
if (USBshutdown != NULL) USBshutdown();
|
||||
|
|
|
@ -215,7 +215,7 @@
|
|||
PreprocessorDefinitions="NDEBUG"
|
||||
ExceptionHandling="2"
|
||||
EnableEnhancedInstructionSet="0"
|
||||
UsePrecompiledHeader="0"
|
||||
UsePrecompiledHeader="2"
|
||||
PrecompiledHeaderThrough="PrecompiledHeader.h"
|
||||
PrecompiledHeaderFile="$(IntDir)\$(TargetName).pch"
|
||||
CompileAs="2"
|
||||
|
@ -2254,7 +2254,6 @@
|
|||
RelativePath="..\..\Gif.cpp"
|
||||
>
|
||||
</File>
|
||||
|
||||
<File
|
||||
RelativePath="..\..\Gif.h"
|
||||
>
|
||||
|
|
|
@ -689,7 +689,7 @@ LRESULT WINAPI MainWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|||
{
|
||||
SysReset();
|
||||
CDVDsys_ChangeSource( CDVDsrc_Iso );
|
||||
OpenCDVD( isostr.c_str() );
|
||||
if( OpenCDVD( isostr.c_str() ) )
|
||||
SysPrepareExecution( outstr.c_str() );
|
||||
}
|
||||
}
|
||||
|
@ -702,7 +702,7 @@ LRESULT WINAPI MainWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|||
{
|
||||
SysReset();
|
||||
CDVDsys_ChangeSource( CDVDsrc_Plugin );
|
||||
OpenCDVD( NULL ); // manually open the CDVD plugin even though we don't really have to. (See RUNCD for details)
|
||||
if( OpenCDVD( NULL ) ) // manually open the CDVD plugin even though we don't really have to. (See RUNCD for details)
|
||||
SysPrepareExecution( outstr.c_str() );
|
||||
}
|
||||
}
|
||||
|
@ -715,7 +715,7 @@ LRESULT WINAPI MainWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|||
{
|
||||
SysReset();
|
||||
CDVDsys_ChangeSource( CDVDsrc_Iso );
|
||||
OpenCDVD( outstr.c_str() );
|
||||
if( OpenCDVD( outstr.c_str() ) )
|
||||
SysPrepareExecution( NULL );
|
||||
}
|
||||
}
|
||||
|
@ -729,7 +729,14 @@ LRESULT WINAPI MainWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|||
|
||||
case ID_RUN_EXECUTE:
|
||||
// Execute without reset -- resumes existing states or runs the BIOS if
|
||||
// the state is cleared/reset.
|
||||
// the state is cleared/reset. If the CDVD is NULL (system reset), then
|
||||
// assume the cdvd plugin as the source. (retains legacy behavior)
|
||||
|
||||
if( CDVD == NULL )
|
||||
{
|
||||
CDVDsys_ChangeSource( CDVDsrc_Plugin );
|
||||
if( !OpenCDVD( NULL ) ) break;
|
||||
}
|
||||
SysPrepareExecution( NULL, true );
|
||||
break;
|
||||
|
||||
|
@ -739,7 +746,7 @@ LRESULT WINAPI MainWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|||
// Note: manually open the CDVD plugin here, even though we don't really have to.
|
||||
// This ensures that the CDVD plugin's popups (like cdvdiso's browser) don't get obscured
|
||||
// by the GS window.
|
||||
OpenCDVD( NULL );
|
||||
if( OpenCDVD( NULL ) )
|
||||
SysPrepareExecution( NULL );
|
||||
break;
|
||||
|
||||
|
|
Loading…
Reference in New Issue