mirror of https://github.com/PCSX2/pcsx2.git
* Added the missing cd image types to the iso browser (img, bin, nrg, etc)
* Minor fix when using cdvdiso in browser mode (keeps the browser from being obscured by the GS window). git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1685 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
d77ac4786d
commit
62591d04d8
|
@ -769,6 +769,10 @@ bool ReportError2(int err, const char *str)
|
|||
return false;
|
||||
}
|
||||
|
||||
// used to store non-null filename parameters passed to CDVD plugins, so that the
|
||||
// value can be retrieved when loading savestates and such.
|
||||
static string cdvd_FileNameParam;
|
||||
|
||||
int InitPlugins()
|
||||
{
|
||||
if (plugins_initialized) return 0;
|
||||
|
@ -796,6 +800,7 @@ int InitPlugins()
|
|||
void ShutdownPlugins()
|
||||
{
|
||||
if (!plugins_initialized) return;
|
||||
plugins_initialized = false;
|
||||
|
||||
mtgsWaitGS();
|
||||
ClosePlugins( true );
|
||||
|
@ -808,12 +813,11 @@ void ShutdownPlugins()
|
|||
if (SPU2shutdown != NULL) SPU2shutdown();
|
||||
|
||||
if (CDVDshutdown != NULL) CDVDshutdown();
|
||||
cdvd_FileNameParam.clear();
|
||||
|
||||
if (DEV9shutdown != NULL) DEV9shutdown();
|
||||
if (USBshutdown != NULL) USBshutdown();
|
||||
if (FWshutdown != NULL) FWshutdown();
|
||||
|
||||
plugins_initialized = false;
|
||||
}
|
||||
|
||||
uptr pDsp;
|
||||
|
@ -845,7 +849,7 @@ bool OpenGS()
|
|||
return true;
|
||||
}
|
||||
|
||||
bool OpenCDVD(const char* pTitleFilename)
|
||||
bool OpenCDVD( const char* pTitleFilename )
|
||||
{
|
||||
// if this assertion fails it means you didn't call CDVDsys_ChangeSource. You should.
|
||||
// You really should. Really.
|
||||
|
@ -856,12 +860,19 @@ bool OpenCDVD(const char* pTitleFilename)
|
|||
{
|
||||
CDVD->newDiskCB( cdvdNewDiskCB );
|
||||
|
||||
if (DoCDVDopen(pTitleFilename) != 0)
|
||||
if( (pTitleFilename == NULL) && !cdvd_FileNameParam.empty() )
|
||||
pTitleFilename = cdvd_FileNameParam.c_str();
|
||||
|
||||
if (DoCDVDopen(pTitleFilename) != 0)
|
||||
{
|
||||
Msgbox::Alert("Error Opening CDVD Plugin");
|
||||
ClosePlugins(true);
|
||||
ClosePlugins(true);
|
||||
return false;
|
||||
}
|
||||
|
||||
if( cdvd_FileNameParam.empty() && (pTitleFilename != NULL) )
|
||||
cdvd_FileNameParam = pTitleFilename;
|
||||
|
||||
OpenStatus.CDVD = true;
|
||||
}
|
||||
return true;
|
||||
|
|
|
@ -421,7 +421,7 @@ BOOL Open_File_Proc( std::string& outstr )
|
|||
OPENFILENAME ofn;
|
||||
char szFileName[ g_MaxPath ];
|
||||
char szFileTitle[ g_MaxPath ];
|
||||
char * filter = "ELF Files (*.ELF)\0*.ELF\0ALL Files (*.*)\0*.*\0";
|
||||
char * filter = "ELF Files (*.elf)\0*.elf\0All Files (*.*)\0*.*\0";
|
||||
|
||||
memzero_obj( szFileName );
|
||||
memzero_obj( szFileTitle );
|
||||
|
@ -460,7 +460,11 @@ BOOL Open_Iso_File_Proc( std::string& outstr )
|
|||
OPENFILENAME ofn;
|
||||
char szFileName[ g_MaxPath ];
|
||||
char szFileTitle[ g_MaxPath ];
|
||||
char * filter = "Compatible Disc Image Files (*.ISO, *.MDF)\0*.ISO;*.MDF\0Blockdump Files (*.dump)\0*.dump\0ALL Files (*.*)\0*.*\0";
|
||||
char * filter =
|
||||
"All Supported (.iso .mdf .nrg .bin .img .dump)\0*.iso;*.mdf;*.nrg;*.bin;*.img,*.dump\0"
|
||||
"Disc Images (.iso .mdf .nrg .bin .img)\0*.iso;*.mdf;*.nrg;*.bin;*.img\0"
|
||||
"Blockdumps (.dump)\0*.dump\0"
|
||||
"All Files (*.*)\0*.*\0";
|
||||
|
||||
memzero_obj( szFileName );
|
||||
memzero_obj( szFileTitle );
|
||||
|
@ -698,6 +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)
|
||||
SysPrepareExecution( outstr.c_str() );
|
||||
}
|
||||
}
|
||||
|
@ -731,6 +736,10 @@ LRESULT WINAPI MainWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|||
case ID_FILE_RUNCD:
|
||||
SysReset();
|
||||
CDVDsys_ChangeSource( CDVDsrc_Plugin );
|
||||
// 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 );
|
||||
SysPrepareExecution( NULL );
|
||||
break;
|
||||
|
||||
|
|
Loading…
Reference in New Issue