From 13e71c413a3fce445e2b64e178a172458d742f64 Mon Sep 17 00:00:00 2001 From: arcum42 Date: Mon, 23 Nov 2009 13:15:48 +0000 Subject: [PATCH] Remove wxHelpers.h from the codeblocks project. Add a define determining if pcsx2 tries to load PS1 games or not. git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2239 96395faa-99c1-11dd-bbfe-3dabce05a288 --- pcsx2/Config.h | 5 +++++ pcsx2/Elfheader.cpp | 11 ++++++++--- pcsx2/Linux/pcsx2.cbp | 1 - 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/pcsx2/Config.h b/pcsx2/Config.h index eb6f36c1ad..cfb8e37dad 100644 --- a/pcsx2/Config.h +++ b/pcsx2/Config.h @@ -615,3 +615,8 @@ extern SessionOverrideFlags g_Session; #define EE_CONST_PROP // rec2 - enables constant propagation (faster) //#define NON_SSE_UNPACKS // Turns off SSE Unpacks (slower) +// Uncomment this if working on getting PS1 emulation working. +// This disables the exception normally caused by trying to load PS1 +// games. Note: currently PS1 games will error out even without this +// commented, so this is for development purposes only. +//#define ENABLE_LOADING_PS1_GAMES diff --git a/pcsx2/Elfheader.cpp b/pcsx2/Elfheader.cpp index 546ea5d4ac..4e6502a768 100644 --- a/pcsx2/Elfheader.cpp +++ b/pcsx2/Elfheader.cpp @@ -322,7 +322,8 @@ struct ElfObject { int rsize = 0; const wxCharBuffer work( filename.ToUTF8() ); - if ((strnicmp( work, "cdrom0:", strlen("cdromN:")) == 0) || + if ((strnicmp( work, "cdrom:", strlen("cdrom:" )) == 0) || + (strnicmp( work, "cdrom0:", strlen("cdromN:")) == 0) || (strnicmp( work, "cdrom1:", strlen("cdromN:")) == 0)) { IsoFSCDVD isofs; @@ -519,8 +520,10 @@ u32 loadElfCRC( const char* filename ) // of "cdrom0:" or "cdrom1:" then the CDVD is used as the source; otherwise the ELF is loaded // from the host filesystem. // +// If it starts with "cdrom:", an exception is thrown, unless PS1 emulation is being attempted. +// // If the specified filename is empty then no action is taken (PS2 will continue booting -// normally as if it has no CD +// normally as if it has no CD. // // Throws exception on error: // @@ -534,10 +537,12 @@ void loadElfFile(const wxString& filename) const wxCharBuffer fnptr( filename.ToUTF8() ); bool useCdvdSource = false; +#ifndef ENABLE_LOADING_PS1_GAMES if( filename.StartsWith( L"cdrom:" ) ) throw Exception::RuntimeError( wxLt("This is not a Ps2 disc. (And we don't currently emulate PS1 games)") ); +#endif - if( !filename.StartsWith( L"cdrom0:" ) && !filename.StartsWith( L"cdrom1:" ) ) + if( !filename.StartsWith( L"cdrom:" ) && !filename.StartsWith( L"cdrom0:" ) && !filename.StartsWith( L"cdrom1:" ) ) { DevCon.WriteLn("Loading from a file (or non-cd image)"); elfsize = Path::GetFileSize( filename ); diff --git a/pcsx2/Linux/pcsx2.cbp b/pcsx2/Linux/pcsx2.cbp index ce6a6d499f..43dbc4497f 100644 --- a/pcsx2/Linux/pcsx2.cbp +++ b/pcsx2/Linux/pcsx2.cbp @@ -451,7 +451,6 @@ -