mirror of https://github.com/PCSX2/pcsx2.git
wxgui:
* Added /gui/AppRes.cpp : contains resource management code that used to be in /gui/App.cpp. * Redid disk/linux console logging to be both thread safe and crash-safe. * Cleaned up plugin init/open exception handlers * Was forced to implement a manual version of wxEventLoop because of a critical design flaw in wxWidgets' message loop exception handler. git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1727 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
600f7b2207
commit
f7a44a7af2
|
@ -263,8 +263,7 @@ static void DetectDiskType()
|
|||
//
|
||||
void CDVDsys_ChangeSource( CDVD_SourceType type )
|
||||
{
|
||||
if( g_plugins != NULL )
|
||||
g_plugins->Close( PluginId_CDVD );
|
||||
GetPluginManager().Close( PluginId_CDVD );
|
||||
|
||||
switch( type )
|
||||
{
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
#pragma once
|
||||
|
||||
extern FILE *emuLog;
|
||||
extern wxString emuLogName;
|
||||
|
||||
extern char* disVU0MicroUF(u32 code, u32 pc);
|
||||
extern char* disVU0MicroLF(u32 code, u32 pc);
|
||||
|
|
|
@ -1,411 +1,412 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<CodeBlocks_project_file>
|
||||
<FileVersion major="1" minor="6" />
|
||||
<Project>
|
||||
<Option title="pcsx2" />
|
||||
<Option platforms="Windows;Unix;" />
|
||||
<Option pch_mode="2" />
|
||||
<Option compiler="gcc" />
|
||||
<Build>
|
||||
<Target title="Debug">
|
||||
<Option platforms="Windows;Unix;" />
|
||||
<Option output="$(SvnRootDir)/bin/pcsx2-dbg" prefix_auto="1" extension_auto="1" />
|
||||
<Option working_dir="$(SvnRootDir)/bin/" />
|
||||
<Option object_output="./.objs/debug" />
|
||||
<Option type="0" />
|
||||
<Option compiler="gcc" />
|
||||
<Compiler>
|
||||
<Add option="-g" />
|
||||
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=yes --cflags`" />
|
||||
<Add option="-DPCSX2_DEVBUILD" />
|
||||
<Add option="-DPCSX2_DEBUG" />
|
||||
</Compiler>
|
||||
<ResourceCompiler>
|
||||
<Add directory="$(ProjectRootDir)/gui" />
|
||||
</ResourceCompiler>
|
||||
<Linker>
|
||||
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=yes --libs`" />
|
||||
<Add library="$(SvnRootDir)/deps/debug/zlib.a" />
|
||||
<Add library="$(SvnRootDir)/deps/debug/libx86emitter.a" />
|
||||
<Add library="$(SvnRootDir)/deps/debug/libUtilities.a" />
|
||||
</Linker>
|
||||
</Target>
|
||||
<Target title="Devel">
|
||||
<Option platforms="Windows;Unix;" />
|
||||
<Option output="$(SvnRootDir)/bin/pcsx2-dev" prefix_auto="1" extension_auto="1" />
|
||||
<Option working_dir="$(SvnRootDir)/bin/" />
|
||||
<Option object_output="./.objs/devel" />
|
||||
<Option type="0" />
|
||||
<Option compiler="gcc" />
|
||||
<Compiler>
|
||||
<Add option="-O2" />
|
||||
<Add option="-W" />
|
||||
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=yes --cflags`" />
|
||||
<Add option="-DNDEBUG" />
|
||||
<Add option="-DPCSX2_DEVBUILD" />
|
||||
</Compiler>
|
||||
<ResourceCompiler>
|
||||
<Add directory="$(ProjectRootDir)/gui" />
|
||||
</ResourceCompiler>
|
||||
<Linker>
|
||||
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=yes --libs`" />
|
||||
<Add library="$(SvnRootDir)/deps/devel/zlib.a" />
|
||||
<Add library="$(SvnRootDir)/deps/devel/libx86emitter.a" />
|
||||
<Add library="$(SvnRootDir)/deps/devel/libUtilities.a" />
|
||||
</Linker>
|
||||
</Target>
|
||||
<Target title="Release">
|
||||
<Option platforms="Windows;Unix;" />
|
||||
<Option output="$(SvnRootDir)/bin/pcsx2" prefix_auto="1" extension_auto="1" />
|
||||
<Option working_dir="$(SvnRootDir)/bin/" />
|
||||
<Option object_output="./.objs/release" />
|
||||
<Option type="0" />
|
||||
<Option compiler="gcc" />
|
||||
<Compiler>
|
||||
<Add option="-O2" />
|
||||
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=no --cflags`" />
|
||||
<Add option="-DNDEBUG" />
|
||||
</Compiler>
|
||||
<ResourceCompiler>
|
||||
<Add directory="$(ProjectRootDir)/gui" />
|
||||
</ResourceCompiler>
|
||||
<Linker>
|
||||
<Add option="-s" />
|
||||
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=no --libs`" />
|
||||
<Add library="$(SvnRootDir)/deps/release/zlib.a" />
|
||||
<Add library="$(SvnRootDir)/deps/release/libx86emitter.a" />
|
||||
<Add library="$(SvnRootDir)/deps/release/libUtilities.a" />
|
||||
</Linker>
|
||||
</Target>
|
||||
<Environment>
|
||||
<Variable name="SvnRootDir" value="../../" />
|
||||
<Variable name="ProjectRootDir" value='"$(SvnRootDir)/pcsx2/"' />
|
||||
<Variable name="CommonDir" value='"$(SvnRootDir)/common/"' />
|
||||
</Environment>
|
||||
</Build>
|
||||
<Compiler>
|
||||
<Add option="-march=athlon" />
|
||||
<Add option="-march=pentium4" />
|
||||
<Add option="-march=i686" />
|
||||
<Add option="-march=i586" />
|
||||
<Add option="-Wno-format" />
|
||||
<Add option="-Wno-unused-parameter" />
|
||||
<Add option="-Wno-unused-value" />
|
||||
<Add option="-Wunused-variable" />
|
||||
<Add option="-fno-guess-branch-probability" />
|
||||
<Add option="-fno-dse" />
|
||||
<Add option="-fno-tree-dse" />
|
||||
<Add option="-pipe -msse -msse2" />
|
||||
<Add option="-DWX_PRECOMP" />
|
||||
<Add directory="$(SvnRootDir)/common/include/" />
|
||||
<Add directory="$(SvnRootDir)/3rdparty/" />
|
||||
<Add directory="$(ProjectRootDir)" />
|
||||
<Add directory="$(ProjectRootDir)/gui" />
|
||||
<Add directory="$(ProjectRootDir)/x86" />
|
||||
</Compiler>
|
||||
<Linker>
|
||||
<Add option="-Xlinker -zmuldefs" />
|
||||
</Linker>
|
||||
<Unit filename="../../common/include/Pcsx2Config.h" />
|
||||
<Unit filename="../../common/include/Pcsx2Defs.h" />
|
||||
<Unit filename="../../common/include/Pcsx2Types.h" />
|
||||
<Unit filename="../../common/include/wx/folderdesc.txt" />
|
||||
<Unit filename="../../common/include/wx/scopedarray.h" />
|
||||
<Unit filename="../../common/include/wx/scopedptr.h" />
|
||||
<Unit filename="../CDVD/CDVD.cpp" />
|
||||
<Unit filename="../CDVD/CDVD.h" />
|
||||
<Unit filename="../CDVD/CDVD_internal.h" />
|
||||
<Unit filename="../CDVD/CDVDaccess.cpp" />
|
||||
<Unit filename="../CDVD/CDVDaccess.h" />
|
||||
<Unit filename="../CDVD/CDVDisoReader.cpp" />
|
||||
<Unit filename="../CDVD/CDVDisoReader.h" />
|
||||
<Unit filename="../CDVD/CdRom.cpp" />
|
||||
<Unit filename="../CDVD/CdRom.h" />
|
||||
<Unit filename="../CDVD/IsoFScdvd.h" />
|
||||
<Unit filename="../CDVD/IsoFSdrv.cpp" />
|
||||
<Unit filename="../CDVD/IsoFSdrv.h" />
|
||||
<Unit filename="../CDVD/IsoFStools.cpp" />
|
||||
<Unit filename="../CDVD/IsoFStools.h" />
|
||||
<Unit filename="../CDVD/IsoFileFormats.cpp" />
|
||||
<Unit filename="../CDVD/IsoFileFormats.h" />
|
||||
<Unit filename="../CDVD/IsoFileTools.cpp" />
|
||||
<Unit filename="../CDVD/IsoFileTools.h" />
|
||||
<Unit filename="../CDVD/IsoFileTools.h.save" />
|
||||
<Unit filename="../CDVD/Makefile.am" />
|
||||
<Unit filename="../COP0.cpp" />
|
||||
<Unit filename="../COP2.cpp" />
|
||||
<Unit filename="../Cache.cpp" />
|
||||
<Unit filename="../Cache.h" />
|
||||
<Unit filename="../Common.h" />
|
||||
<Unit filename="../Config.h" />
|
||||
<Unit filename="../Counters.cpp" />
|
||||
<Unit filename="../Counters.h" />
|
||||
<Unit filename="../DebugTools/Debug.h" />
|
||||
<Unit filename="../DebugTools/DisASM.h" />
|
||||
<Unit filename="../DebugTools/DisR3000A.cpp" />
|
||||
<Unit filename="../DebugTools/DisR5900.cpp" />
|
||||
<Unit filename="../DebugTools/DisR5900asm.cpp" />
|
||||
<Unit filename="../DebugTools/DisVU0Micro.cpp" />
|
||||
<Unit filename="../DebugTools/DisVU1Micro.cpp" />
|
||||
<Unit filename="../DebugTools/DisVUmicro.h" />
|
||||
<Unit filename="../DebugTools/DisVUops.h" />
|
||||
<Unit filename="../Docs/ChangeLog.txt" />
|
||||
<Unit filename="../Docs/License.txt" />
|
||||
<Unit filename="../Docs/PS2Edefs.txt" />
|
||||
<Unit filename="../Docs/RemoteDebugging.txt" />
|
||||
<Unit filename="../Docs/devblog.txt" />
|
||||
<Unit filename="../Docs/readme 0.9.4.txt" />
|
||||
<Unit filename="../Docs/readme Playground.txt" />
|
||||
<Unit filename="../Dump.cpp" />
|
||||
<Unit filename="../Dump.h" />
|
||||
<Unit filename="../Elfheader.cpp" />
|
||||
<Unit filename="../Elfheader.h" />
|
||||
<Unit filename="../FPU.cpp" />
|
||||
<Unit filename="../FiFo.cpp" />
|
||||
<Unit filename="../GS.cpp" />
|
||||
<Unit filename="../GS.h" />
|
||||
<Unit filename="../Gif.cpp" />
|
||||
<Unit filename="../HashMap.h" />
|
||||
<Unit filename="../HashTools.cpp" />
|
||||
<Unit filename="../HostGui.h" />
|
||||
<Unit filename="../Hw.cpp" />
|
||||
<Unit filename="../Hw.h" />
|
||||
<Unit filename="../HwRead.cpp" />
|
||||
<Unit filename="../HwWrite.cpp" />
|
||||
<Unit filename="../IPU/IPU.cpp" />
|
||||
<Unit filename="../IPU/IPU.h" />
|
||||
<Unit filename="../IPU/acoroutine.S" />
|
||||
<Unit filename="../IPU/coroutine.cpp" />
|
||||
<Unit filename="../IPU/coroutine.h" />
|
||||
<Unit filename="../IPU/mpeg2lib/Idct.cpp" />
|
||||
<Unit filename="../IPU/mpeg2lib/Mpeg.cpp" />
|
||||
<Unit filename="../IPU/mpeg2lib/Mpeg.h" />
|
||||
<Unit filename="../IPU/mpeg2lib/Vlc.h" />
|
||||
<Unit filename="../IPU/yuv2rgb.cpp" />
|
||||
<Unit filename="../IPU/yuv2rgb.h" />
|
||||
<Unit filename="../Interpreter.cpp" />
|
||||
<Unit filename="../IopBios.cpp" />
|
||||
<Unit filename="../IopBios.h" />
|
||||
<Unit filename="../IopBios2.h" />
|
||||
<Unit filename="../IopCommon.h" />
|
||||
<Unit filename="../IopCounters.cpp" />
|
||||
<Unit filename="../IopCounters.h" />
|
||||
<Unit filename="../IopDma.cpp" />
|
||||
<Unit filename="../IopDma.h" />
|
||||
<Unit filename="../IopHw.cpp" />
|
||||
<Unit filename="../IopHw.h" />
|
||||
<Unit filename="../IopMem.cpp" />
|
||||
<Unit filename="../IopMem.h" />
|
||||
<Unit filename="../IopSio2.cpp" />
|
||||
<Unit filename="../IopSio2.h" />
|
||||
<Unit filename="LnxHostSys.cpp" />
|
||||
<Unit filename="../MMI.cpp" />
|
||||
<Unit filename="../MTGS.cpp" />
|
||||
<Unit filename="../Memory.cpp" />
|
||||
<Unit filename="../Memory.h" />
|
||||
<Unit filename="../MemoryCard.cpp" />
|
||||
<Unit filename="../MemoryCard.h" />
|
||||
<Unit filename="../Misc.cpp" />
|
||||
<Unit filename="../Misc.h" />
|
||||
<Unit filename="../NakedAsm.h" />
|
||||
<Unit filename="../Patch.cpp" />
|
||||
<Unit filename="../Patch.h" />
|
||||
<Unit filename="../PathUtils.cpp" />
|
||||
<Unit filename="../Paths.h" />
|
||||
<Unit filename="../Pcsx2Config.cpp" />
|
||||
<Unit filename="../PluginManager.cpp" />
|
||||
<Unit filename="../Plugins.h" />
|
||||
<Unit filename="../PrecompiledHeader.h" />
|
||||
<Unit filename="../R3000A.cpp" />
|
||||
<Unit filename="../R3000A.h" />
|
||||
<Unit filename="../R3000AInterpreter.cpp" />
|
||||
<Unit filename="../R3000AOpcodeTables.cpp" />
|
||||
<Unit filename="../R5900.cpp" />
|
||||
<Unit filename="../R5900.h" />
|
||||
<Unit filename="../R5900Exceptions.h" />
|
||||
<Unit filename="../R5900OpcodeImpl.cpp" />
|
||||
<Unit filename="../R5900OpcodeTables.cpp" />
|
||||
<Unit filename="../R5900OpcodeTables.h" />
|
||||
<Unit filename="../RecoverySystem.cpp" />
|
||||
<Unit filename="../SPR.cpp" />
|
||||
<Unit filename="../SPR.h" />
|
||||
<Unit filename="../SamplProf.h" />
|
||||
<Unit filename="../SaveState.cpp" />
|
||||
<Unit filename="../SaveState.h" />
|
||||
<Unit filename="../Sif.cpp" />
|
||||
<Unit filename="../Sif.h" />
|
||||
<Unit filename="../Sifcmd.h" />
|
||||
<Unit filename="../Sio.cpp" />
|
||||
<Unit filename="../Sio.h" />
|
||||
<Unit filename="../SourceLog.cpp" />
|
||||
<Unit filename="../Stats.cpp" />
|
||||
<Unit filename="../Stats.h" />
|
||||
<Unit filename="../StringUtils.h" />
|
||||
<Unit filename="../System.cpp" />
|
||||
<Unit filename="../System.h" />
|
||||
<Unit filename="../Utilities/AsciiFile.h" />
|
||||
<Unit filename="../Utilities/FileUtils.cpp" />
|
||||
<Unit filename="../Utilities/folderdesc.txt" />
|
||||
<Unit filename="../VU.h" />
|
||||
<Unit filename="../VU0.cpp" />
|
||||
<Unit filename="../VU0micro.cpp" />
|
||||
<Unit filename="../VU0microInterp.cpp" />
|
||||
<Unit filename="../VU1micro.cpp" />
|
||||
<Unit filename="../VU1microInterp.cpp" />
|
||||
<Unit filename="../VUflags.cpp" />
|
||||
<Unit filename="../VUflags.h" />
|
||||
<Unit filename="../VUmicro.h" />
|
||||
<Unit filename="../VUmicroMem.cpp" />
|
||||
<Unit filename="../VUops.cpp" />
|
||||
<Unit filename="../VUops.h" />
|
||||
<Unit filename="../Vif.cpp" />
|
||||
<Unit filename="../Vif.h" />
|
||||
<Unit filename="../VifDma.cpp" />
|
||||
<Unit filename="../VifDma.h" />
|
||||
<Unit filename="../gui/AdvancedDialog.cpp" />
|
||||
<Unit filename="../gui/AdvancedDialog.h" />
|
||||
<Unit filename="../gui/App.h" />
|
||||
<Unit filename="../gui/AppAssert.cpp" />
|
||||
<Unit filename="../gui/AppConfig.cpp" />
|
||||
<Unit filename="../gui/AppConfig.h" />
|
||||
<Unit filename="../gui/CheckedStaticBox.cpp" />
|
||||
<Unit filename="../gui/CheckedStaticBox.h" />
|
||||
<Unit filename="../gui/ConsoleLogger.cpp" />
|
||||
<Unit filename="../gui/ConsoleLogger.h" />
|
||||
<Unit filename="../gui/Dialogs/AboutBoxDialog.cpp" />
|
||||
<Unit filename="../gui/Dialogs/ConfigurationDialog.cpp" />
|
||||
<Unit filename="../gui/Dialogs/ConfigurationDialog.h" />
|
||||
<Unit filename="../gui/Dialogs/FirstTimeWizard.cpp" />
|
||||
<Unit filename="../gui/Dialogs/ImportSettingsDialog.cpp" />
|
||||
<Unit filename="../gui/Dialogs/LogOptionsDialog.cpp" />
|
||||
<Unit filename="../gui/Dialogs/LogOptionsDialog.h" />
|
||||
<Unit filename="../gui/Dialogs/ModalPopups.h" />
|
||||
<Unit filename="../gui/Dialogs/PickUserModeDialog.cpp" />
|
||||
<Unit filename="../gui/HostGui.cpp" />
|
||||
<Unit filename="../gui/IniInterface.cpp" />
|
||||
<Unit filename="../gui/IniInterface.h" />
|
||||
<Unit filename="../gui/MainFrame.cpp" />
|
||||
<Unit filename="../gui/MainFrame.h" />
|
||||
<Unit filename="../gui/MainMenuClicks.cpp" />
|
||||
<Unit filename="../gui/Panels/AudioPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/BiosSelectorPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/ConfigurationPanels.h" />
|
||||
<Unit filename="../gui/Panels/CpuPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/DirPickerPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/GameFixesPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/MiscPanelStuff.cpp" />
|
||||
<Unit filename="../gui/Panels/PathsPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/PluginSelectorPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/SpeedhacksPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/VideoPanel.cpp" />
|
||||
<Unit filename="../gui/Plugins.cpp" />
|
||||
<Unit filename="../gui/Resources/AppIcon.h" />
|
||||
<Unit filename="../gui/Resources/BackgroundLogo.h" />
|
||||
<Unit filename="../gui/Resources/ConfigIcon_Cpu.h" />
|
||||
<Unit filename="../gui/Resources/ConfigIcon_Gamefixes.h" />
|
||||
<Unit filename="../gui/Resources/ConfigIcon_Paths.h" />
|
||||
<Unit filename="../gui/Resources/ConfigIcon_Plugins.h" />
|
||||
<Unit filename="../gui/Resources/ConfigIcon_Speedhacks.h" />
|
||||
<Unit filename="../gui/Resources/ConfigIcon_Video.h" />
|
||||
<Unit filename="../gui/Resources/EmbeddedImage.h" />
|
||||
<Unit filename="../gui/Resources/ps2_silver.h" />
|
||||
<Unit filename="../gui/Saveslots.cpp" />
|
||||
<Unit filename="../gui/i18n.cpp" />
|
||||
<Unit filename="../gui/i18n.h" />
|
||||
<Unit filename="../gui/main.cpp" />
|
||||
<Unit filename="../gui/wxHelpers.cpp" />
|
||||
<Unit filename="../gui/wxHelpers.h" />
|
||||
<Unit filename="../pcsxAbout.bmp" />
|
||||
<Unit filename="../ps2/BiosTools.cpp" />
|
||||
<Unit filename="../ps2/BiosTools.h" />
|
||||
<Unit filename="../ps2/CoreEmuThread.cpp" />
|
||||
<Unit filename="../ps2/CoreEmuThread.h" />
|
||||
<Unit filename="../ps2/Iop/IopHwRead.cpp" />
|
||||
<Unit filename="../ps2/Iop/IopHwWrite.cpp" />
|
||||
<Unit filename="../ps2/Iop/IopHw_Internal.h" />
|
||||
<Unit filename="../tinyxml/tinystr.cpp" />
|
||||
<Unit filename="../tinyxml/tinystr.h" />
|
||||
<Unit filename="../tinyxml/tinyxml.cpp" />
|
||||
<Unit filename="../tinyxml/tinyxml.h" />
|
||||
<Unit filename="../tinyxml/tinyxmlerror.cpp" />
|
||||
<Unit filename="../tinyxml/tinyxmlparser.cpp" />
|
||||
<Unit filename="../vtlb.cpp" />
|
||||
<Unit filename="../vtlb.h" />
|
||||
<Unit filename="../x86/BaseblockEx.cpp" />
|
||||
<Unit filename="../x86/BaseblockEx.h" />
|
||||
<Unit filename="../x86/aR3000A.S" />
|
||||
<Unit filename="../x86/aVUzerorec.S" />
|
||||
<Unit filename="../x86/aVif.S" />
|
||||
<Unit filename="../x86/iCOP0.cpp" />
|
||||
<Unit filename="../x86/iCOP0.h" />
|
||||
<Unit filename="../x86/iCOP2.cpp" />
|
||||
<Unit filename="../x86/iCore.cpp" />
|
||||
<Unit filename="../x86/iCore.h" />
|
||||
<Unit filename="../x86/iFPU.cpp" />
|
||||
<Unit filename="../x86/iFPU.h" />
|
||||
<Unit filename="../x86/iFPUd.cpp" />
|
||||
<Unit filename="../x86/iMMI.cpp" />
|
||||
<Unit filename="../x86/iMMI.h" />
|
||||
<Unit filename="../x86/iMisc.cpp" />
|
||||
<Unit filename="../x86/iR3000A.cpp" />
|
||||
<Unit filename="../x86/iR3000A.h" />
|
||||
<Unit filename="../x86/iR3000Atables.cpp" />
|
||||
<Unit filename="../x86/iR5900.h" />
|
||||
<Unit filename="../x86/iR5900Arit.h" />
|
||||
<Unit filename="../x86/iR5900AritImm.h" />
|
||||
<Unit filename="../x86/iR5900Branch.h" />
|
||||
<Unit filename="../x86/iR5900Jump.h" />
|
||||
<Unit filename="../x86/iR5900LoadStore.h" />
|
||||
<Unit filename="../x86/iR5900Misc.cpp" />
|
||||
<Unit filename="../x86/iR5900Move.h" />
|
||||
<Unit filename="../x86/iR5900MultDiv.h" />
|
||||
<Unit filename="../x86/iR5900Shift.h" />
|
||||
<Unit filename="../x86/iVU0micro.cpp" />
|
||||
<Unit filename="../x86/iVU1micro.cpp" />
|
||||
<Unit filename="../x86/iVif.cpp" />
|
||||
<Unit filename="../x86/ir5900tables.cpp" />
|
||||
<Unit filename="../x86/ix86-32/aR5900-32.S" />
|
||||
<Unit filename="../x86/ix86-32/iCore-32.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900-32.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900Arit.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900AritImm.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900Branch.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900Jump.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900LoadStore.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900Move.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900MultDiv.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900Shift.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900Templates.cpp" />
|
||||
<Unit filename="../x86/ix86-32/recVTLB.cpp" />
|
||||
<Unit filename="../x86/microVU.cpp" />
|
||||
<Unit filename="../x86/microVU.h" />
|
||||
<Unit filename="../x86/microVU_Alloc.inl" />
|
||||
<Unit filename="../x86/microVU_Analyze.inl" />
|
||||
<Unit filename="../x86/microVU_Compile.inl" />
|
||||
<Unit filename="../x86/microVU_Execute.inl" />
|
||||
<Unit filename="../x86/microVU_Flags.inl" />
|
||||
<Unit filename="../x86/microVU_IR.h" />
|
||||
<Unit filename="../x86/microVU_Log.inl" />
|
||||
<Unit filename="../x86/microVU_Lower.inl" />
|
||||
<Unit filename="../x86/microVU_Misc.h" />
|
||||
<Unit filename="../x86/microVU_Misc.inl" />
|
||||
<Unit filename="../x86/microVU_Tables.inl" />
|
||||
<Unit filename="../x86/microVU_Upper.inl" />
|
||||
<Unit filename="../x86/sVU_Debug.h" />
|
||||
<Unit filename="../x86/sVU_Lower.cpp" />
|
||||
<Unit filename="../x86/sVU_Micro.cpp" />
|
||||
<Unit filename="../x86/sVU_Micro.h" />
|
||||
<Unit filename="../x86/sVU_Upper.cpp" />
|
||||
<Unit filename="../x86/sVU_zerorec.cpp" />
|
||||
<Unit filename="../x86/sVU_zerorec.h" />
|
||||
<Unit filename="../xmlpatchloader.cpp" />
|
||||
<Extensions>
|
||||
<envvars />
|
||||
<code_completion>
|
||||
<search_path add="/usr/include/wx-2.8" />
|
||||
</code_completion>
|
||||
<lib_finder disable_auto="1" />
|
||||
<debugger />
|
||||
</Extensions>
|
||||
</Project>
|
||||
</CodeBlocks_project_file>
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<CodeBlocks_project_file>
|
||||
<FileVersion major="1" minor="6" />
|
||||
<Project>
|
||||
<Option title="pcsx2" />
|
||||
<Option platforms="Windows;Unix;" />
|
||||
<Option pch_mode="2" />
|
||||
<Option compiler="gcc" />
|
||||
<Build>
|
||||
<Target title="Debug">
|
||||
<Option platforms="Windows;Unix;" />
|
||||
<Option output="$(SvnRootDir)/bin/pcsx2-dbg" prefix_auto="1" extension_auto="1" />
|
||||
<Option working_dir="$(SvnRootDir)/bin/" />
|
||||
<Option object_output="./.objs/debug" />
|
||||
<Option type="0" />
|
||||
<Option compiler="gcc" />
|
||||
<Compiler>
|
||||
<Add option="-g" />
|
||||
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=yes --cflags`" />
|
||||
<Add option="-DPCSX2_DEVBUILD" />
|
||||
<Add option="-DPCSX2_DEBUG" />
|
||||
</Compiler>
|
||||
<ResourceCompiler>
|
||||
<Add directory="$(ProjectRootDir)/gui" />
|
||||
</ResourceCompiler>
|
||||
<Linker>
|
||||
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=yes --libs`" />
|
||||
<Add library="$(SvnRootDir)/deps/debug/zlib.a" />
|
||||
<Add library="$(SvnRootDir)/deps/debug/libx86emitter.a" />
|
||||
<Add library="$(SvnRootDir)/deps/debug/libUtilities.a" />
|
||||
</Linker>
|
||||
</Target>
|
||||
<Target title="Devel">
|
||||
<Option platforms="Windows;Unix;" />
|
||||
<Option output="$(SvnRootDir)/bin/pcsx2-dev" prefix_auto="1" extension_auto="1" />
|
||||
<Option working_dir="$(SvnRootDir)/bin/" />
|
||||
<Option object_output="./.objs/devel" />
|
||||
<Option type="0" />
|
||||
<Option compiler="gcc" />
|
||||
<Compiler>
|
||||
<Add option="-O2" />
|
||||
<Add option="-W" />
|
||||
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=yes --cflags`" />
|
||||
<Add option="-DNDEBUG" />
|
||||
<Add option="-DPCSX2_DEVBUILD" />
|
||||
</Compiler>
|
||||
<ResourceCompiler>
|
||||
<Add directory="$(ProjectRootDir)/gui" />
|
||||
</ResourceCompiler>
|
||||
<Linker>
|
||||
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=yes --libs`" />
|
||||
<Add library="$(SvnRootDir)/deps/devel/zlib.a" />
|
||||
<Add library="$(SvnRootDir)/deps/devel/libx86emitter.a" />
|
||||
<Add library="$(SvnRootDir)/deps/devel/libUtilities.a" />
|
||||
</Linker>
|
||||
</Target>
|
||||
<Target title="Release">
|
||||
<Option platforms="Windows;Unix;" />
|
||||
<Option output="$(SvnRootDir)/bin/pcsx2" prefix_auto="1" extension_auto="1" />
|
||||
<Option working_dir="$(SvnRootDir)/bin/" />
|
||||
<Option object_output="./.objs/release" />
|
||||
<Option type="0" />
|
||||
<Option compiler="gcc" />
|
||||
<Compiler>
|
||||
<Add option="-O2" />
|
||||
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=no --cflags`" />
|
||||
<Add option="-DNDEBUG" />
|
||||
</Compiler>
|
||||
<ResourceCompiler>
|
||||
<Add directory="$(ProjectRootDir)/gui" />
|
||||
</ResourceCompiler>
|
||||
<Linker>
|
||||
<Add option="-s" />
|
||||
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=no --libs`" />
|
||||
<Add library="$(SvnRootDir)/deps/release/zlib.a" />
|
||||
<Add library="$(SvnRootDir)/deps/release/libx86emitter.a" />
|
||||
<Add library="$(SvnRootDir)/deps/release/libUtilities.a" />
|
||||
</Linker>
|
||||
</Target>
|
||||
<Environment>
|
||||
<Variable name="SvnRootDir" value="../../" />
|
||||
<Variable name="ProjectRootDir" value='"$(SvnRootDir)/pcsx2/"' />
|
||||
<Variable name="CommonDir" value='"$(SvnRootDir)/common/"' />
|
||||
</Environment>
|
||||
</Build>
|
||||
<Compiler>
|
||||
<Add option="-march=athlon" />
|
||||
<Add option="-march=pentium4" />
|
||||
<Add option="-march=i686" />
|
||||
<Add option="-march=i586" />
|
||||
<Add option="-Wno-format" />
|
||||
<Add option="-Wno-unused-parameter" />
|
||||
<Add option="-Wno-unused-value" />
|
||||
<Add option="-Wunused-variable" />
|
||||
<Add option="-fno-guess-branch-probability" />
|
||||
<Add option="-fno-dse" />
|
||||
<Add option="-fno-tree-dse" />
|
||||
<Add option="-pipe -msse -msse2" />
|
||||
<Add option="-DWX_PRECOMP" />
|
||||
<Add directory="$(SvnRootDir)/common/include/" />
|
||||
<Add directory="$(SvnRootDir)/3rdparty/" />
|
||||
<Add directory="$(ProjectRootDir)" />
|
||||
<Add directory="$(ProjectRootDir)/gui" />
|
||||
<Add directory="$(ProjectRootDir)/x86" />
|
||||
</Compiler>
|
||||
<Linker>
|
||||
<Add option="-Xlinker -zmuldefs" />
|
||||
</Linker>
|
||||
<Unit filename="../../common/include/Pcsx2Config.h" />
|
||||
<Unit filename="../../common/include/Pcsx2Defs.h" />
|
||||
<Unit filename="../../common/include/Pcsx2Types.h" />
|
||||
<Unit filename="../../common/include/wx/folderdesc.txt" />
|
||||
<Unit filename="../../common/include/wx/scopedarray.h" />
|
||||
<Unit filename="../../common/include/wx/scopedptr.h" />
|
||||
<Unit filename="../CDVD/CDVD.cpp" />
|
||||
<Unit filename="../CDVD/CDVD.h" />
|
||||
<Unit filename="../CDVD/CDVD_internal.h" />
|
||||
<Unit filename="../CDVD/CDVDaccess.cpp" />
|
||||
<Unit filename="../CDVD/CDVDaccess.h" />
|
||||
<Unit filename="../CDVD/CDVDisoReader.cpp" />
|
||||
<Unit filename="../CDVD/CDVDisoReader.h" />
|
||||
<Unit filename="../CDVD/CdRom.cpp" />
|
||||
<Unit filename="../CDVD/CdRom.h" />
|
||||
<Unit filename="../CDVD/IsoFScdvd.h" />
|
||||
<Unit filename="../CDVD/IsoFSdrv.cpp" />
|
||||
<Unit filename="../CDVD/IsoFSdrv.h" />
|
||||
<Unit filename="../CDVD/IsoFStools.cpp" />
|
||||
<Unit filename="../CDVD/IsoFStools.h" />
|
||||
<Unit filename="../CDVD/IsoFileFormats.cpp" />
|
||||
<Unit filename="../CDVD/IsoFileFormats.h" />
|
||||
<Unit filename="../CDVD/IsoFileTools.cpp" />
|
||||
<Unit filename="../CDVD/IsoFileTools.h" />
|
||||
<Unit filename="../CDVD/IsoFileTools.h.save" />
|
||||
<Unit filename="../CDVD/Makefile.am" />
|
||||
<Unit filename="../COP0.cpp" />
|
||||
<Unit filename="../COP2.cpp" />
|
||||
<Unit filename="../Cache.cpp" />
|
||||
<Unit filename="../Cache.h" />
|
||||
<Unit filename="../Common.h" />
|
||||
<Unit filename="../Config.h" />
|
||||
<Unit filename="../Counters.cpp" />
|
||||
<Unit filename="../Counters.h" />
|
||||
<Unit filename="../DebugTools/Debug.h" />
|
||||
<Unit filename="../DebugTools/DisASM.h" />
|
||||
<Unit filename="../DebugTools/DisR3000A.cpp" />
|
||||
<Unit filename="../DebugTools/DisR5900.cpp" />
|
||||
<Unit filename="../DebugTools/DisR5900asm.cpp" />
|
||||
<Unit filename="../DebugTools/DisVU0Micro.cpp" />
|
||||
<Unit filename="../DebugTools/DisVU1Micro.cpp" />
|
||||
<Unit filename="../DebugTools/DisVUmicro.h" />
|
||||
<Unit filename="../DebugTools/DisVUops.h" />
|
||||
<Unit filename="../Docs/ChangeLog.txt" />
|
||||
<Unit filename="../Docs/License.txt" />
|
||||
<Unit filename="../Docs/PS2Edefs.txt" />
|
||||
<Unit filename="../Docs/RemoteDebugging.txt" />
|
||||
<Unit filename="../Docs/devblog.txt" />
|
||||
<Unit filename="../Docs/readme 0.9.4.txt" />
|
||||
<Unit filename="../Docs/readme Playground.txt" />
|
||||
<Unit filename="../Dump.cpp" />
|
||||
<Unit filename="../Dump.h" />
|
||||
<Unit filename="../Elfheader.cpp" />
|
||||
<Unit filename="../Elfheader.h" />
|
||||
<Unit filename="../FPU.cpp" />
|
||||
<Unit filename="../FiFo.cpp" />
|
||||
<Unit filename="../GS.cpp" />
|
||||
<Unit filename="../GS.h" />
|
||||
<Unit filename="../Gif.cpp" />
|
||||
<Unit filename="../HashMap.h" />
|
||||
<Unit filename="../HashTools.cpp" />
|
||||
<Unit filename="../HostGui.h" />
|
||||
<Unit filename="../Hw.cpp" />
|
||||
<Unit filename="../Hw.h" />
|
||||
<Unit filename="../HwRead.cpp" />
|
||||
<Unit filename="../HwWrite.cpp" />
|
||||
<Unit filename="../IPU/IPU.cpp" />
|
||||
<Unit filename="../IPU/IPU.h" />
|
||||
<Unit filename="../IPU/acoroutine.S" />
|
||||
<Unit filename="../IPU/coroutine.cpp" />
|
||||
<Unit filename="../IPU/coroutine.h" />
|
||||
<Unit filename="../IPU/mpeg2lib/Idct.cpp" />
|
||||
<Unit filename="../IPU/mpeg2lib/Mpeg.cpp" />
|
||||
<Unit filename="../IPU/mpeg2lib/Mpeg.h" />
|
||||
<Unit filename="../IPU/mpeg2lib/Vlc.h" />
|
||||
<Unit filename="../IPU/yuv2rgb.cpp" />
|
||||
<Unit filename="../IPU/yuv2rgb.h" />
|
||||
<Unit filename="../Interpreter.cpp" />
|
||||
<Unit filename="../IopBios.cpp" />
|
||||
<Unit filename="../IopBios.h" />
|
||||
<Unit filename="../IopBios2.h" />
|
||||
<Unit filename="../IopCommon.h" />
|
||||
<Unit filename="../IopCounters.cpp" />
|
||||
<Unit filename="../IopCounters.h" />
|
||||
<Unit filename="../IopDma.cpp" />
|
||||
<Unit filename="../IopDma.h" />
|
||||
<Unit filename="../IopHw.cpp" />
|
||||
<Unit filename="../IopHw.h" />
|
||||
<Unit filename="../IopMem.cpp" />
|
||||
<Unit filename="../IopMem.h" />
|
||||
<Unit filename="../IopSio2.cpp" />
|
||||
<Unit filename="../IopSio2.h" />
|
||||
<Unit filename="LnxHostSys.cpp" />
|
||||
<Unit filename="../MMI.cpp" />
|
||||
<Unit filename="../MTGS.cpp" />
|
||||
<Unit filename="../Memory.cpp" />
|
||||
<Unit filename="../Memory.h" />
|
||||
<Unit filename="../MemoryCard.cpp" />
|
||||
<Unit filename="../MemoryCard.h" />
|
||||
<Unit filename="../Misc.cpp" />
|
||||
<Unit filename="../Misc.h" />
|
||||
<Unit filename="../NakedAsm.h" />
|
||||
<Unit filename="../Patch.cpp" />
|
||||
<Unit filename="../Patch.h" />
|
||||
<Unit filename="../PathUtils.cpp" />
|
||||
<Unit filename="../Paths.h" />
|
||||
<Unit filename="../Pcsx2Config.cpp" />
|
||||
<Unit filename="../PluginManager.cpp" />
|
||||
<Unit filename="../Plugins.h" />
|
||||
<Unit filename="../PrecompiledHeader.h" />
|
||||
<Unit filename="../R3000A.cpp" />
|
||||
<Unit filename="../R3000A.h" />
|
||||
<Unit filename="../R3000AInterpreter.cpp" />
|
||||
<Unit filename="../R3000AOpcodeTables.cpp" />
|
||||
<Unit filename="../R5900.cpp" />
|
||||
<Unit filename="../R5900.h" />
|
||||
<Unit filename="../R5900Exceptions.h" />
|
||||
<Unit filename="../R5900OpcodeImpl.cpp" />
|
||||
<Unit filename="../R5900OpcodeTables.cpp" />
|
||||
<Unit filename="../R5900OpcodeTables.h" />
|
||||
<Unit filename="../RecoverySystem.cpp" />
|
||||
<Unit filename="../SPR.cpp" />
|
||||
<Unit filename="../SPR.h" />
|
||||
<Unit filename="../SamplProf.h" />
|
||||
<Unit filename="../SaveState.cpp" />
|
||||
<Unit filename="../SaveState.h" />
|
||||
<Unit filename="../Sif.cpp" />
|
||||
<Unit filename="../Sif.h" />
|
||||
<Unit filename="../Sifcmd.h" />
|
||||
<Unit filename="../Sio.cpp" />
|
||||
<Unit filename="../Sio.h" />
|
||||
<Unit filename="../SourceLog.cpp" />
|
||||
<Unit filename="../Stats.cpp" />
|
||||
<Unit filename="../Stats.h" />
|
||||
<Unit filename="../StringUtils.h" />
|
||||
<Unit filename="../System.cpp" />
|
||||
<Unit filename="../System.h" />
|
||||
<Unit filename="../Utilities/AsciiFile.h" />
|
||||
<Unit filename="../Utilities/FileUtils.cpp" />
|
||||
<Unit filename="../Utilities/folderdesc.txt" />
|
||||
<Unit filename="../VU.h" />
|
||||
<Unit filename="../VU0.cpp" />
|
||||
<Unit filename="../VU0micro.cpp" />
|
||||
<Unit filename="../VU0microInterp.cpp" />
|
||||
<Unit filename="../VU1micro.cpp" />
|
||||
<Unit filename="../VU1microInterp.cpp" />
|
||||
<Unit filename="../VUflags.cpp" />
|
||||
<Unit filename="../VUflags.h" />
|
||||
<Unit filename="../VUmicro.h" />
|
||||
<Unit filename="../VUmicroMem.cpp" />
|
||||
<Unit filename="../VUops.cpp" />
|
||||
<Unit filename="../VUops.h" />
|
||||
<Unit filename="../Vif.cpp" />
|
||||
<Unit filename="../Vif.h" />
|
||||
<Unit filename="../VifDma.cpp" />
|
||||
<Unit filename="../VifDma.h" />
|
||||
<Unit filename="../gui/AdvancedDialog.cpp" />
|
||||
<Unit filename="../gui/AdvancedDialog.h" />
|
||||
<Unit filename="../gui/App.h" />
|
||||
<Unit filename="../gui/AppAssert.cpp" />
|
||||
<Unit filename="../gui/AppConfig.cpp" />
|
||||
<Unit filename="../gui/AppConfig.h" />
|
||||
<Unit filename="../gui/AppRes.cpp" />
|
||||
<Unit filename="../gui/CheckedStaticBox.cpp" />
|
||||
<Unit filename="../gui/CheckedStaticBox.h" />
|
||||
<Unit filename="../gui/ConsoleLogger.cpp" />
|
||||
<Unit filename="../gui/ConsoleLogger.h" />
|
||||
<Unit filename="../gui/Dialogs/AboutBoxDialog.cpp" />
|
||||
<Unit filename="../gui/Dialogs/ConfigurationDialog.cpp" />
|
||||
<Unit filename="../gui/Dialogs/ConfigurationDialog.h" />
|
||||
<Unit filename="../gui/Dialogs/FirstTimeWizard.cpp" />
|
||||
<Unit filename="../gui/Dialogs/ImportSettingsDialog.cpp" />
|
||||
<Unit filename="../gui/Dialogs/LogOptionsDialog.cpp" />
|
||||
<Unit filename="../gui/Dialogs/LogOptionsDialog.h" />
|
||||
<Unit filename="../gui/Dialogs/ModalPopups.h" />
|
||||
<Unit filename="../gui/Dialogs/PickUserModeDialog.cpp" />
|
||||
<Unit filename="../gui/HostGui.cpp" />
|
||||
<Unit filename="../gui/IniInterface.cpp" />
|
||||
<Unit filename="../gui/IniInterface.h" />
|
||||
<Unit filename="../gui/MainFrame.cpp" />
|
||||
<Unit filename="../gui/MainFrame.h" />
|
||||
<Unit filename="../gui/MainMenuClicks.cpp" />
|
||||
<Unit filename="../gui/Panels/AudioPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/BiosSelectorPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/ConfigurationPanels.h" />
|
||||
<Unit filename="../gui/Panels/CpuPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/DirPickerPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/GameFixesPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/MiscPanelStuff.cpp" />
|
||||
<Unit filename="../gui/Panels/PathsPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/PluginSelectorPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/SpeedhacksPanel.cpp" />
|
||||
<Unit filename="../gui/Panels/VideoPanel.cpp" />
|
||||
<Unit filename="../gui/Plugins.cpp" />
|
||||
<Unit filename="../gui/Resources/AppIcon.h" />
|
||||
<Unit filename="../gui/Resources/BackgroundLogo.h" />
|
||||
<Unit filename="../gui/Resources/ConfigIcon_Cpu.h" />
|
||||
<Unit filename="../gui/Resources/ConfigIcon_Gamefixes.h" />
|
||||
<Unit filename="../gui/Resources/ConfigIcon_Paths.h" />
|
||||
<Unit filename="../gui/Resources/ConfigIcon_Plugins.h" />
|
||||
<Unit filename="../gui/Resources/ConfigIcon_Speedhacks.h" />
|
||||
<Unit filename="../gui/Resources/ConfigIcon_Video.h" />
|
||||
<Unit filename="../gui/Resources/EmbeddedImage.h" />
|
||||
<Unit filename="../gui/Resources/ps2_silver.h" />
|
||||
<Unit filename="../gui/Saveslots.cpp" />
|
||||
<Unit filename="../gui/i18n.cpp" />
|
||||
<Unit filename="../gui/i18n.h" />
|
||||
<Unit filename="../gui/main.cpp" />
|
||||
<Unit filename="../gui/wxHelpers.cpp" />
|
||||
<Unit filename="../gui/wxHelpers.h" />
|
||||
<Unit filename="../pcsxAbout.bmp" />
|
||||
<Unit filename="../ps2/BiosTools.cpp" />
|
||||
<Unit filename="../ps2/BiosTools.h" />
|
||||
<Unit filename="../ps2/CoreEmuThread.cpp" />
|
||||
<Unit filename="../ps2/CoreEmuThread.h" />
|
||||
<Unit filename="../ps2/Iop/IopHwRead.cpp" />
|
||||
<Unit filename="../ps2/Iop/IopHwWrite.cpp" />
|
||||
<Unit filename="../ps2/Iop/IopHw_Internal.h" />
|
||||
<Unit filename="../tinyxml/tinystr.cpp" />
|
||||
<Unit filename="../tinyxml/tinystr.h" />
|
||||
<Unit filename="../tinyxml/tinyxml.cpp" />
|
||||
<Unit filename="../tinyxml/tinyxml.h" />
|
||||
<Unit filename="../tinyxml/tinyxmlerror.cpp" />
|
||||
<Unit filename="../tinyxml/tinyxmlparser.cpp" />
|
||||
<Unit filename="../vtlb.cpp" />
|
||||
<Unit filename="../vtlb.h" />
|
||||
<Unit filename="../x86/BaseblockEx.cpp" />
|
||||
<Unit filename="../x86/BaseblockEx.h" />
|
||||
<Unit filename="../x86/aR3000A.S" />
|
||||
<Unit filename="../x86/aVUzerorec.S" />
|
||||
<Unit filename="../x86/aVif.S" />
|
||||
<Unit filename="../x86/iCOP0.cpp" />
|
||||
<Unit filename="../x86/iCOP0.h" />
|
||||
<Unit filename="../x86/iCOP2.cpp" />
|
||||
<Unit filename="../x86/iCore.cpp" />
|
||||
<Unit filename="../x86/iCore.h" />
|
||||
<Unit filename="../x86/iFPU.cpp" />
|
||||
<Unit filename="../x86/iFPU.h" />
|
||||
<Unit filename="../x86/iFPUd.cpp" />
|
||||
<Unit filename="../x86/iMMI.cpp" />
|
||||
<Unit filename="../x86/iMMI.h" />
|
||||
<Unit filename="../x86/iMisc.cpp" />
|
||||
<Unit filename="../x86/iR3000A.cpp" />
|
||||
<Unit filename="../x86/iR3000A.h" />
|
||||
<Unit filename="../x86/iR3000Atables.cpp" />
|
||||
<Unit filename="../x86/iR5900.h" />
|
||||
<Unit filename="../x86/iR5900Arit.h" />
|
||||
<Unit filename="../x86/iR5900AritImm.h" />
|
||||
<Unit filename="../x86/iR5900Branch.h" />
|
||||
<Unit filename="../x86/iR5900Jump.h" />
|
||||
<Unit filename="../x86/iR5900LoadStore.h" />
|
||||
<Unit filename="../x86/iR5900Misc.cpp" />
|
||||
<Unit filename="../x86/iR5900Move.h" />
|
||||
<Unit filename="../x86/iR5900MultDiv.h" />
|
||||
<Unit filename="../x86/iR5900Shift.h" />
|
||||
<Unit filename="../x86/iVU0micro.cpp" />
|
||||
<Unit filename="../x86/iVU1micro.cpp" />
|
||||
<Unit filename="../x86/iVif.cpp" />
|
||||
<Unit filename="../x86/ir5900tables.cpp" />
|
||||
<Unit filename="../x86/ix86-32/aR5900-32.S" />
|
||||
<Unit filename="../x86/ix86-32/iCore-32.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900-32.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900Arit.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900AritImm.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900Branch.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900Jump.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900LoadStore.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900Move.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900MultDiv.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900Shift.cpp" />
|
||||
<Unit filename="../x86/ix86-32/iR5900Templates.cpp" />
|
||||
<Unit filename="../x86/ix86-32/recVTLB.cpp" />
|
||||
<Unit filename="../x86/microVU.cpp" />
|
||||
<Unit filename="../x86/microVU.h" />
|
||||
<Unit filename="../x86/microVU_Alloc.inl" />
|
||||
<Unit filename="../x86/microVU_Analyze.inl" />
|
||||
<Unit filename="../x86/microVU_Compile.inl" />
|
||||
<Unit filename="../x86/microVU_Execute.inl" />
|
||||
<Unit filename="../x86/microVU_Flags.inl" />
|
||||
<Unit filename="../x86/microVU_IR.h" />
|
||||
<Unit filename="../x86/microVU_Log.inl" />
|
||||
<Unit filename="../x86/microVU_Lower.inl" />
|
||||
<Unit filename="../x86/microVU_Misc.h" />
|
||||
<Unit filename="../x86/microVU_Misc.inl" />
|
||||
<Unit filename="../x86/microVU_Tables.inl" />
|
||||
<Unit filename="../x86/microVU_Upper.inl" />
|
||||
<Unit filename="../x86/sVU_Debug.h" />
|
||||
<Unit filename="../x86/sVU_Lower.cpp" />
|
||||
<Unit filename="../x86/sVU_Micro.cpp" />
|
||||
<Unit filename="../x86/sVU_Micro.h" />
|
||||
<Unit filename="../x86/sVU_Upper.cpp" />
|
||||
<Unit filename="../x86/sVU_zerorec.cpp" />
|
||||
<Unit filename="../x86/sVU_zerorec.h" />
|
||||
<Unit filename="../xmlpatchloader.cpp" />
|
||||
<Extensions>
|
||||
<envvars />
|
||||
<code_completion>
|
||||
<search_path add="/usr/include/wx-2.8" />
|
||||
</code_completion>
|
||||
<lib_finder disable_auto="1" />
|
||||
<debugger />
|
||||
</Extensions>
|
||||
</Project>
|
||||
</CodeBlocks_project_file>
|
||||
|
|
|
@ -214,7 +214,7 @@ void mtgsThreadObject::Start()
|
|||
m_sem_InitDone.Wait();
|
||||
|
||||
if( m_returncode != 0 ) // means the thread failed to init the GS plugin
|
||||
throw Exception::PluginFailure( "GS", wxLt("%s plugin failed to open.") );
|
||||
throw Exception::PluginOpenError( PluginId_GS );
|
||||
}
|
||||
|
||||
mtgsThreadObject::~mtgsThreadObject()
|
||||
|
@ -507,7 +507,7 @@ sptr mtgsThreadObject::ExecuteTask()
|
|||
GSsetBaseMem( m_gsMem );
|
||||
GSirqCallback( NULL );
|
||||
|
||||
g_plugins->Open( PluginId_GS );
|
||||
GetPluginManager().Open( PluginId_GS );
|
||||
|
||||
Console::WriteLn( "MTGS > GSopen Finished, return code: 0x%x", params m_returncode );
|
||||
|
||||
|
@ -629,7 +629,7 @@ sptr mtgsThreadObject::ExecuteTask()
|
|||
{
|
||||
freezeData* data = (freezeData*)(*(uptr*)&tag.data[1]);
|
||||
int mode = tag.data[0];
|
||||
g_plugins->Freeze( PluginId_GS, mode, data );
|
||||
GetPluginManager().Freeze( PluginId_GS, mode, data );
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -667,7 +667,7 @@ sptr mtgsThreadObject::ExecuteTask()
|
|||
break;
|
||||
|
||||
case GS_RINGTYPE_QUIT:
|
||||
g_plugins->Close( PluginId_GS );
|
||||
GetPluginManager().Close( PluginId_GS );
|
||||
m_sem_Quitter.Post();
|
||||
return 0;
|
||||
|
||||
|
|
|
@ -210,7 +210,7 @@ void LoadGSState(const wxString& file)
|
|||
if (ret != 0)
|
||||
{
|
||||
delete f;
|
||||
throw Exception::PluginFailure( "GS" );
|
||||
throw Exception::PluginOpenError( PluginId_GS );
|
||||
}
|
||||
|
||||
ret = PADopen((void *)&pDsp);
|
||||
|
|
|
@ -527,14 +527,14 @@ PluginManager *g_plugins = NULL;
|
|||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
Exception::InvalidPluginConfigured::InvalidPluginConfigured( PluginsEnum_t pid, const wxString& objname, const char* eng )
|
||||
Exception::PluginLoadError::PluginLoadError( PluginsEnum_t pid, const wxString& objname, const char* eng )
|
||||
{
|
||||
BaseException::InitBaseEx( eng );
|
||||
StreamName = objname;
|
||||
PluginId = pid;
|
||||
}
|
||||
|
||||
Exception::InvalidPluginConfigured::InvalidPluginConfigured( PluginsEnum_t pid, const wxString& objname,
|
||||
Exception::PluginLoadError::PluginLoadError( PluginsEnum_t pid, const wxString& objname,
|
||||
const wxString& eng_msg, const wxString& xlt_msg )
|
||||
{
|
||||
BaseException::InitBaseEx( eng_msg, xlt_msg );
|
||||
|
@ -542,17 +542,26 @@ Exception::InvalidPluginConfigured::InvalidPluginConfigured( PluginsEnum_t pid,
|
|||
PluginId = pid;
|
||||
}
|
||||
|
||||
wxString Exception::PluginFailure::FormatDiagnosticMessage() const
|
||||
wxString Exception::PluginLoadError::FormatDiagnosticMessage() const
|
||||
{
|
||||
return wxsFormat(
|
||||
L"%s plugin has encountered an error.\n\n",
|
||||
plugin_name.c_str()
|
||||
) + m_stacktrace;
|
||||
return wxsFormat( m_message_diag, tbl_PluginInfo[PluginId].GetShortname() ) +
|
||||
L"\n\n" + StreamName;
|
||||
}
|
||||
|
||||
wxString Exception::PluginFailure::FormatDisplayMessage() const
|
||||
wxString Exception::PluginLoadError::FormatDisplayMessage() const
|
||||
{
|
||||
return wxsFormat( m_message_user, plugin_name.c_str() );
|
||||
return wxsFormat( m_message_user, tbl_PluginInfo[PluginId].GetShortname() ) +
|
||||
L"\n\n" + StreamName;
|
||||
}
|
||||
|
||||
wxString Exception::PluginError::FormatDiagnosticMessage() const
|
||||
{
|
||||
return wxsFormat( m_message_diag, tbl_PluginInfo[PluginId].GetShortname() );
|
||||
}
|
||||
|
||||
wxString Exception::PluginError::FormatDisplayMessage() const
|
||||
{
|
||||
return wxsFormat( m_message_user, tbl_PluginInfo[PluginId].GetShortname() );
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
@ -570,14 +579,13 @@ PluginManager::PluginManager( const wxString (&folders)[PluginId_Count] )
|
|||
m_info[pid].Filename = folders[pid];
|
||||
|
||||
if( !wxFile::Exists( folders[pid] ) )
|
||||
throw Exception::InvalidPluginConfigured( pid, folders[pid],
|
||||
L"Plugin file not found",
|
||||
_("The configured plugin file was not found")
|
||||
throw Exception::PluginLoadError( pid, folders[pid],
|
||||
wxLt("The configured %s plugin file was not found")
|
||||
);
|
||||
|
||||
if( !m_info[pid].Lib.Load( folders[pid] ) )
|
||||
throw Exception::InvalidPluginConfigured( pid, folders[pid],
|
||||
wxLt("Configured plugin file is not a valid dynamic library")
|
||||
throw Exception::PluginLoadError( pid, folders[pid],
|
||||
wxLt("The configured %s plugin file is not a valid dynamic library")
|
||||
);
|
||||
|
||||
// Try to enumerate the new v2.0 plugin interface first.
|
||||
|
@ -625,8 +633,8 @@ void PluginManager::BindCommon( PluginsEnum_t pid )
|
|||
|
||||
if( *target == NULL )
|
||||
{
|
||||
throw Exception::InvalidPluginConfigured( pid, m_info[pid].Filename,
|
||||
wxLt( "Configured plugin is not a valid PCSX2 plugin, or is for an older unsupported version of PCSX2." ) );
|
||||
throw Exception::PluginLoadError( pid, m_info[pid].Filename,
|
||||
wxLt( "Configured plugin is not a PCSX2 plugin, or is for an older unsupported version of PCSX2." ) );
|
||||
}
|
||||
|
||||
target++;
|
||||
|
@ -650,7 +658,7 @@ void PluginManager::BindRequired( PluginsEnum_t pid )
|
|||
|
||||
if( *(current->Dest) == NULL )
|
||||
{
|
||||
throw Exception::InvalidPluginConfigured( pid, m_info[pid].Filename,
|
||||
throw Exception::PluginLoadError( pid, m_info[pid].Filename,
|
||||
wxLt( "Configured plugin is not a valid PCSX2 plugin, or is for an older unsupported version of PCSX2." ) );
|
||||
}
|
||||
|
||||
|
@ -766,7 +774,7 @@ void PluginManager::Open( PluginsEnum_t pid )
|
|||
case PluginId_DEV9: result = OpenPlugin_DEV9(); break;
|
||||
}
|
||||
if( !result )
|
||||
throw Exception::PluginFailure( tbl_PluginInfo[pid].shortname, wxLt("%s plugin failed to open.") );
|
||||
throw Exception::PluginOpenError( pid );
|
||||
|
||||
m_info[pid].IsOpened = true;
|
||||
}
|
||||
|
@ -829,7 +837,7 @@ void PluginManager::Init()
|
|||
if( m_info[pid].IsInitialized ) continue;
|
||||
m_info[pid].IsInitialized = true;
|
||||
if( 0 != m_info[pid].CommonBindings.Init() )
|
||||
throw Exception::PluginFailure( tbl_PluginInfo[pid].shortname, wxLt( "%s plugin: Initialization Failure" ) );
|
||||
throw Exception::PluginInitError( pid );
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -52,35 +52,57 @@ namespace Exception
|
|||
BaseException::InitBaseEx( msg );
|
||||
PluginId = pid;
|
||||
}
|
||||
};
|
||||
|
||||
class PluginFailure : public virtual RuntimeError
|
||||
{
|
||||
public:
|
||||
wxString plugin_name; // name of the plugin
|
||||
|
||||
public:
|
||||
DEFINE_EXCEPTION_COPYTORS( PluginFailure )
|
||||
|
||||
explicit PluginFailure( const char* plugin, const char* msg="%s plugin encountered a critical error" )
|
||||
{
|
||||
BaseException::InitBaseEx( msg );
|
||||
plugin_name = wxString::FromUTF8( plugin );
|
||||
}
|
||||
|
||||
virtual wxString FormatDiagnosticMessage() const;
|
||||
virtual wxString FormatDisplayMessage() const;
|
||||
};
|
||||
|
||||
class InvalidPluginConfigured : public virtual PluginError, public virtual BadStream
|
||||
// Plugin load errors occur when initially trying to load plugins durign the
|
||||
// creation of a PluginManager object. The error may either be due to non-existence,
|
||||
// corruption, or incompatible versioning.
|
||||
class PluginLoadError : public virtual PluginError, public virtual BadStream
|
||||
{
|
||||
public:
|
||||
DEFINE_EXCEPTION_COPYTORS( InvalidPluginConfigured )
|
||||
DEFINE_EXCEPTION_COPYTORS( PluginLoadError )
|
||||
|
||||
InvalidPluginConfigured( PluginsEnum_t pid, const wxString& objname, const char* eng );
|
||||
PluginLoadError( PluginsEnum_t pid, const wxString& objname, const char* eng );
|
||||
|
||||
InvalidPluginConfigured( PluginsEnum_t pid, const wxString& objname,
|
||||
PluginLoadError( PluginsEnum_t pid, const wxString& objname,
|
||||
const wxString& eng_msg, const wxString& xlt_msg );
|
||||
|
||||
virtual wxString FormatDiagnosticMessage() const;
|
||||
virtual wxString FormatDisplayMessage() const;
|
||||
};
|
||||
|
||||
// Thrown when a plugin fails it's init() callback. The meaning of this error is entirely
|
||||
// dependent on the plugin and, in most cases probably never happens (most plugins do little
|
||||
// more than a couple basic memory reservations during init)
|
||||
class PluginInitError : public virtual PluginError
|
||||
{
|
||||
public:
|
||||
DEFINE_EXCEPTION_COPYTORS( PluginInitError )
|
||||
|
||||
explicit PluginInitError( PluginsEnum_t pid,
|
||||
const char* msg=wxLt("%s plugin failed to initialize. Your system may have insufficient memory or resources needed.") )
|
||||
{
|
||||
BaseException::InitBaseEx( msg );
|
||||
PluginId = pid;
|
||||
}
|
||||
};
|
||||
|
||||
// Plugin failed to open. Typically this is a non-critical error that means the plugin has
|
||||
// not been configured properly by the user, but may also be indicative of a system
|
||||
class PluginOpenError : public virtual PluginError
|
||||
{
|
||||
public:
|
||||
DEFINE_EXCEPTION_COPYTORS( PluginOpenError )
|
||||
|
||||
explicit PluginOpenError( PluginsEnum_t pid,
|
||||
const char* msg=wxLt("%s plugin failed to open. Your computer may have insufficient resources, or incompatible hardware/drivers.") )
|
||||
{
|
||||
BaseException::InitBaseEx( msg );
|
||||
PluginId = pid;
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -35,6 +35,7 @@
|
|||
using namespace R5900;
|
||||
|
||||
FILE *emuLog;
|
||||
wxString emuLogName;
|
||||
|
||||
#ifdef PCSX2_DEVBUILD
|
||||
LogSources varLog;
|
||||
|
|
|
@ -180,6 +180,22 @@ protected:
|
|||
void OnMessageBox( pxMessageBoxEvent& evt );
|
||||
void CleanupMess();
|
||||
void OpenWizardConsole();
|
||||
|
||||
int MainLoop();
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// Override wx default exception handling behavior
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// Just rethrow exceptions in the main loop, so that we can handle them properly in our
|
||||
// custom catch clauses in OnRun(). (ranting note: wtf is the point of this functionality
|
||||
// in wx? Why would anyone ever want a generic catch-all exception handler that *isn't*
|
||||
// the unhandled exception handler? Using this as anything besides a re-throw is terrible
|
||||
// program design and shouldn't even be allowed -- air)
|
||||
bool OnExceptionInMainLoop() { throw; }
|
||||
|
||||
// Just rethrow unhandled exceptions to cause immediate debugger fail.
|
||||
void OnUnhandledException() { throw; }
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
|
|
@ -22,6 +22,7 @@
|
|||
#include "Plugins.h"
|
||||
|
||||
#include <wx/stdpaths.h>
|
||||
#include "DebugTools/Debug.h"
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
// PathDefs Namespace -- contains default values for various pcsx2 path names and locations.
|
||||
|
@ -630,5 +631,21 @@ void AppConfig_ReloadGlobalSettings( bool overwrite )
|
|||
|
||||
g_Conf->Apply();
|
||||
g_Conf->Folders.Logs.Mkdir();
|
||||
}
|
||||
|
||||
wxString newlogname( Path::Combine( g_Conf->Folders.Logs.ToString(), L"emuLog.txt" ) );
|
||||
|
||||
if( emuLog != NULL )
|
||||
{
|
||||
if( emuLogName != newlogname )
|
||||
{
|
||||
fclose( emuLog );
|
||||
emuLog = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
if( emuLog == NULL )
|
||||
{
|
||||
emuLogName = newlogname;
|
||||
emuLog = fopen( emuLogName.ToUTF8().data(), "wb" );
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,167 @@
|
|||
/* Pcsx2 - Pc Ps2 Emulator
|
||||
* Copyright (C) 2002-2009 Pcsx2 Team
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
#include "PrecompiledHeader.h"
|
||||
#include "MainFrame.h"
|
||||
|
||||
#include <wx/zipstrm.h>
|
||||
#include <wx/wfstream.h>
|
||||
|
||||
#include "Resources/EmbeddedImage.h"
|
||||
#include "Resources/BackgroundLogo.h"
|
||||
|
||||
#include "Resources/ConfigIcon_Cpu.h"
|
||||
#include "Resources/ConfigIcon_Video.h"
|
||||
#include "Resources/ConfigIcon_Speedhacks.h"
|
||||
#include "Resources/ConfigIcon_Gamefixes.h"
|
||||
#include "Resources/ConfigIcon_Paths.h"
|
||||
#include "Resources/ConfigIcon_Plugins.h"
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
const wxImage& LoadImageAny(
|
||||
wxImage& dest, bool useTheme, wxFileName& base, const wxChar* filename, IEmbeddedImage& onFail )
|
||||
{
|
||||
if( useTheme )
|
||||
{
|
||||
base.SetName( filename );
|
||||
|
||||
base.SetExt( L"png" );
|
||||
if( base.FileExists() )
|
||||
{
|
||||
if( dest.LoadFile( base.GetFullPath() ) ) return dest;
|
||||
}
|
||||
|
||||
base.SetExt( L"jpg" );
|
||||
if( base.FileExists() )
|
||||
{
|
||||
if( dest.LoadFile( base.GetFullPath() ) ) return dest;
|
||||
}
|
||||
|
||||
base.SetExt( L"bmp" );
|
||||
if( base.FileExists() )
|
||||
{
|
||||
if( dest.LoadFile( base.GetFullPath() ) ) return dest;
|
||||
}
|
||||
}
|
||||
|
||||
return dest = onFail.Get();
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
const wxBitmap& Pcsx2App::GetLogoBitmap()
|
||||
{
|
||||
if( m_Bitmap_Logo != NULL )
|
||||
return *m_Bitmap_Logo;
|
||||
|
||||
wxFileName mess;
|
||||
bool useTheme = (g_Conf->DeskTheme != L"default");
|
||||
|
||||
if( useTheme )
|
||||
{
|
||||
wxDirName theme( PathDefs::GetThemes() + g_Conf->DeskTheme );
|
||||
wxFileName zipped( theme.GetFilename() );
|
||||
|
||||
zipped.SetExt( L"zip" );
|
||||
if( zipped.FileExists() )
|
||||
{
|
||||
// loading theme from zipfile.
|
||||
//wxFileInputStream stream( zipped.ToString() )
|
||||
//wxZipInputStream zstream( stream );
|
||||
|
||||
Console::Error( "Loading themes from zipfile is not supported yet.\nFalling back on default theme." );
|
||||
}
|
||||
|
||||
// Overrides zipfile settings (fix when zipfile support added)
|
||||
mess = theme.ToString();
|
||||
}
|
||||
|
||||
wxImage img;
|
||||
EmbeddedImage<png_BackgroundLogo> temp; // because gcc can't allow non-const temporaries.
|
||||
LoadImageAny( img, useTheme, mess, L"BackgroundLogo", temp );
|
||||
m_Bitmap_Logo = new wxBitmap( img );
|
||||
|
||||
return *m_Bitmap_Logo;
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
wxImageList& Pcsx2App::GetImgList_Config()
|
||||
{
|
||||
if( !m_ConfigImagesAreLoaded )
|
||||
{
|
||||
wxFileName mess;
|
||||
bool useTheme = (g_Conf->DeskTheme != L"default");
|
||||
|
||||
if( useTheme )
|
||||
{
|
||||
wxDirName theme( PathDefs::GetThemes() + g_Conf->DeskTheme );
|
||||
mess = theme.ToString();
|
||||
}
|
||||
|
||||
wxImage img;
|
||||
|
||||
// GCC Specific: wxT() macro is required when using string token pasting. For some reason L
|
||||
// generates syntax errors. >_<
|
||||
|
||||
#undef FancyLoadMacro
|
||||
#define FancyLoadMacro( name ) \
|
||||
{ \
|
||||
EmbeddedImage<png_ConfigIcon_##name> temp( g_Conf->Listbook_ImageSize, g_Conf->Listbook_ImageSize ); \
|
||||
m_ImageId.Config.name = m_ConfigImages.Add( LoadImageAny( \
|
||||
img, useTheme, mess, L"ConfigIcon_" wxT(#name), temp ) \
|
||||
); \
|
||||
}
|
||||
|
||||
FancyLoadMacro( Paths );
|
||||
FancyLoadMacro( Plugins );
|
||||
FancyLoadMacro( Gamefixes );
|
||||
FancyLoadMacro( Speedhacks );
|
||||
FancyLoadMacro( Video );
|
||||
FancyLoadMacro( Cpu );
|
||||
}
|
||||
m_ConfigImagesAreLoaded = true;
|
||||
return m_ConfigImages;
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
wxImageList& Pcsx2App::GetImgList_Toolbars()
|
||||
{
|
||||
if( m_ToolbarImages == NULL )
|
||||
{
|
||||
const int imgSize = g_Conf->Toolbar_ImageSize ? 64 : 32;
|
||||
m_ToolbarImages = new wxImageList( imgSize, imgSize );
|
||||
wxFileName mess;
|
||||
bool useTheme = (g_Conf->DeskTheme != L"default");
|
||||
|
||||
if( useTheme )
|
||||
{
|
||||
wxDirName theme( PathDefs::GetThemes() + g_Conf->DeskTheme );
|
||||
mess = theme.ToString();
|
||||
}
|
||||
|
||||
wxImage img;
|
||||
#undef FancyLoadMacro
|
||||
#define FancyLoadMacro( name ) \
|
||||
{ \
|
||||
EmbeddedImage<png_ToolbarIcon_##name> temp( imgSize, imgSize ); \
|
||||
m_ImageId.Toolbars.name = m_ConfigImages.Add( LoadImageAny( img, useTheme, mess, L"ToolbarIcon" wxT(#name), temp ) ); \
|
||||
}
|
||||
|
||||
}
|
||||
return *m_ToolbarImages;
|
||||
}
|
||||
|
|
@ -314,19 +314,6 @@ void ConsoleLogFrame::ClearColor()
|
|||
|
||||
void ConsoleLogFrame::Write( const wxString& text )
|
||||
{
|
||||
// Many platforms still do not provide thread-safe implementations of
|
||||
// fputs or printf, so they need to be implemented here.
|
||||
// fixme: these really should go in the global message handler but I haven't time to
|
||||
// do that right now.
|
||||
if( emuLog != NULL )
|
||||
fputs( text.ToUTF8().data(), emuLog );
|
||||
|
||||
// Linux has a handy dandy universal console...
|
||||
// [TODO] make this a configurable option? Do we care? :)
|
||||
#ifdef __LINUX__
|
||||
printf( (L"PCSX2 > " + text).ToUTF8().data() );
|
||||
#endif
|
||||
|
||||
// remove selection (WriteText is in fact ReplaceSelection)
|
||||
// TODO : Optimize this to only replace selection if some selection
|
||||
// messages have been received since the last write.
|
||||
|
@ -568,11 +555,38 @@ void ConsoleLogFrame::DoMessage()
|
|||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
//
|
||||
namespace Console
|
||||
{
|
||||
// thread-local console color storage.
|
||||
__threadlocal Colors th_CurrentColor = DefaultConsoleColor;
|
||||
static __threadlocal Colors th_CurrentColor = DefaultConsoleColor;
|
||||
|
||||
static Threading::MutexLock immediate_log_lock;
|
||||
|
||||
// performs immediate thread-safe (mutex locked) logging to disk and to the Linux console.
|
||||
// Many platforms still do not provide thread-safe implementations of fputs or printf, so
|
||||
// they are implemented here using a mutex lock for maximum safety.
|
||||
static void _immediate_logger( const char* src )
|
||||
{
|
||||
ScopedLock locker( immediate_log_lock );
|
||||
|
||||
if( emuLog != NULL )
|
||||
fputs( src, emuLog ); // fputs does not do automatic newlines, so it's ok!
|
||||
|
||||
// Linux has a handy dandy universal console...
|
||||
// [TODO] make this a configurable option? Do we care? :)
|
||||
#ifdef __LINUX__
|
||||
// puts does automatic newlines, which we don't want here
|
||||
fputs( L"PCSX2 > ", stdout );
|
||||
fputs( src, stdout );
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
static void _immediate_logger( const wxString& src )
|
||||
{
|
||||
_immediate_logger( src.ToUTF8().data() );
|
||||
}
|
||||
|
||||
void __fastcall SetTitle( const wxString& title )
|
||||
{
|
||||
|
@ -593,6 +607,8 @@ namespace Console
|
|||
|
||||
bool Newline()
|
||||
{
|
||||
_immediate_logger( "\n" );
|
||||
|
||||
wxCommandEvent evt( wxEVT_LOG_Newline );
|
||||
wxGetApp().ProgramLog_PostEvent( evt );
|
||||
wxGetApp().ProgramLog_CountMsg();
|
||||
|
@ -602,6 +618,8 @@ namespace Console
|
|||
|
||||
bool __fastcall Write( const char* fmt )
|
||||
{
|
||||
_immediate_logger( fmt );
|
||||
|
||||
wxCommandEvent evt( wxEVT_LOG_Write );
|
||||
evt.SetString( wxString::FromAscii( fmt ) );
|
||||
evt.SetExtraLong( th_CurrentColor );
|
||||
|
@ -613,6 +631,8 @@ namespace Console
|
|||
|
||||
bool __fastcall Write( const wxString& fmt )
|
||||
{
|
||||
_immediate_logger( fmt );
|
||||
|
||||
wxCommandEvent evt( wxEVT_LOG_Write );
|
||||
evt.SetString( fmt );
|
||||
evt.SetExtraLong( th_CurrentColor );
|
||||
|
@ -624,11 +644,14 @@ namespace Console
|
|||
|
||||
bool __fastcall WriteLn( const char* fmt )
|
||||
{
|
||||
const wxString fmtline( wxString::FromAscii( fmt ) + L"\n" );
|
||||
_immediate_logger( fmtline );
|
||||
|
||||
// Implementation note: I've duplicated Write+Newline behavior here to avoid polluting
|
||||
// the message pump with lots of erroneous messages (Newlines can be bound into Write message).
|
||||
|
||||
wxCommandEvent evt( wxEVT_LOG_Write );
|
||||
evt.SetString( wxString::FromAscii( fmt ) + L"\n" );
|
||||
evt.SetString( fmtline );
|
||||
evt.SetExtraLong( th_CurrentColor );
|
||||
wxGetApp().ProgramLog_PostEvent( evt );
|
||||
wxGetApp().ProgramLog_CountMsg();
|
||||
|
@ -638,11 +661,14 @@ namespace Console
|
|||
|
||||
bool __fastcall WriteLn( const wxString& fmt )
|
||||
{
|
||||
const wxString fmtline( fmt + L"\n" );
|
||||
_immediate_logger( fmtline );
|
||||
|
||||
// Implementation note: I've duplicated Write+Newline behavior here to avoid polluting
|
||||
// the message pump with lots of erroneous messages (Newlines can be bound into Write message).
|
||||
|
||||
wxCommandEvent evt( wxEVT_LOG_Write );
|
||||
evt.SetString( fmt + L"\n" );
|
||||
evt.SetString( fmtline );
|
||||
evt.SetExtraLong( th_CurrentColor );
|
||||
wxGetApp().ProgramLog_PostEvent( evt );
|
||||
wxGetApp().ProgramLog_CountMsg();
|
||||
|
|
|
@ -98,7 +98,7 @@ namespace HostGui
|
|||
SysSuspend();
|
||||
StateRecovery::MakeGsOnly();
|
||||
|
||||
g_plugins->Close( PluginId_GS );
|
||||
GetPluginManager().Close( PluginId_GS );
|
||||
renderswitch = !renderswitch;
|
||||
|
||||
StateRecovery::Recover();
|
||||
|
|
|
@ -89,6 +89,7 @@ void MainEmuFrame::Menu_RunIso_Click(wxCommandEvent &event)
|
|||
}
|
||||
}
|
||||
|
||||
InitPlugins();
|
||||
SysExecute( new AppEmuThread( elf_file ), CDVDsrc_Iso );
|
||||
}
|
||||
|
||||
|
@ -109,6 +110,7 @@ void MainEmuFrame::Menu_RunWithoutDisc_Click(wxCommandEvent &event)
|
|||
}
|
||||
|
||||
SysEndExecution();
|
||||
InitPlugins();
|
||||
SysExecute( new AppEmuThread(), CDVDsrc_NoDisc );
|
||||
}
|
||||
|
||||
|
|
|
@ -91,10 +91,7 @@ public:
|
|||
m_type = m_GetLibType();
|
||||
}
|
||||
|
||||
// Parameters:
|
||||
// pluginTypeIndex - Value from 1 to 8 which represents the plugin's index.
|
||||
//
|
||||
bool CheckVersion( int pluginTypeIndex ) const
|
||||
bool CheckVersion( PluginsEnum_t pluginTypeIndex ) const
|
||||
{
|
||||
const PluginInfo& info( tbl_PluginInfo[pluginTypeIndex] );
|
||||
if( m_type & info.typemask )
|
||||
|
@ -436,36 +433,37 @@ void Panels::PluginSelectorPanel::EnumThread::Cancel()
|
|||
|
||||
sptr Panels::PluginSelectorPanel::EnumThread::ExecuteTask()
|
||||
{
|
||||
DevCon::WriteLn( "Plugin Enumeration Thread started..." );
|
||||
DevCon::Status( "Plugin Enumeration Thread started..." );
|
||||
|
||||
Sleep( 10 ); // gives the gui thread some time to refresh
|
||||
|
||||
for( int curidx=0; curidx < m_master.FileCount(); ++curidx )
|
||||
{
|
||||
if( m_cancel ) return 0;
|
||||
|
||||
Results[curidx].TypeMask = 0;
|
||||
DbgCon::WriteLn( L"Enumerating Plugin: " + m_master.GetFilename( curidx ) );
|
||||
|
||||
try
|
||||
{
|
||||
PluginEnumerator penum( m_master.GetFilename( curidx ) );
|
||||
EnumeratedPluginInfo& result( Results[curidx] );
|
||||
result.TypeMask = 0;
|
||||
|
||||
PluginEnumerator penum( m_master.GetFilename( curidx ) );
|
||||
|
||||
result.Name = penum.GetName();
|
||||
for( int pidx=0; pidx<NumPluginTypes; ++pidx )
|
||||
for( int pidx=0; pidx<PluginId_Count; ++pidx )
|
||||
{
|
||||
result.TypeMask |= tbl_PluginInfo[pidx].typemask;
|
||||
if( penum.CheckVersion( pidx ) )
|
||||
const PluginsEnum_t pid = (PluginsEnum_t)pidx;
|
||||
result.TypeMask |= tbl_PluginInfo[pid].typemask;
|
||||
if( penum.CheckVersion( pid ) )
|
||||
{
|
||||
result.PassedTest |= tbl_PluginInfo[pidx].typemask;
|
||||
penum.GetVersionString( result.Version[pidx], pidx );
|
||||
result.PassedTest |= tbl_PluginInfo[pid].typemask;
|
||||
penum.GetVersionString( result.Version[pid], pidx );
|
||||
}
|
||||
}
|
||||
}
|
||||
catch( Exception::BadStream& ex )
|
||||
{
|
||||
Console::Status( ex.FormatDiagnosticMessage() );
|
||||
|
||||
}
|
||||
|
||||
pthread_testcancel();
|
||||
|
@ -478,6 +476,6 @@ sptr Panels::PluginSelectorPanel::EnumThread::ExecuteTask()
|
|||
wxCommandEvent done( wxEVT_EnumerationFinished );
|
||||
m_master.GetEventHandler()->AddPendingEvent( done );
|
||||
|
||||
DevCon::WriteLn( "Plugin Enumeration Thread complete!" );
|
||||
DevCon::Status( "Plugin Enumeration Thread complete!" );
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -23,14 +23,11 @@
|
|||
#include "Plugins.h"
|
||||
|
||||
#include "Dialogs/ModalPopups.h"
|
||||
|
||||
#include "Utilities/ScopedPtr.h"
|
||||
|
||||
#include "Resources/EmbeddedImage.h"
|
||||
#include "Resources/BackgroundLogo.h"
|
||||
|
||||
#include <wx/cmdline.h>
|
||||
#include <wx/stdpaths.h>
|
||||
#include <wx/evtloop.h>
|
||||
|
||||
IMPLEMENT_APP(Pcsx2App)
|
||||
|
||||
|
@ -310,6 +307,78 @@ void Pcsx2App::CleanupMess()
|
|||
safe_delete( g_Conf );
|
||||
}
|
||||
|
||||
static int pxRunningEventLoopCount = 0;
|
||||
|
||||
class pxEvtLoop : public wxEventLoop
|
||||
{
|
||||
protected:
|
||||
struct pxRunningEventLoopCounter
|
||||
{
|
||||
pxRunningEventLoopCounter() { pxRunningEventLoopCount++; }
|
||||
~pxRunningEventLoopCounter() { pxRunningEventLoopCount--; }
|
||||
};
|
||||
|
||||
public:
|
||||
virtual int Run()
|
||||
{
|
||||
// event loops are not recursive, you need to create another loop!
|
||||
wxCHECK_MSG( !IsRunning(), -1, _T("can't reenter a message loop") );
|
||||
|
||||
wxEventLoopActivator activate(wx_static_cast(wxEventLoop *, this));
|
||||
|
||||
#if defined(__WXMSW__) && wxUSE_THREADS
|
||||
pxRunningEventLoopCounter evtLoopCounter;
|
||||
#endif // __WXMSW__
|
||||
|
||||
while( true )
|
||||
{
|
||||
try
|
||||
{
|
||||
while( !m_shouldExit )
|
||||
{
|
||||
// give ourselves the possibility to do whatever we want!
|
||||
OnNextIteration();
|
||||
|
||||
while( Pending() )
|
||||
{
|
||||
if( !Dispatch() )
|
||||
{
|
||||
m_shouldExit = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if( wxTheApp )
|
||||
wxTheApp->ProcessIdle();
|
||||
}
|
||||
break;
|
||||
}
|
||||
// ----------------------------------------------------------------------------
|
||||
catch( Exception::PluginError& ex )
|
||||
{
|
||||
}
|
||||
// ----------------------------------------------------------------------------
|
||||
catch( Exception::RuntimeError& ex )
|
||||
{
|
||||
// Runtime errors which have been unhandled should still be safe to recover from,
|
||||
// so lets issue a message to the user and then continue the message pump.
|
||||
|
||||
Console::Error( ex.FormatDiagnosticMessage() );
|
||||
Msgbox::Alert( ex.FormatDisplayMessage() );
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
// This overload performs universal exception handling for specific types of recoverable
|
||||
// errors that can be thrown from a multitude of events.
|
||||
int Pcsx2App::MainLoop()
|
||||
{
|
||||
assert( m_mainLoop == NULL );
|
||||
m_mainLoop = new pxEvtLoop();
|
||||
return m_mainLoop->Run();
|
||||
}
|
||||
|
||||
// Common exit handler which can be called from any event (though really it should
|
||||
// be called only from CloseWindow handlers since that's the more appropriate way
|
||||
// to handle window closures)
|
||||
|
@ -320,6 +389,7 @@ bool Pcsx2App::PrepForExit()
|
|||
|
||||
int Pcsx2App::OnExit()
|
||||
{
|
||||
m_ProgramLogBox = NULL;
|
||||
MemoryCard::Shutdown();
|
||||
|
||||
if( g_Conf != NULL )
|
||||
|
@ -345,146 +415,4 @@ Pcsx2App::~Pcsx2App()
|
|||
CleanupMess();
|
||||
}
|
||||
|
||||
#include <wx/zipstrm.h>
|
||||
#include <wx/wfstream.h>
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
const wxImage& LoadImageAny(
|
||||
wxImage& dest, bool useTheme, wxFileName& base, const wxChar* filename, IEmbeddedImage& onFail )
|
||||
{
|
||||
if( useTheme )
|
||||
{
|
||||
base.SetName( filename );
|
||||
|
||||
base.SetExt( L"png" );
|
||||
if( base.FileExists() )
|
||||
{
|
||||
if( dest.LoadFile( base.GetFullPath() ) ) return dest;
|
||||
}
|
||||
|
||||
base.SetExt( L"jpg" );
|
||||
if( base.FileExists() )
|
||||
{
|
||||
if( dest.LoadFile( base.GetFullPath() ) ) return dest;
|
||||
}
|
||||
|
||||
base.SetExt( L"bmp" );
|
||||
if( base.FileExists() )
|
||||
{
|
||||
if( dest.LoadFile( base.GetFullPath() ) ) return dest;
|
||||
}
|
||||
}
|
||||
|
||||
return dest = onFail.Get();
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
const wxBitmap& Pcsx2App::GetLogoBitmap()
|
||||
{
|
||||
if( m_Bitmap_Logo != NULL )
|
||||
return *m_Bitmap_Logo;
|
||||
|
||||
wxFileName mess;
|
||||
bool useTheme = (g_Conf->DeskTheme != L"default");
|
||||
|
||||
if( useTheme )
|
||||
{
|
||||
wxDirName theme( PathDefs::GetThemes() + g_Conf->DeskTheme );
|
||||
wxFileName zipped( theme.GetFilename() );
|
||||
|
||||
zipped.SetExt( L"zip" );
|
||||
if( zipped.FileExists() )
|
||||
{
|
||||
// loading theme from zipfile.
|
||||
//wxFileInputStream stream( zipped.ToString() )
|
||||
//wxZipInputStream zstream( stream );
|
||||
|
||||
Console::Error( "Loading themes from zipfile is not supported yet.\nFalling back on default theme." );
|
||||
}
|
||||
|
||||
// Overrides zipfile settings (fix when zipfile support added)
|
||||
mess = theme.ToString();
|
||||
}
|
||||
|
||||
wxImage img;
|
||||
EmbeddedImage<png_BackgroundLogo> temp; // because gcc can't allow non-const temporaries.
|
||||
LoadImageAny( img, useTheme, mess, L"BackgroundLogo", temp );
|
||||
m_Bitmap_Logo = new wxBitmap( img );
|
||||
|
||||
return *m_Bitmap_Logo;
|
||||
}
|
||||
|
||||
#include "Resources/ConfigIcon_Cpu.h"
|
||||
#include "Resources/ConfigIcon_Video.h"
|
||||
#include "Resources/ConfigIcon_Speedhacks.h"
|
||||
#include "Resources/ConfigIcon_Gamefixes.h"
|
||||
#include "Resources/ConfigIcon_Paths.h"
|
||||
#include "Resources/ConfigIcon_Plugins.h"
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
wxImageList& Pcsx2App::GetImgList_Config()
|
||||
{
|
||||
if( !m_ConfigImagesAreLoaded )
|
||||
{
|
||||
wxFileName mess;
|
||||
bool useTheme = (g_Conf->DeskTheme != L"default");
|
||||
|
||||
if( useTheme )
|
||||
{
|
||||
wxDirName theme( PathDefs::GetThemes() + g_Conf->DeskTheme );
|
||||
mess = theme.ToString();
|
||||
}
|
||||
|
||||
wxImage img;
|
||||
|
||||
// GCC Specific: wxT() macro is required when using string token pasting. For some reason L
|
||||
// generates syntax errors. >_<
|
||||
|
||||
#undef FancyLoadMacro
|
||||
#define FancyLoadMacro( name ) \
|
||||
{ \
|
||||
EmbeddedImage<png_ConfigIcon_##name> temp( g_Conf->Listbook_ImageSize, g_Conf->Listbook_ImageSize ); \
|
||||
m_ImageId.Config.name = m_ConfigImages.Add( LoadImageAny( \
|
||||
img, useTheme, mess, L"ConfigIcon_" wxT(#name), temp ) \
|
||||
); \
|
||||
}
|
||||
|
||||
FancyLoadMacro( Paths );
|
||||
FancyLoadMacro( Plugins );
|
||||
FancyLoadMacro( Gamefixes );
|
||||
FancyLoadMacro( Speedhacks );
|
||||
FancyLoadMacro( Video );
|
||||
FancyLoadMacro( Cpu );
|
||||
}
|
||||
m_ConfigImagesAreLoaded = true;
|
||||
return m_ConfigImages;
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
wxImageList& Pcsx2App::GetImgList_Toolbars()
|
||||
{
|
||||
if( m_ToolbarImages == NULL )
|
||||
{
|
||||
const int imgSize = g_Conf->Toolbar_ImageSize ? 64 : 32;
|
||||
m_ToolbarImages = new wxImageList( imgSize, imgSize );
|
||||
wxFileName mess;
|
||||
bool useTheme = (g_Conf->DeskTheme != L"default");
|
||||
|
||||
if( useTheme )
|
||||
{
|
||||
wxDirName theme( PathDefs::GetThemes() + g_Conf->DeskTheme );
|
||||
mess = theme.ToString();
|
||||
}
|
||||
|
||||
wxImage img;
|
||||
#undef FancyLoadMacro
|
||||
#define FancyLoadMacro( name ) \
|
||||
{ \
|
||||
EmbeddedImage<png_ToolbarIcon_##name> temp( imgSize, imgSize ); \
|
||||
m_ImageId.Toolbars.name = m_ConfigImages.Add( LoadImageAny( img, useTheme, mess, L"ToolbarIcon" wxT(#name), temp ) ); \
|
||||
}
|
||||
|
||||
}
|
||||
return *m_ToolbarImages;
|
||||
}
|
||||
|
||||
|
|
|
@ -1914,6 +1914,10 @@
|
|||
RelativePath="..\..\gui\AppConfig.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\gui\AppRes.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\gui\CheckedStaticBox.cpp"
|
||||
>
|
||||
|
|
Loading…
Reference in New Issue