Commit Graph

1430 Commits

Author SHA1 Message Date
Jordan Woyak c07b8a6e37 Fix more of what I broke. 2013-03-03 17:08:41 -06:00
Jordan Woyak aeb4fc9846 Fix what I broke. 2013-03-03 02:12:24 -06:00
Jordan Woyak 6c8adf6130 Eliminate the wstring game name.
Some cleanup throughout related code. (try to make logic in ISOFile understandable by a human)
Encode strings in UTF-8 rather than somehow trying to determine the encoding in the GUI code.

Non-windows OSes temporarily broken.
2013-03-02 20:00:36 -06:00
Jordan Woyak 2b1af36900 Merge branch 'master' into windows-unicode 2013-03-02 15:33:32 -06:00
Jordan Woyak 2356e5c0e7 Eliminate some baseless restrictions in PointerWrap, mainly vector<string> not working. 2013-03-02 03:32:30 -06:00
Jordan Woyak b0630790c1 It's 2013! Why can't I use C++11 yet!? 2013-02-28 19:42:29 -06:00
Jordan Woyak dea1e2827d Open std::fstream in a unicode-safe manner. 2013-02-28 19:33:39 -06:00
NeoBrainX 1c9860246c Build fixes for everyone! 2013-03-01 01:14:10 +01:00
NeoBrainX 7682ed22c6 Merge branch 'master' into perfqueries.
Conflicts:
	Source/Core/VideoCommon/Src/VideoConfig.h
	Source/Core/VideoCommon/VideoCommon.vcxproj.filters
	Source/Plugins/Plugin_VideoDX11/Src/VertexManager.cpp
	Source/Plugins/Plugin_VideoSoftware/Src/Rasterizer.cpp
	Source/Plugins/Plugin_VideoSoftware/Src/Tev.cpp
2013-03-01 01:07:34 +01:00
Pierre Bourdon 07539b9a3f Fix a StringUtil regression from the arm-noglsl merge
Fixes issue 6048. Thanks to Starscream for locating the regression.
2013-02-28 13:12:35 +01:00
Jordan Woyak e82d976d2f Buildfix for non-legacy OSes. 2013-02-27 20:55:19 -06:00
Jordan Woyak 65683ebc64 Hopefully fix all filename handling to support Unicode. 2013-02-27 20:03:06 -06:00
Jordan Woyak 69f7671ee8 Fix "Common" to build with "Unicode" project setting. 2013-02-27 19:19:38 -06:00
Jordan Woyak 0ea458b4dc Add functions for converting between UTF-8/16. 2013-02-27 18:00:42 -06:00
Ryan Houdek f1d727cf13 Merge latest ArmEmitter changes from ppsspp while we're at it. 2013-02-27 11:53:24 -06:00
Ryan Houdek 8c779bb242 Ah. I blame vim on this typo entirely. 2013-02-27 10:26:32 -06:00
Ryan Houdek 717b976875 ARM Support without GLSL 2013-02-26 13:49:00 -06:00
degasus 4883fa268f Split VideoBackend::Cleanup from Shutdown.
First is called from ogl/d3d thread, second is called from emulation thread (x11...)
2013-02-26 16:42:32 +01:00
degasus 90ff648d00 shader cache based by git revision 2013-02-26 10:48:19 +01:00
Jordan Woyak bd14ad5300 Merge branch 'master' into vertex-loader-cleanup 2013-02-25 17:55:44 -06:00
Jordan Woyak 46adbfa9ed Merge branch 'real-wiimote-scanning' 2013-02-25 17:33:34 -06:00
Matthew Parlane c30b8c9eae Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_FileIO.cpp
2013-02-23 17:02:58 +13:00
Jordan Woyak 6a13a4e5ed Add template "swap" function to CommonFuncs. 2013-02-20 20:20:53 -06:00
Jordan Woyak e9232280c4 Fix OSX! 2013-02-20 17:35:41 -06:00
Jordan Woyak f3e91bc10d Hopefully kill a stupid warning on Windows. 2013-02-20 17:30:34 -06:00
degasus a629dea4dc Merge branch 'master' into GLSL-master
Conflicts:
	CMakeLists.txt
	Source/Core/DolphinWX/Dolphin.vcxproj
	Source/Core/DolphinWX/Src/GLInterface/WX.cpp
	Source/Core/DolphinWX/Src/GLInterface/WX.h
	Source/Core/VideoCommon/Src/TextureCacheBase.cpp
	Source/Core/VideoCommon/Src/TextureCacheBase.h
	Source/Plugins/Plugin_VideoDX11/Src/TextureCache.cpp
	Source/Plugins/Plugin_VideoDX11/Src/TextureCache.h
	Source/Plugins/Plugin_VideoDX9/Src/TextureCache.cpp
	Source/Plugins/Plugin_VideoDX9/Src/TextureCache.h
	Source/Plugins/Plugin_VideoOGL/Src/Render.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureCache.h
	Source/Plugins/Plugin_VideoSoftware/Src/SWmain.cpp

damn mipmap_fixes ...
2013-02-18 18:49:20 +01:00
Jordan Woyak fa9aafeed8 Some cleanup of CWII_IPC_HLE_Device_FileIO:
The real file was never kept open for longer than a single operation so there was no point in dealing with it in DoState.
Saving the real path in the savestate was also probably a bad idea. Savestates should be a bit more portable now.
2013-02-17 13:37:01 -06:00
Jordan Woyak 3330842505 Let's not CreateDir an empty string every time CreateFullPath is used, logging an error every time. 2013-02-17 01:33:22 -06:00
Jordan Woyak 206fdde933 Remove the core count from the cpu info OSD message. It was often wrong and not rather important. 2013-02-16 23:48:20 -06:00
Jordan Woyak 53aec6c476 Fix OGL perf queries and make them not slow! 2013-02-16 19:30:24 -06:00
Matthew Parlane 3d480c088f Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp
2013-02-09 20:13:11 +13:00
Jordan Woyak 8ce58759e3 Remove some old nonsense. 2013-02-07 23:52:50 -06:00
Glenn Rice f7fa33f2d6 Fix remaining compiler warnings. 2013-01-31 15:29:29 -06:00
Matthew Parlane bca2cac640 keys.bin support added.
Remove hollywood id from config.
Tidy HLE_Device_es.h (maybe)
Added const params to crypto stuff.
2013-01-29 01:18:53 +13:00
Matthew Parlane 2dd077028f Merge branch 'master' into wii-network 2013-01-28 22:00:47 +13:00
Matthew Parlane ca4ea817e0 Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Common/Src/CommonPaths.h
	Source/Core/Common/Src/FileUtil.h
	Source/Core/Core/Src/HLE/HLE.cpp
	Source/Core/Core/Src/PowerPC/Interpreter/Interpreter.cpp
2013-01-26 21:46:12 +13:00
Matthew Parlane a354f47f98 Fixes for POLL on Linux and Mac. 2013-01-26 18:22:58 +13:00
degasus d60cc373d1 Revert "Revert 30dd9c2 e9d00bf db5f4c8 and bff0fae"
This reverts commit d0301ca89d.

Conflicts:
	.gitignore
2013-01-24 16:11:07 +01:00
lioncash 2db0c4270e Fix a potential memory leak on non-windows systems.
Also added a FIXME to BPStructs.cpp and BPMemLoader.cpp
2013-01-24 08:21:08 -05:00
Rachel Bryk 196c2867ad Move DSP settings to dolphin.ini 2013-01-16 20:17:44 -05:00
Jordan Woyak 3cb4300439 Merge branch 'external-theme' 2013-01-16 19:00:19 -06:00
skidau 0a4272c96b Merge branch 'OpenAL'
* OpenAL:
  Changed SoundTouch to use float samples, allowing SSE to be used. Made the DPL2 decoder disabled by default. Re-added the audio hack used by the Accurate VBeam emulation option.
  Added a latency setting to the audio settings. Removed the Sample Rate setting.  It is now hardcoded to 48000hz (accurate audio timing).
  Skipped timestretching if the emulator is running below 10% speed to prevent buffer overflows.
  Removed the synchronisation between the CPU thread and the audio thread. Added code to detect and resume from buffer underruns. Disabled the ability to change the DPL2 option after the game has started. Fixed a memory leak that occurred in the DPL2 decoder. Fixed the OSX build.
  Build fix
  Added a Dolby Pro Logic II (DPL2) decoder in the OpenAL backend.  DPL2 audio is decoded to 5.1.  Code adapted from ffdshow. Added an option in the DSP settings to disable the DPL2 decoder in case Dolphin incorrectly detects a 5.1 audio system. Updated the OpenAL files to OpenAL Soft 1.15.1 in the Windows build.
  Removed the system timing hack which was activated when the Accurate VBeam option was enabled.
  Fixed the include directories in Audio Common for the Windows 32bit build.
  Fixed the include directories in Audio Common for the Windows build.
  Messed up the static include line
  Fix include paths and compiling in Linux. Externals soundtouch is 1.7.1, while Ubuntu 12.10 is 1.6.x. Externals soundtouch is compiled with integer samples, while ubuntu is compiled with float samples. Float samples is probably the more common route. If you're going to use soundtouch, you should probably use SAMPLETYPE instead of explicitly choosing short. This probably breaks the windows build since its includes aren't setup.
  OSX: typedef signed char BOOL
  OSX build fix
  Build fix
  Added audio time stretching by using the SoundTouch library.
  Implemented correct audio timing.
  OpenAL for Windows initial commit
2013-01-15 22:40:12 +11:00
Jordan Woyak a9ff3709e4 Attempt to make file searching stuff less crappy on Linux.
Supports a * search now.
2013-01-13 15:32:26 -06:00
Jordan Woyak 6f7b11b9be themes directory stuffs 2013-01-13 14:12:19 -06:00
Matthew Parlane 6e58c50065 Merge branch 'master' into wii-network 2013-01-13 15:13:56 +13:00
Lioncash dfc0c4b08d Fix two signed/unsigned mismatch warnings.
Also tidied up SDCardUtil - made the variables make more sense (typewise)
2013-01-11 19:38:04 -05:00
Matthew Parlane 465df943a5 Merge branch 'master' into wii-network 2013-01-12 00:01:27 +13:00
Matthew Parlane 9754fda516 Merge branch 'wii-usb' into temp merge branch
Conflicts:
	Source/Core/Common/Src/Log.h
	Source/Core/Core/Core.vcxproj
	Source/Core/Core/Core.vcxproj.filters
	Source/VSProps/Dolphin.Win32.props
	Source/VSProps/Dolphin.x64.props
2013-01-11 23:07:12 +13:00
Jordan Woyak 51a1d4cde7 Revert "Very tiny cleanup of ChunkFile.h."
int/size_t change without updating the rev# caused crash on Dolphin start

This reverts commit cf942450e0.
2013-01-10 17:41:12 -06:00
lioncash cf942450e0 Very tiny cleanup of ChunkFile.h.
Also changed the size parameter from DoVoid to size_t. As far as I know, that should never be negative.

Also changed the the count parameter of DoArray to size_t, this also should never be negative.

Got rid of some typecasts.
2013-01-10 17:38:38 -05:00
Jordan Woyak 4f4aa4860d Fix a currently unused unique_lock function. Thanks to Lioncash. 2013-01-08 16:50:09 -06:00
Jordan Woyak baa29f571c Fix incorrect iterator usage in BreakPoints::Clear 2013-01-08 15:02:50 -06:00
NeoBrainX 4925a28f94 PixelShaderGen: Shader uid maintainance 2013-01-08 18:56:01 +01:00
NeoBrainX b06f30f845 Remove the per pixel depth option.
Depth calculations are always done in the pixel shader now.

Due to the unpredictability of our zcomploc hacks this commit probably changes the behavior of some games which use zcomploc.
2013-01-08 18:16:48 +01:00
NeoBrainX 876eee5e60 PixelShaderGen: Don't disable depth texture emulation if z writing is disabled (this is what VideoSoftware is doing). 2013-01-08 18:16:48 +01:00
Matthew Parlane e8624cc0f2 Merge branch 'gdbstub' into wii-network
Conflicts:
	Source/Core/Core/Src/ConfigManager.cpp
2013-01-08 21:21:05 +13:00
Matthew Parlane 5b96fb766f Merge branch 'master' into wii-network 2013-01-08 21:18:48 +13:00
Matthew Parlane 0ec7ef4b99 Merge branch 'master' into gdbstub 2013-01-08 20:27:34 +13:00
Ryan Houdek d0301ca89d Revert 30dd9c2 e9d00bf db5f4c8 and bff0fae 2013-01-07 13:47:34 -06:00
skidau 6df1dacca8 OpenAL for Windows initial commit 2013-01-07 12:16:04 +11:00
Matthew Parlane b7fd1225ba Started gdb stub support. 2013-01-06 23:28:27 +13:00
Matthew Parlane 67d0e66af4 Add generate id support.
Add hollywood id to config file.
SSL and WC24 have their own logs now.
2013-01-04 22:36:44 +13:00
Glenn Rice 9b51c99c6b Make sure the null character is not included in the string. 2013-01-03 19:49:19 -06:00
Glenn Rice 12a606501c Fix the name and description truncation issue in a cleaner way. 2013-01-03 19:21:20 -06:00
Glenn Rice 3da05af30a Fix truncated names and descriptions in the game list on linux. 2013-01-03 10:35:07 -06:00
Matthew Parlane e0c9a1fd09 Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Common/Src/CommonPaths.h
	Source/Core/Core/CMakeLists.txt
	Source/Core/Core/Src/Boot/Boot_BS2Emu.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net.cpp
2013-01-01 23:28:46 +13:00
Matthew Parlane d3f199273b Fix warning level... someone let me commit this to master ;D 2013-01-01 19:23:45 +13:00
Matthew Parlane 86acde92e0 Merge branch 'master' into wii-usb 2012-12-30 17:09:35 +13:00
Matthew Parlane 539bf405f2 In memory of calc84.
http://dolphin-emu.org
2012-12-30 16:31:38 +13:00
Matthew Parlane 13bd235c11 Merge branch 'master' into wii-usb 2012-12-29 17:47:52 +13:00
Ryan Houdek 225d29f3f6 Fix this annoying warning in ChunkFile.h 2012-12-27 23:43:59 -06:00
rog 94116bf89c Always use the right user dir on windows. 2012-12-26 19:55:45 -05:00
Ryan Houdek 67c1c6b062 Merge branch 'GLES-software' 2012-12-26 12:54:58 -06:00
Ryan Houdek 01953ff64a Rename the interface files and hopefully fix OSX building. 2012-12-25 19:08:24 -06:00
degasus bff0faea2d Merge branch 'immediate-removal'
Conflicts:
	Source/Plugins/Plugin_VideoOGL/Src/Render.cpp
2012-12-25 12:39:00 +01:00
NeoBrainX e3e14af0dd Revert "VertexShaderGen: Fix a shader compilation error.". I'm an idiot :p
This reverts commit 4d868705fd.
2012-12-24 21:29:24 +01:00
NeoBrainX 4d868705fd VertexShaderGen: Fix a shader compilation error. 2012-12-24 19:50:16 +01:00
degasus 78ff8a769c Merge branch 'osx-savegame-fix' 2012-12-24 13:30:59 +01:00
Matthew Parlane f6418bd093 Merge branch 'master' into wii-usb 2012-12-24 12:58:15 +13:00
Matthew Parlane 59ec1fe180 Fix some random warnings. 2012-12-24 07:37:50 +13:00
degasus bd0abb3d2f revert last commit, add CheckInvalidState to VideoBackend 2012-12-23 13:32:23 +01:00
Matthew Parlane a8ddc3e069 Function definition was not updated. 2012-12-24 00:00:25 +13:00
Ryan Houdek 2db4549174 Fix a memory leak based on Lioncash's patches. 2012-12-18 23:35:28 -06:00
Ryan Houdek b78f5debe6 Initial push of GLES and GLUtil file breakup. 2012-12-17 14:54:20 -06:00
LPFaint99 351979795c revert changes to banner background color 2012-12-16 15:29:25 -08:00
Ryan Houdek 3b559d89ec If the HOME environment variable isn't set, fall back on to PWD. Closes 5584. 2012-12-14 11:47:12 -06:00
Ryan Houdek 532fdada96 Adds the Wii Korean settings file. It was handled in the wii-network branch in rev c42a6f156e. Master handles the settings files differently. Until wii-network merges in to master, this closes issue 5642. 2012-12-14 11:37:26 -06:00
degasus d0c4332d99 don't update vbo, if there are no changes in Renderer::Swap
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:13 -06:00
Glenn Rice e85438cba0 Clean up gcc/g++ compiler warnings that have accumulated. 2012-12-10 00:40:28 -06:00
rog 3d9712a99e Remove more unused code. 2012-11-26 03:48:04 -05:00
rog 97f5b1665f what is this even... 2012-11-26 02:11:52 -05:00
Matthew Parlane d8b879a4ee Movd back to libusb for full support on windows 2012-11-15 01:09:25 +13:00
Matthew Parlane 0caf693d1c Merge branch 'master' into wii-usb 2012-11-12 19:19:05 +13:00
sulokuTDCmago d032c40a58 - Added a new wilcard for importing savegames, which basically shows all saves (gci, gcs and sav). This is set as default (I really got frustrated of having to change the type every single time when making tests for GCMM, and I think it makes more sense at user level to just show all saves regardless the format)
- In icon retrieving I removed the "format check" as it shouldn't really matter to have mixed icon formats. Also removed the "Time splitters hack" as there's no reason for it since we are only checking the last 3 bits and I'm pretty sure having bits 1 and 2 set is the same as having them unset.
- Icon retrieving uses AnimSpeed as stop signal (every icon must have an speed set, the first speed that is 0 means there are no more icons)
- Also, in icon retrieving I added support for "blank frames"(Luigi's Mansion and Pikmin that I know of). With this the base for icon animation is complete.
- Fixed PSOIII savegame patch which was wrong before.

Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-10-29 21:02:59 -07:00
Sonicadvance1 5dd49edaec Badaboom. Add in Memory include to CDUtils.cpp 2012-10-30 02:45:42 +00:00
Sonicadvance1 8fed3b76c8 If setting videobackend back to null strings, Just set it to the front of the list. Fixes loading game specific INI files that don't load back the "default" video backend which is nothing. 2012-09-25 00:47:37 +00:00
Ryan Houdek b4ae200d0d This changes a mmap in MemArena so you don't need 786MB of memory free to actually allocate the 1GB memory space in Linux 32bit. I was also running in to this issue in my development. Kudos to plbl4ster to actually taking the time to research this. Closes issue 5625. 2012-09-23 10:08:13 -05:00
Pierre Bourdon 90af798d3d Partially revert be200074e9 for OS X systems
/dev/shm is not a tmpfs mountpoint on that operating system. Use /tmp but keep
the unlinking to avoid useless disk IO.
2012-08-25 03:30:37 +02:00
Ryan Houdek be200074e9 [Linux] Change from using /tmp to /dev/shm in MemArena so we don't cause any disk IO, also unlink file while it is open to allow multiple instances running. This was discussed months ago, but was never implemented for whatever reason. 2012-08-22 23:39:50 -05:00
Pierre Bourdon 54fc4029dd Use do { ... } while (0) for the *_LOG macros
Without this patch, such code would not compile:

if (cond)
    WARN_LOG(FOO, "msg");
else
    WARN_LOG(FOO, "msg2");
2012-08-20 13:12:49 +02:00
NeoBrainX 08a9c66037 Revert the recent zcomploc changes including the Graphic_Fixes merge.
Reason:
- It's wrong, zcomploc can't be emulated perfectly in HW backends without severely impacting performance.
- It provides virtually no advantages over the previous hack while introducing lots of code.
- There is a better alternative: If people insist on having some sort of valid zcomploc emulation, I suggest rendering each primitive separately while using a _clean_ dual-pass approach to emulate zcomploc.

This reverts commit 0efd4e5c29.
This reverts commit b4ec836aca.
This reverts commit bb4c9e2205.
This reverts commit 146b02615c.
2012-08-10 20:12:02 +02:00
sktsqrl 8dd11bd1c0 fixes issue 5507 2012-07-11 20:54:50 -07:00
Pierre Bourdon e550623b11 Added a button to dump the FakeVMEM from the memory debugger if the game uses it 2012-06-19 13:51:29 +02:00
Pierre Bourdon 988bd53b5f Support ANSI color codes in the console logger for Linux/Mac 2012-06-19 12:11:15 +02:00
skidau b0d271db3c Changed MOVDDUP to use MOVSD on non-SSE3 CPU's.
Added DMA wait time under DSP HLE mode.

Fixes Knockout Kings 2003.
2012-06-02 10:06:47 +10:00
Pierre Bourdon 1efabea9b4 Fix compilation errors with g++4.7 2012-05-26 08:09:50 +02:00
skidau 146b02615c Merge rodolfoosvaldobogado's zcomploc code (Graphic_Fixes branch) 2012-05-26 13:47:07 +10:00
nitsuja 99b202fd2e savestate vertexmanager (base) since it affects VertexLoader::RunVertices which affects g_pVideoData 2012-05-26 13:18:08 +10:00
nitsuja a81631b58e made savestates synchronous and immediate. this allows saving or loading while the emulator is paused, fixes issues where savestate hotkeys would get ignored if pressed too close together, might speed up savestates in some cases, and hopefully makes savestates more stable too.
the intent is to replace the haphazard scheduling and finger-crossing associated with saving/loading with the correct and minimal necessary wait for each thread to reach a known safe location before commencing the savestate operation, and for any already-paused components to not need to be resumed to do so.
2012-05-26 13:09:38 +10:00
nitsuja 152351d96c implement PointerWrap::Do(std::map<unsigned int, T>) 2012-05-26 12:59:07 +10:00
nitsuja aa674a65f1 implement PointerWrap::DoLinkedList and use it to simplify saving CoreTiming events 2012-05-26 12:59:06 +10:00
skidau a54e72640f Merge branch 'misc-speedups'
* misc-speedups:
  fixed and reenabled and slightly optimized the JIT version of fcmpo/fcmpu.
  slightly more precise speed percent display (this is really minor)
  a small thread synchronization speedup for dual core mode. it's most noticeable in games where the CPU is running behind compared to the GPU.

Conflicts:
	Source/Core/Core/Src/PowerPC/Jit64/Jit.cpp

The Fifo.cpp changes from rdaefb3b550e2 was not merged as there was no performance benefit.
2012-05-26 12:35:08 +10:00
Pierre Bourdon fdff4cb1ff Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_FileIO.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp
	Source/VSProps/Dolphin.Win32.props
	Source/VSProps/Dolphin.x64.props
2012-05-16 09:27:37 +02:00
Shawn Hoffman 26521aa66a force VolumeDirectory to align files to 32KB (only streaming audio files really need to be aligned...) 2012-04-23 00:50:44 -07:00
Matthew Parlane 0fc390b552 Modify state.dat before launching wads. Fixes Liight, maybe others. If in doubt, install the wad to the nand. 2012-04-21 16:21:13 +12:00
Jordan Woyak 722480cb2e Fix compilation with g++ 4.7 and some warnings. Fixes issue 5347. 2012-04-07 15:45:32 -05:00
Matthew Parlane 9bf67d4bb1 Implemented /dev/usb/hid as libusb, but this will not work on mac. Code started for using hidapi instead. 2012-04-04 19:53:05 +12:00
rodolfoosvaldobogado 5650b3b5f6 more fixes. take in account when depth textures are used and alpha test fails :)( i really forgot that). 2012-04-03 15:08:58 -03:00
rodolfoosvaldobogado 4fafbd0700 Fix for my last commit thanks to Lolaker for pointing the error 2012-04-03 09:56:11 -03:00
rodolfoosvaldobogado 6a446efd5f Second Stage: re implement zcomplock and correct all the logic error in PixelShaderGen.cpp. i disable fastzcomlock for the moment to avoid confusions.
please test for regressions
2012-04-03 00:08:36 -03:00
NeoBrainX 460610ea0e Revert Rodolfo's recent zcomploc commits until they actually work correctly.
This reverts commit 402006a83a.
This reverts commit 48d8d71391.
This reverts commit 450dcc9d2c.
2012-03-30 01:57:53 +02:00
rodolfoosvaldobogado 402006a83a more fixes to zcomplock and opengl implementation 2012-03-29 18:26:58 -03:00
Shawn Hoffman 2ee5e5cebc Merge branch 'scons-removal' 2012-03-28 00:02:04 -07:00
rodolfoosvaldobogado 450dcc9d2c As requested, this is my implementation of zcomploc using a multi-pass algorithm. My apologize to the others devs for committing in the main branch but is the only way to get this tested as soon as possible.
please test for regressions, speed and for other issues fixed, as a example, the black color in water splash in super mario galaxy are fixed with this rev.
please as soon as yo find a bug let me know.
2012-03-27 15:44:58 -03:00
Shawn Hoffman d15740daf1 Merge branch 'wxw3-update' 2012-03-25 12:27:38 -07:00
rodolfoosvaldobogado 9ed83765e6 long time no commits :)
a little code cleaning to avoid duplicated execution of AlphaPreTest and a little correction to some comments from the previous commits.
this change must behave exactly like last revision, if something is broken please let me know
2012-03-25 00:01:47 -03:00
Pierre Bourdon c662b8ee2f Bump the shader cache version 2012-03-24 20:46:40 +01:00
NeoBrainX 7a1744575d D3D9: Fix texel to pixel mapping when sampling textures properly. 2012-03-24 17:23:03 +01:00
NeoBrainX fee98b426b Revert r41bcf657f89d, r3a9fed0ba285, r9adc119e3c2f and re58692653afd (all of them are wrong). 2012-03-24 15:58:44 +01:00
Shawn Hoffman 36f3962551 small fix for last commit - didn't notice that was an #elif instead of #if 2012-03-22 18:57:30 -07:00
Shawn Hoffman 56b1373baf Remove scons-related files 2012-03-25 12:55:02 -07:00
Shawn Hoffman f7423a0a4f Merge branch 'master' into wxw3-update
Conflicts:
	Source/Core/DolphinWX/Src/LogWindow.cpp
2012-03-22 17:57:38 -07:00
skidau a60a0825a3 Merged 'FifoBusy' branch. Thanks
to marcosvitali.

Added an external exception check when the CPU writes to the FIFO.  This allows
the CPU time to service FIFO overflows.  Fixes random hangs caused by FIFO
overflows and desyncs like in "The Last Story" and "Battalion Wars 2".  Thanks
to marcosvitali for the research.

Added some code to unlink invalidated blocks so that the recompiled block can be
linked (speed-up).

This release still fixed the hangs produced by fifo overflow without sacrifice
performance. For example you can test Tutorial moves at the beginning of The last history now
is fluid 30/60.

Fixed possibles random hangs in DC mode.
Fixed hangs in DC mode in (Simpsons, Monkey Island, Pokemon XD, etc)
Implemented accurate management of Pixel Engine Interrupts.  Now the GPU loop
is stopped when a PE Interrupt needs to be managed and resumed when Pixel Engine
finish.

Fixed Metroid Prime 3 and 2 desync. And other games with desync because of
FIFO Reset. That happens because  FIFO_RW_DISTANCE_HI must be written first, for checking
fifo.CPReadWriteDistance == 0, so some fifo resets was not managed in the right
way.

Fixed Super Monkey Ball in some cases when the game write the
WriteReadDistance need to be safe like the SafeCPRead.

Improved the CheckException for the GatherPipe writes in JIT, now only the
External Exceptions are processed.

Fixed definitely Pokemon XD in dual core mode. This game is doing something
not allowed. It attach to CPU the same fifo attached to the GPU in multibuffer
mode. I added a check to prevent overwrite the GPU FIFO with the CPU FIFO. If
the game do that on breakpoint the solution can fail.

Fixed ReadWriteDistance calc when CPRead > CPWrite.

Added Token and Finish cause to GP Jit checking.

Additional cleanup in CommandProcessor.



Fixes issue 5209
Fixes issue 5055
Fixes issue 4889
Fixes issue 4061
Fixes issue 4010
Fixes issue 3902
2012-03-20 19:37:25 +11:00
Shawn Hoffman 483d15a9c3 fix Common lib re-linking all the time
rename wxBase28 project to wxWidgets
2012-03-18 05:47:55 -07:00
skidau cfbcaa2cc6 Linux build fix 2012-03-18 23:37:38 +11:00
skidau 8ed6ea3b07 Sped up the Dolphin debugger in JIT mode by splitting a block only while stepping or when it contains a breakpoint. The block is invalidated when a breakpoint is set or cleared.
Fixed a bug in the JitCache where the JIT icache was not being invalidated when a block containing the instruction was destroyed.
2012-03-15 21:48:19 +11:00
marcosvitali b0f75f17ae This release still fixed the hangs produced by fifo overflow without sacrifice performance.
For example you can test Tutorial moves at the beginning of The last history now is fluid 30/60.
Shuffle2: I've delete the hacky line, I think is not necessary anymore. Additional some clean in CommandProcessor.
Please test The Last Story and others games affected in the previous commits and give me a feedback.
2012-03-05 02:40:10 -03:00
Henrik Rydgard f5d4fe0bfe Fix some minor bugs pointed out by PVS Studio (thanks!) 2012-03-03 20:07:20 +01:00
Shawn Hoffman 6eb2cb2666 Merge branch 'master' into wii-network 2012-02-27 22:36:41 -08:00
Jordan Woyak ee09def802 Merge branch 'cpp11' 2012-02-28 00:28:13 -06:00
Jordan Woyak 38823b6371 Add comment here so people know what's up. 2012-02-28 00:27:16 -06:00
NeoBrainX c3293b1a1c Improvement to revision b8bef29bcc .. :P 2012-02-25 10:59:00 +01:00
skidau b8bef29bcc Fixed a divide by zero error in the hash functions 2012-02-25 20:36:49 +11:00
Jordan Woyak 8a8dc77ef1 enable c++11 compilation in cmakelists 2012-02-24 14:19:24 -06:00
Jordan Woyak f15aeb26b3 Use an auto typed variable in IniFile.cpp 2012-02-24 19:20:17 -06:00
NeoBrainX 3a9fed0ba2 PixelShaderGen: Fix a bug introduced in revision 9adc119e3c.
D3D11: Fix shader constant mapping.
2012-02-21 12:51:41 +01:00
NeoBrainX 9adc119e3c PixelShaderGen: For custom textures and scaled EFB copies, use correct texel to pixel mapping when sampling textures
(D3D9 only)

This is basically the same as revision e58692653a, just for scaled textures and with a LOT more work...
2012-02-20 20:32:08 +01:00
NeoBrainX e58692653a PixelShaderGen: Use correct texel to pixel mapping when sampling textures
(D3D9 only)

Fixes issue 2068.
Fixes issue 5158.
2012-02-17 17:09:17 +01:00
Shawn Hoffman bad1c7e67a fixup net/ncd/manage 2012-02-09 23:37:50 -08:00
Shawn Hoffman ac0883044e move SettingsHandler to Common lib 2012-02-09 21:04:07 -08:00
skidau 25eae39b7c Rearranged the SSE detection. Patch by lordlyhobo.
Fixes issue 5172.
2012-02-06 20:51:24 +11:00
LPFaint99 a0d6d68243 sysconf SetArayData use the minimum of the buffersize or the dataLength 2012-02-01 00:04:18 -08:00
calc84maniac 79ca43226c Added SHRD/SHLD x86 emitters, further optimized srawx 2012-01-09 00:10:13 -05:00
nitsuja 31ff1907a4 added an option to log to the attached Windows debugger (so e.g. NOTICE_LOG messages can show up in Visual Studio's output window) 2012-01-07 23:04:18 -08:00
nitsuja 9ab69febe5 fix for stack corruption caused by certain DSP LLE JIT ABI calls.
if you were getting crashes or freezes as a result of using the "DSP LLE on Thread" option, this might fix that.
2012-01-07 20:46:41 -08:00
nitsuja daefb3b550 a small thread synchronization speedup for dual core mode.
it's most noticeable in games where the CPU is running behind compared to the GPU.
2012-01-07 20:22:48 -08:00
calc84maniac 5a15d58964 Added emitters for BT/BTR/BTS/BTC x86 instructions, optimized extended arithmetic PowerPC instructions 2012-01-05 22:36:27 -05:00
nitsuja 39613a95a8 initialize the uninitialized 2012-01-04 01:36:09 -08:00
nitsuja 81a1efab8e fixed an issue where the CPU sometimes single-steps an extra time after pausing 2012-01-04 01:33:38 -08:00
skidau b9547a07f5 Updated the Gecko code handler to the latest version from Gecko OS 1.9.3.1.
Added a check to ensure that the number of codes fits in memory (maximum 231 codes).
Store a copy of codehandler.bin in the Sys directory.
2012-01-03 01:24:17 -05:00
skidau 69b2d4ddc1 Changed the Gecko code handling to the native code handler. This provides full compatibility with all Gecko codes.
To use the native code handler, place the kenobiwii.bin file into the Sys directory.  Dolphin will silently fall-back to the emulated code handler if the file is not there.

Fixes issue 4561.
2012-01-03 01:24:14 -05:00
Pierre Bourdon 59e93bff78 Fix a crash at startup with Dolphin on Linux compiled in debug mode
Use the clobber list instead of the stack to save rbx when executing the cpuid
instruction with inline assembly. This avoids breaking GCC assumptions about
the stack pointer location.
2012-01-02 00:59:37 +01:00
nitsuja f0d7b8122f increased fault tolerance of shader cache files.
more specifically: if the emulator stops unexpectedly, it is quite possible that one of the shader cache files will have some bytes near the end that never got their values filled in. this change adds an index number at the end of each entry as extra verification that the entry is valid, so that invalid entries can be ignored (and eventually overwritten) instead of causing crashes.
2012-01-01 14:28:20 -08:00
skidau 1df7af35e9 Reset errno to zero before testing it after the strtoul call. Fixes issue 5078. 2011-12-29 12:05:36 +11:00
LPFaint99 de4e3e7462 add wstring name(s)/description to the cachefile, use when available in gamelist and properties window 2011-12-18 22:01:46 -08:00
nitsuja c68c8c388c made savestate loads less fragile by adding some markers and rolling back on a mismatch.
This should make it so if you try to load an incompatible save, it simply doesn't load, instead of crashing dolphin. (I can't guarantee no crash but it's much less likely now)
2011-12-18 00:22:06 -08:00
Maarten ter Huurne ed1bfdf293 Merge branch 'cmake-osx2' 2011-12-17 16:30:02 +01:00
Maarten ter Huurne 27bda2c054 Fixed range check on TryParse() for u32, again.
The code from 748be364e5 incorrectly accepted -0x100000000 on x86_64.

Also if ERANGE is returned by strtoul(), reject the parsed value regardless
of what that value is. This fixes invalid values being returned when compiling
with Visual C++. Thanks to "cotton" for testing this.
2011-12-13 02:08:34 +01:00
Maarten ter Huurne ee5a29e6f2 For CPUID, save EBX on the stack instead of in a register.
This fixes GCC running out of registers when compiling for x86
in release mode.

Thanks to kiesel.
2011-12-12 02:14:56 +01:00
Maarten ter Huurne 7423c74deb Force the "ebx" argument to be mapped to a register (not necessarily EBX).
Fixes crash on x86 under OS X.
Thanks to kiesel for the fix and to shuffle2 for remembering the problem.
2011-12-12 00:43:23 +01:00
Shawn Hoffman b0ffa72e37 Merge branch 'large-mram' 2011-12-10 18:48:35 -08:00
Maarten ter Huurne 748be364e5 Fixed range check on TryParse() for u32.
On x86-64, "unsigned long" is 64 bits wide, so it is possible for a number
to not trigger a range error on strtoul() but still not fit inside an u32.
An extra check is added to ensure that 32-bit and 64-bit builds will accept
the same numbers.
2011-12-02 02:24:43 +01:00
Maarten ter Huurne 29865e6366 Avoid virtual memory range collision between JIT and emulated RAM.
Passing MAP_FIXED to mmap causes already mapped pages in the requested
region to be replaced. On Mac OS X this caused pages for JIT-generatd
code to appear in the memory range previously auto-allocated for the RAM
of the emulated machine. This led to a hang at boot time. The same problem
can probably occur on FreeBSD, but not on Linux since MAP_32BIT is used
there instead of MAP_FIXED.

The solution is to not use MAP_FIXED, but instead rely on the OS honoring
the hinted address which is below 4 GB: we don't need an exact match,
just a low address.
2011-11-30 00:37:57 +01:00
Shawn Hoffman b62cac2ca9 Allow modifying main ram size at compile time by changing Memory::REALRAM_SIZE. 2011-11-27 19:52:05 -08:00
Shawn Hoffman d8def74dd1 add portaudio headers and windows static libs to Externals, enable by default in windows build. 2011-10-03 23:45:59 -07:00
Jordan Woyak d3e639a397 fix build issue with intel compiler and fix some unsafe string usages, patch by FilthyMonkey 2011-10-01 21:31:43 -05:00
NeoBrainX 0e1383b788 Bump disk cache version. 2011-09-29 22:55:28 +02:00
NeoBrainX 81c614fa07 Clean up various things. 2011-09-29 23:32:39 +02:00
NeoBrainX 5dcb212fc7 Fix Windows build. 2011-09-29 23:32:38 +02:00
NeoBrainX 8c691767da Various changes which improve FreeBSD support.
Patches by martymac, all credits go to him ;)
2011-09-29 23:32:38 +02:00
NeoBrainX b28348066e Improve the shader UID debugging stuff and merge it to VideoCommon, effectively enabling it in D3D9 and D3D11 as well. 2011-09-09 00:32:04 +02:00
NeoBrainX 349a3ae91d Merge remote-tracking branch 'remotes/origin/master' into new-shadercache-uids 2011-09-08 02:14:18 +02:00
NeoBrainX 6c7bda6851 Various fixes and cleanups. 2011-09-08 02:09:44 +02:00
NeoBrainX 3939f9595a Add runtime checks to make sure we aren't overoptimizing the pixel shader cache. 2011-09-07 21:15:09 +02:00
Shawn Hoffman 95517a9741 vs2010: Disable LTCG for realz 2011-09-05 09:43:23 -07:00
Shawn 7f56842a79 fixup scons (osx) to generate scmrev.h and build.
hopefully this will be the last code change committed directly to master for a while... :/
next is cmake to replace scons on osx hopefully. pointers anyone? (soren?)
2011-08-23 03:50:06 -07:00
Jordan Woyak 1528c95fe9 Remove hash from revision description for cmake and windows. 2011-08-22 20:06:17 -05:00
Jordan Woyak 6a80b9989a remove hash from rev description 2011-08-22 13:11:45 -05:00
Jordan Woyak a910f97c39 minor cleanup of make_scmrev.h.js 2011-08-22 13:11:42 -05:00
Shawn Hoffman cdaa5ea5d2 make sure the jscript is actually executed at build time 2011-08-21 20:00:30 -07:00
Shawn Hoffman 82dfee1642 make_scmrev.h.js needs to compare the full file instead of just the HEAD hash.
remove refs to deleted files from Common project
2011-08-21 19:53:09 -07:00
Shawn Hoffman fc12633055 Make the jscript for writing out scmrev.h work on windows.
Add scmrev.h to .gitignore
Remove some SubWCRev.exe and it's template
2011-08-21 19:15:50 -07:00
Jordan Woyak e8fe15c3f7 Make titlebar and about dialog fancy for cmake build.
Windows needs fixing.
2011-08-21 17:43:05 -05:00
Shawn Hoffman 6bc81f5ac4 git compat:
add git support to cmake and make_svnrev.h.js
add .gitignore
2011-08-14 13:17:57 -07:00
Shawn Hoffman 82b635b799 vs2010: build dsptool again
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7681 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-17 08:38:08 +00:00
Glenn Rice b853d7de3d Oops. Forgot to add the CriticalAlert definitions for windows.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7679 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-15 16:50:54 +00:00
Glenn Rice a5a45992ad Add a new type of message box (CRITICAL style) which can not be disabled. Then use that message box to display shader compilation errors in the OpenGL backend to maintain consistency with the behaviour of the DirectX backends.
Also fix the wxMessageAlert called from non-gui threads in the WXGTK build to use the passed caption.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7678 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-15 14:49:34 +00:00
Shawn Hoffman 2b9b4a3306 Make PatchAddEdit complain and not modify entry if fields are invalid instead of just filling in zeros. Fixes issue 4291.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7672 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-09 21:00:30 +00:00
pierre 383d12185f JIT: Use RAX instead of INVALID_REG for offsetOrBaseReg in MScaled
Fixes asserts triggering in WriteRex with 32bits.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7656 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-30 19:17:53 +00:00
pierre 6cdb40a194 JIT: Add support for memory accesses with scaled index register but without base register
This is mostly useful for removing SHLs by constant 1, 2, 3, which this
commit implements in one place.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7652 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-29 22:40:01 +00:00
Shawn Hoffman 2309e36b28 Revert changes made for 3.0 release 2011-08-20 14:05:43 -07:00
NeoBrainX 35d1599724 Tag Dolphin 3.0
git-svn-id: https://dolphin-emu.googlecode.com/svn/tags/3.0@7615 8ced0084-cf51-0410-be5f-012b33b47a6e

3.0: Removed SVNRevGen stuff; changed revision string to 3.0; Removed installer since it was vastly outdated; Bumped CMake major version to 3

git-svn-id: https://dolphin-emu.googlecode.com/svn/tags/3.0@7616 8ced0084-cf51-0410-be5f-012b33b47a6e

3.0: Add the languages which were chosen to be release-worthy.
Uhm, unless I forgot something important, I guess we can declare 3.0 as officially released now and stuff. Cheers ;)

git-svn-id: https://dolphin-emu.googlecode.com/svn/tags/3.0@7617 8ced0084-cf51-0410-be5f-012b33b47a6e

3.0: Fix SCons build

git-svn-id: https://dolphin-emu.googlecode.com/svn/tags/3.0@7627 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-23 23:11:12 +00:00
LPFaint99 1d29204ae6 Windows: Sets the cwd to the folder that dolphin.exe resides in.
Removes the ugliness that was the portable file, and now creating a shortcut or file association is less of a pain
it is still necessary to modify the file association from ".../dolphin.exe" "%1" to ".../dolphin.exe" /e "%1"

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7593 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-11 20:45:09 +00:00
NeoBrainX 8244efcc02 Revert r7421 and r7422.
Should fix issue 4413.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7592 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-11 19:37:21 +00:00
pierre 3bcb406c46 Improve WII state saves by saving /tmp and IPC request/reply queues
mp3:c stores temporary files in /tmp and needs them restored to
resume properly.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7564 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-27 19:55:07 +00:00
Rodolfo Osvaldo Bogado 0e225a5ad1 some code cleanup i have left in my folder :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7560 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-25 18:14:29 +00:00
LPFaint99 e4fa493a27 Adds the option to change the path to the wii nand root
when nand root is changed the current sysconf is saved,
and the sysconf in the new location is either loaded (if exists)
or the default sysconf is created
wii menu item is updated when the root changes
small fix to saving gamelist paths to .ini paths that are removed from the gui are now removed from the ini instead of simply changing the number of paths

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7555 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-24 19:12:18 +00:00
LPFaint99 1236e584e0 NAND:Consolidate Wad/Directory loading in CNANDContentLoader to one function
add ticket to CNANDContentLoader
move wad installer to CNANDContentManager
system menu can now be launched from a wad file without being installed first, (return to system menu from another title will still only work if system menu is installed)
cdb.vff: flushed to disc immediately, creates if the file exists but is too small, moved creation to Boot_WiiWad

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7530 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-09 05:47:29 +00:00
LPFaint99 423db843b7 typo/ put back a log that i removed
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7522 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-07 03:52:32 +00:00
LPFaint99 69645d421b Move the HLE hack of setting.txt file redirection to the BS2Emu
we already copy the file to memory here, now we also copy the file to 
1/2/data/
 This should really fix issue 4287.
Thanks to hosigumayuugi for finding the exact cause of the issue

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7521 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-07 03:48:27 +00:00
LPFaint99 c88126233b Update the country code in SysConf when wii system language is changed.
remove annoying assert for invalid loaders on disc titles.
Fixes issue 4287.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7514 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-05 22:38:07 +00:00
pierre 35026f9de1 Core/Common: Allow LEA(32,...) with M() OpArgs exceeding the 2G range.
Fixes JitIL in debug builds.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7478 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-22 15:51:40 +00:00
Glenn Rice 37beef5a35 Fix sysconf generation. Fixes issue 4348.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7449 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-11 15:57:45 +00:00
Jordan Woyak 021193b22f Use mutexes in LogManager to make it threadsafe, as suggested by beistin's patch. Change some LogManager function names to be consistent with Dolphin's naming conventions.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7433 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-01 07:43:02 +00:00
nakeee bebd66078f Create sys conf if it doesn't exists instead of asking questions
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7427 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-31 11:07:31 +00:00
Jordan Woyak 306c3570d1 Eliminated a memcpy in DX11's vertex shader disk cache loading. Maybe games will boot faster now, who knows?
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7422 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-30 10:46:27 +00:00
Jordan Woyak f8620fcd0b Fixed some memory leaks. Only one was mine ;P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7392 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-22 07:27:23 +00:00
gnick79 017735b9ff * GUI Video-Settings changes:
- Removed recent ghanges about separate per-game Video Settings
  - Added "One Window 3-State Support" (very close to full implementation)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7391 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-21 19:57:31 +00:00
Jordan Woyak 068855bbd6 Moved per-game graphics configuration to the game-list right click menu. It will be too difficult to make the "profiles" drop-down thing work with 3-state vs 2-state checkboxes. The per-game settings now have "undetermined" states, except for the radio buttons(I'll fix that later). It's super hacky right now. Video config (probably all config stuff) could be redone.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7386 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-21 05:46:33 +00:00
Soren Jorvang 215baff4c8 Simplify the SCons build:
With wxWidgets 2.9.2 now in Externals, SCons was the only
external dependency other than Xcode and building just SCons
from Macports caused a fair mount of extra stuff to be built
unnecessarily, so just include a copy of scons-local.

Always build wxWidgets from Externals which allows us to get
rid of the home-grown autoconf machinery in SconsTests.

The main use case for args.cache was the wxconfig option,
which is no longer relevant after the above changes and
caching options has a lot of potential for confusion,
especially since other build systems don't tend to do this,
so we no longer do it now.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7381 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-20 18:35:07 +00:00
j4ck.fr0st 205637ccc3 Hide DX11 on WinXP (fixes Issue 3719)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7379 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-19 12:58:55 +00:00
Soren Jorvang 9198e83ae1 Hack Misc.cpp into building on OS X.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7362 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-16 22:58:24 +00:00
sl1nk3.s 571013acd8 Fix the video software backend. (closes issue 4269)
Some warning fixes and cleanup.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7361 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-16 22:48:17 +00:00
Jordan Woyak 2692ba2697 Make "GetLastErrorMsg" thread safe.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7359 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-16 21:08:20 +00:00
Jordan Woyak 41c98f982e A bit of cleanup to Core Init/Stop, Frame, and Main. Cleanup XAudio2 to attempt to fix the crash on stop(didn't help :p). For some reason CFrame::DoStop is called twice.(might be the issue)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7353 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-15 23:09:12 +00:00
Soren Jorvang bfe7b028ce pthread_mutexattr_t's must be initialized before the type can be set.
Fixes issue 4243.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7344 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-14 15:06:06 +00:00
Jordan Woyak 26b6a9af61 The data from strdup must be deallocated with free, not delete. I got rid of that ugly strdup and replaced the A though Z cdrom drive letter searching with Windows API stuffs.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7335 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-12 06:50:20 +00:00
Glenn Rice 0cc8eda124 Re-enable the std::mutex try_lock on linux and use it for the Host_GetKeyState keystate_lock mutex. This reduces the number of application crashes on linux during emulation.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7334 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-12 01:19:04 +00:00
Glenn Rice 1b583a0441 Fix things so that those who wish to compile with -std=c++0x can. To active this with the cmake build add CXXFLAGS="-std=c++0x" before cmake on the command line, or export that variable. This enables the experimental features like std::thread, std::mutex, etc., that are provided by g++ instead of using the implementation in dolphin.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7333 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-12 00:01:33 +00:00
Glenn Rice 5706abf4a1 Hack up hack number 7328, just to get things to compile.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7329 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-11 12:56:26 +00:00
Jordan Woyak 59fd1008ca Wrapped fopen/close/read/write functions inside a simple "IOFile" class. Reading, writing, and error checking became simpler in most cases. It should be near impossible to forget to close a file now that the destructor takes care of it. (I hope this fixes Issue 3635) I have tested the functionality of most things, but it is possible I broke something. :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7328 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-11 10:21:46 +00:00
Soren Jorvang 4f69672b2b Remove the need for the less than standard strnlen()/strndup().
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7326 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-11 00:37:37 +00:00
Nolan Check 6e348a2731 DX11: Add real XFB mode support. May not work perfectly yet. I'm working on a set of fairly big VI-related changes. When I'm done, it should improve animation smoothness for all the backends, especially when virtual or real XFB mode is enabled.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7319 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-08 07:39:36 +00:00
gnick79 89f636cc08 - Little fix on CPUDetect.cpp about the correct detection related to new AVX extensions (bug/fix reported&suggested by debian.micove)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7314 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-07 16:12:20 +00:00
Jordan Woyak 5f87642f23 problem: TryAcquireSRWLockExclusive requires Windows 7 :/. solution kinda: use std::recursive_mutex (CriticalSection on windows) where try_lock is used. Dolphin should work on Vista x64 again.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7313 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-07 00:16:38 +00:00
Glenn Rice a734b3f057 Somewhat experimental. If the SYSCONF file is not found or is invalid then generate one. For now ask the user if this should be done. The generated SYSCONF file works for me with the games I have tested, but this needs further testing. Unfortunately, most users will never use this as they will have the SYSCONF file anyway. Eventually we could perhaps remove the distributed SYSCONF, and generate it the first time dolphin is run.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7311 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-06 16:57:58 +00:00
Jordan Woyak 9095dad009 Fix preprocessor prob.(recursive mutexes were being used where not necessary) Hopefully fix Common::Event to handle spurious wakeups since it uses condition variables now.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7307 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-06 00:52:04 +00:00
Glenn Rice 7bc2ae01f2 Fix Common::Barrier and fix the deadlock by making Common::Event check to see if an event has already been set or not.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7305 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 22:17:28 +00:00
Glenn Rice 024a87af7a Fix the Host_GetKeyState deadlock caused by Billiard's latest changes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7304 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 21:58:54 +00:00
gnick79 4f0705fd70 * Italian translation update
+ minor GUI adjustements, CPUID Detect cleanup... video profile selection is disabled if a game is running

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7302 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 16:36:47 +00:00
Jordan Woyak 423018f811 Replaced Common::CriticalSection with a std::mutex implementation. 64bit Windows builds now use SRWLocks and ConditionVariables(requires Vista/7, x64 builds will no longer work on Windows XP x64). Tell me if you hate that. Removed Common::EventEx. Common::Event now uses a std::condition_variable impl.(using ConditionVariables on Windows x64, Events on x86, or posix condition variables elsewhere). I experience slight speed improvements with these changes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7294 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 06:11:26 +00:00
Rodolfo Osvaldo Bogado c569b33829 First Revert my changes to VertexLoader.cpp, i don't own the games that get error so i revert the changes until i can test it myself.
Second:
A experiment. implemented parallelization in texture decoding using openmp. is most a experiment to test the performance in different os/plataforms. in my system (windows x64 amd 1055t) give a speedup in large textures, but i tested in in intel dual core and gives a slowdown. o i limited the use for large textures and cpus with more than 3 cores.
please test an let me know if it improves or degrades the speed.
please for linux and osx user. to enable this you will have to enable your compiler support for openmp to test this code.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7284 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-04 22:48:54 +00:00
Glenn Rice 756c40163d Merge the log window CreateGUIControls and LoadSettings methods. This allows the settings from the ini file to be applied when the controls are created rather than setting a default, and then changing the settings later. In particular word wrap is applied when the text control is created. This works around the crash at application start that users are reporting in issue 4196.
Also change the for loops in SysConf to use iterators to placate godisgovernment and billiard. :P


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7283 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-03 22:47:48 +00:00
Soren Jorvang 05719ac81a Move SConscript files out from the Src subdirectories to be
consistent with the other build systems.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7282 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-03 19:44:56 +00:00
Soren Jorvang 540238cf79 Prepare for the release of Xcode 4, which has working LTO
with static libraries.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7280 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-03 04:35:03 +00:00
Glenn Rice 1ae59b6dc3 When reloading the sysconf file make sure that the m_Entries vector is cleared.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7278 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-03 01:15:25 +00:00
Shawn Hoffman bda0794adb Reload sysconf file on stop in order to preserve changes committed during emulation
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7277 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-03 00:07:33 +00:00
Glenn Rice 12cd2d41ec Change YieldCPU to sleep(0) like on windows. Time trials show this to be the most effective. Also, when using usleep(1) and dsp on thread the emulator is painfully slow. With the old _mm_pause() the emulator hangs on shutdown. With sleep(0) the emulator is faster, and doesn't hang on shutdown.
Also fix a possible undefined operation (according to gcc).


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7275 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-02 22:19:56 +00:00
Glenn Rice df809630c5 Pass std::string's by reference when possible.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7268 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-01 05:16:32 +00:00
Glenn Rice a5b471f490 More conversion from char * to std::string.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7266 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-01 03:06:14 +00:00