diff --git a/pcsx2/Linux/LnxMain.cpp b/pcsx2/Linux/LnxMain.cpp index 219864c43f..d61d69676a 100644 --- a/pcsx2/Linux/LnxMain.cpp +++ b/pcsx2/Linux/LnxMain.cpp @@ -17,7 +17,6 @@ */ #include "LnxMain.h" -#include "CDVD/CDVDisoReader.h" using namespace R5900; diff --git a/pcsx2/Linux/LnxMain.h b/pcsx2/Linux/LnxMain.h index 86b74cebd0..7639f9f7b6 100644 --- a/pcsx2/Linux/LnxMain.h +++ b/pcsx2/Linux/LnxMain.h @@ -23,6 +23,9 @@ #include "LnxMain.h" #include "HostGui.h" +// For Linux ISO loading +#include "CDVD/CDVDisoReader.h" + extern bool applychanges; extern bool Slots[5]; diff --git a/pcsx2/Linux/LnxSysExec.cpp b/pcsx2/Linux/LnxSysExec.cpp index e5da6434f0..2bd55604c5 100644 --- a/pcsx2/Linux/LnxSysExec.cpp +++ b/pcsx2/Linux/LnxSysExec.cpp @@ -183,16 +183,26 @@ void RunGui() { // Initially bypass GUI and start PCSX2 directly. // Manually load plugins using the user's configured image (if non-elf). + + int mode = g_Startup.BootMode & BootMode_ModeMask; - if( g_Startup.Enabled && (g_Startup.BootMode != BootMode_Elf) ) + if( g_Startup.Enabled && (mode != BootMode_Elf) ) { + + if(mode == BootMode_Iso) + CDVD = ISO; + else if(mode == BootMode_NoDisc) + CDVD = NODISC; + else + CDVD = CDVD_plugin; + if (OpenPlugins(g_Startup.ImageName) == -1) return; } SysPrepareExecution( (g_Startup.BootMode == BootMode_Elf) ? g_Startup.ImageName : NULL, - (g_Startup.BootMode == BootMode_Bios) + ((g_Startup.BootMode & BootMode_Bios) != 0) ); } diff --git a/pcsx2/Linux/LnxSysExec.h b/pcsx2/Linux/LnxSysExec.h index 639a7e7671..b429712848 100644 --- a/pcsx2/Linux/LnxSysExec.h +++ b/pcsx2/Linux/LnxSysExec.h @@ -24,6 +24,9 @@ #include #include "x86/iR5900.h" +// For Linux ISO loading +#include "CDVD/CDVDisoReader.h" + void SysPageFaultExceptionFilter( int signal, siginfo_t *info, void * ); void __fastcall InstallLinuxExceptionHandler(); void __fastcall ReleaseLinuxExceptionHandler();