Commit Graph

6462 Commits

Author SHA1 Message Date
Jordan Woyak 1c10d3a1bb better fix for linux wiimote disconnect crash 2013-01-10 16:16:49 -06:00
Jordan Woyak e1c8bea2f6 fix crash, but now 100% cpu usage on disconnect 2013-01-10 15:23:42 -06:00
Rachel Bryk d6b53af115 Automatically set focus on game list window.
Fixes issue 5880.
2013-01-10 14:29:48 -05:00
Jordan Woyak 202c005e61 Remove commented code. No longer supporting setting volume with PulseAudio. 2013-01-10 13:01:22 -06:00
Rachel Bryk ab24149b1b Retain scroll position after refreshing game list.
Fixes issue 5878.
2013-01-10 13:35:56 -05:00
Pierre Bourdon 2c1c538fda Disable the OpenAL and Pulseaudio audio backends
They are currently broken and cause sound issues which are not present in other
backends:

* OpenAL plays music 2x too fast in Zelda UCode games with HLE
* Pulse backend uses a lot of CPU power and slows down emulation significantly

Both backends are currently being re-implemented in separate branches of
Dolphin, so this should be a temporary removal.
2013-01-10 18:43:15 +01:00
NeoBrainX 198d60c569 FifoPlayer: Support recording texture preloads 2013-01-10 18:30:27 +01:00
NeoBrainX e7c883d6be VideoCommon: Implement proper RGBA8 texture loading from tmem. 2013-01-10 18:30:22 +01:00
NeoBrainX 304814e7cc Video_Software: Implement proper RGBA8 texture loading from tmem.
For RGBA8 textures, AR and GB tiles are stored in separate tmem banks. TextureDecoder did not support that previously.
2013-01-10 18:30:16 +01:00
skidau 7bf72a6c84 Fixed the random static audio that would sometimes occur in DSP HLE and DSP LLE. 2013-01-11 01:03:18 +11:00
Rachel Bryk 3ebe0718b8 Change theme selection to wxChoice. 2013-01-10 00:22:28 -05:00
Jordan Woyak 14b8d3f107 Add support for german region flag. Still need to change image. (currently using a copy of europe flag) 2013-01-09 22:53:04 -06:00
Rachel Bryk f1489a4e18 Merge branch 'controller-profiles' 2013-01-09 22:33:51 -05:00
Jordan Woyak a8a71fdd8c Resize the KDE theme's "Open" icon from 24x24px to 22x22px to match the rest of the icons. 2013-01-09 20:57:10 -06:00
Rachel Bryk b9fc26540e Change key names, and put it in section Controls. 2013-01-09 21:56:17 -05:00
Jordan Woyak 0de8fbecfa Don't hardcode left-shift to disabe keyboard input on linux.
Left-shift can be used for gamepad input now.
Fixes issue 4968.
2013-01-09 20:26:11 -06:00
Jordan Woyak 6598462aba Display error messages when failing to compress/decompress games.
Fixes issue 4681.
2013-01-09 20:02:46 -06:00
Rachel Bryk fad2468e30 Make sure profile actually exists. 2013-01-09 20:41:14 -05:00
Jordan Woyak 5c371549d3 fix cmake hacks 2013-01-09 18:39:28 -06:00
Jordan Woyak 488a679ca7 use pulseaudio "simple" api 2013-01-09 17:45:16 -06:00
skidau c7ccf7e5c6 Removed the system timing hack which was activated when the Accurate VBeam option was enabled. 2013-01-10 09:11:37 +11:00
skidau ad28986d51 Fixed the include directories in Audio Common for the Windows 32bit build. 2013-01-10 07:55:13 +11:00
skidau d34c847edd Fixed the include directories in Audio Common for the Windows build. 2013-01-10 07:43:59 +11:00
Rachel Bryk e32b1526b3 Allow setting different profiles for different controllers, and automatically use the appropriate profile directory. 2013-01-09 15:04:37 -05:00
Ryan Houdek 01f4d9f386 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. 2013-01-09 10:26:12 -06:00
skidau 8494a439c7 OSX build fix 2013-01-10 00:06:35 +11:00
skidau 91fe5cc821 Build fix
Added SoundTouch as a dependency of AudioCommon.
Removed the "soundtouch_config.h" include on Linux and OSX.
2013-01-09 23:45:13 +11:00
skidau 63b38be97c Added audio time stretching by using the SoundTouch library. 2013-01-09 22:57:32 +11:00
degasus bff02b3b73 Merge branch 'arb_framebuffer' into GLSL-master
Conflicts:
	Source/Plugins/Plugin_VideoOGL/Src/FramebufferManager.cpp
	Source/Plugins/Plugin_VideoOGL/Src/RasterFont.cpp
	Source/Plugins/Plugin_VideoOGL/Src/Render.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureConverter.cpp
2013-01-09 11:00:26 +01:00
Jordan Woyak 32855a289c Actually export 0-sized files.
Fixes issue 5177.
2013-01-09 01:31:40 -06:00
Lioncash d9ea718559 Fix an issue where an iterator would become invalidated in TextureCache::ClearRenderTargets() 2013-01-08 23:46:30 -05:00
degasus 84debc17d5 fix msaa
blitting between msaa fbos may not scale. So we need to resolve the efb before swapping.
2013-01-09 01:50:52 +01:00
Rachel Bryk b8691df723 Allow loading controller profiles from game ini.
Currently loads the same profile for all 4 controllers, and overwrites the default control settings.
2013-01-08 19:15:11 -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
Jordan Woyak b4717ca802 Merge branch 'master' of https://code.google.com/p/dolphin-emu 2013-01-08 14:44:56 -06:00
Jordan Woyak 00d303eead clean up FifoPlayerDlg::OnBeginSearch a bit 2013-01-08 14:43:58 -06:00
Matthew Parlane 2844708c2d Fix reference to deleted object bug. This should fix channels not loading from sysmenu anymore. 2013-01-09 09:38:36 +13:00
NeoBrainX 815fd197d3 Fix a potential memleak in FifoPlayerDlg 2013-01-08 21:27:04 +01:00
NeoBrainX e204a6e015 Add some TODOs. 2013-01-08 18:56:01 +01:00
NeoBrainX d3882771aa Fix an assert that had been wrong for ages, apparently. 2013-01-08 18:56:01 +01:00
NeoBrainX 4925a28f94 PixelShaderGen: Shader uid maintainance 2013-01-08 18:56:01 +01:00
NeoBrainX be706a3977 Disable color writing when alpha test always fails. 2013-01-08 18:56:01 +01:00
NeoBrainX d26bcb0847 Move alpha pretest to BPMemory.h and rename a bunch of alpha testing related stuff 2013-01-08 18:56:01 +01:00
NeoBrainX c80f6e8b84 Reword a comment about early_ztest a bit. 2013-01-08 18:55:45 +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
NeoBrainX 09197e0ffc X11: Disable OSD hotkeys when the corresponding option is disabled. 2013-01-08 18:16:47 +01:00
Ryan Houdek 446d9279b1 Fix clearing of render targets. We were skipping every other one. 2013-01-08 11:14:53 -06:00
Glenn Rice 1d44d3baf5 Merge branch 'linux-desktop-file' 2013-01-07 17:07:23 -06:00
Glenn Rice 6bd8474d05 Change the application name to "Dolphin Emulator" (from "Dolphin-emu"). 2013-01-07 17:05:51 -06:00
Pierre Bourdon 8cfceb1186 Disable swapping cmp with instructions potentially raising interrupts
Workaround for issue 5864 disabling parts of an optimization in the JIT. This
is not the best solution to fix this issue, but at least it does not crash.
2013-01-08 00:02:38 +01:00
Glenn Rice bb7c262539 Add a linux .desktop file to add dolphin-emu to the menu, and install it
when running 'make install'.
2013-01-07 16:50:48 -06:00
Ryan Houdek d0301ca89d Revert 30dd9c2 e9d00bf db5f4c8 and bff0fae 2013-01-07 13:47:34 -06:00
skidau c8c78e0aa9 Implemented correct audio timing.
Fixes issue 5493.
2013-01-07 15:37:08 +11:00
skidau 5240e75be2 Fixed the infinite rumble problem caused by r4d6056f14625. 2013-01-07 12:25:18 +11:00
skidau 6df1dacca8 OpenAL for Windows initial commit 2013-01-07 12:16:04 +11:00
Jordan Woyak 7a95713496 Fix some warnings. Changes suggested by nerzhultheking. 2013-01-05 22:45:32 -06:00
skidau 1d691d7de4 Fixed SSBB from starting at the mini-games screen. 2013-01-06 14:36:38 +11:00
skidau c61b0c7fba Build fix 2013-01-05 12:56:35 +11:00
skidau 1c9c6052d5 Corrected a state bug where newly loaded dols did not have their patches applied. 2013-01-05 12:32:47 +11:00
skidau 4d6056f146 Added GC Steering Wheel emulation.
To set it up, change the Port 1 controller to "Steering Wheel" under the GameCube tab.  This will tell the game that you have a force feedback steering wheel connected.
In the Gamecube Pad Settings, change the Rumble Motor to "Constant".
Configure the controls:

Main Stick Left/Right = Steer Left/Right
Main Stick Up = Accelerate
Main Stick Down = Brake

Thanks to ulao for the device communications info.
2013-01-04 14:08:09 +11: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
Rachel Bryk 4f531fe122 Remove unused progressive scan option from iso properties, and disable audio settings while a game is running. 2013-01-03 16:43:58 -05:00
Glenn Rice 3da05af30a Fix truncated names and descriptions in the game list on linux. 2013-01-03 10:35:07 -06:00
degasus b38b62afc6 remove glsl binding support. convert every shader to version 130 2013-01-02 16:56:08 +01:00
Rachel Bryk 91023e133b Move widescreen hack to enhancements tab. 2013-01-02 01:21:20 -05:00
Rachel Bryk 5fbce28bbc Save git hash to .dtm header. 2013-01-01 16:34:07 -05:00
skidau 3fd1b4ee83 Removed some debug testing code. 2013-01-01 15:13:18 +11:00
Rachel Bryk 9af711b12c Always count GC wheel inputs too. 2012-12-31 21:57:39 -05:00
skidau 51603f0522 * Implemented working pedal support.
* Changed the mapping of the steering wheel to:

Main Stick Left/Right = Steer Left/Right
Main Stick Up = Accelerate
Main Stick Down = Brake

* Fixed non-force feedback controllers that were not detected
2013-01-01 13:49:22 +11:00
Matthew Parlane c728ef2cd3 Last warning for me on Linux. 2013-01-01 14:42:30 +13:00
Matthew Parlane 4c374cd58a Improve file search speeds by deleting an unused file. 2012-12-31 15:27:36 +13:00
Pierre Bourdon bcf1f54c65 Optimized the Dolphin SEO process a bit 2012-12-31 02:31:55 +01:00
rog 71bb297f2c Always count gc controller inputs. 2012-12-30 06:48:37 -05:00
Ryan Houdek 64afbade33 Fix 4 warnings on OSX 2012-12-30 04:32:37 -06:00
Ryan Houdek ff3b22e1ff Clear up some warnings that crop up from -Wextra 2012-12-30 03:28:50 -06:00
Ryan Houdek e5d5365bac Fix the last few warnings in Dolphin on my system. 2012-12-30 02:34:14 -06:00
Matthew Parlane 539bf405f2 In memory of calc84.
http://dolphin-emu.org
2012-12-30 16:31:38 +13:00
skidau 5ccbcf455e Added preliminary GameCube Steering Wheel emulation via a PC Force Feedback Steering Wheel. 2012-12-30 13:41:48 +11:00
Matthew Parlane cd54d6efdd Mismatched new/delete. 2012-12-29 22:26:09 +13:00
rog 670ca7e993 Toggle wiimote status based on the actual status, instead of some dumb checkbox that is almost never even right.
The checkbox is still wrong when starting emulation, but it's now purely cosmetic.

Actually fixes issue 5594.
2012-12-29 02:48:20 -05:00
Ryan Houdek ba6564b0b5 Missed a write to depth before discard in PreAlphaTest 2012-12-28 14:48:04 -06:00
Ryan Houdek 9e76a457ff Beautify the generate pixel shader code 2012-12-28 14:18:39 -06:00
Ryan Houdek 76fc1fe95a This discard was missing in the alpha pretest area. 2012-12-28 12:18:34 -06:00
Ryan Houdek 3eeebcae45 Another small bit of cleanup as I'm reading it 2012-12-28 12:05:43 -06:00
Ryan Houdek a25a00640e Very small cleanup in PixelShaderGen 2012-12-28 11:49:21 -06:00
rog 3ec3b7683e Fix (dis)connecting wiimotes via hotkey.
Fixes issue 5594.
2012-12-28 11:21:08 -05:00
Glenn Rice c303669dd0 Clean up some messy code issues that have been annoying me. 2012-12-28 09:58:06 -06:00
degasus 48ede4dd30 switch to glsl 130, more than OpenGL 3.1 isn't needed 2012-12-28 16:05:14 +01:00
rog af2820ac88 Don't show multiple exit confirmation dialogues.
Pause emulation while waiting for confirmation to exit.

Fixes issue 5822.
2012-12-28 03:39:34 -05:00
Ryan Houdek 225d29f3f6 Fix this annoying warning in ChunkFile.h 2012-12-27 23:43:59 -06:00
Ryan Houdek 7d93834cd8 Bit more cleanup from removing Nvidia CG 2012-12-27 22:53:07 -06:00
skidau 95f6685900 Changed the HLE system to allow it to hook the beginning, the end or replace the entire function without changing the GC memory. Fixes Kirby's Return to Dreamland.
Added a way to categorise the type of HLE function.  Currently, there are debug, floating point, memory and generic functions.
Added a HLE function for OSGetResetCode (Warm reset).  Fixes the CSI games.
Added a switch to disable all of the HLE functions if the idle skipping option is disabled.
2012-12-28 14:26:46 +11:00
degasus d7f43c7a68 remove cg from windows project files 2012-12-28 01:08:29 +01:00
rog 2fd1c9e7c2 Allow setting cpu engine and whatever bHLE_BS2 is from game ini. 2012-12-27 09:42:20 -05:00
degasus 316a33d1e6 Merge branch 'master' into GLSL-master
Conflicts:
	Source/Core/DolphinWX/Src/VideoConfigDiag.h
	Source/Plugins/Plugin_VideoOGL/Src/GLUtil.h
	Source/Plugins/Plugin_VideoOGL/Src/Render.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureConverter.cpp
2012-12-27 10:36:54 +01: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 5169804a61 Remove duplicated X11 code. 2012-12-26 12:12:26 -06:00
Ryan Houdek 93f72d8463 Don't add superfluous whitespace to the CMake file 2012-12-26 11:07:33 -06:00
skidau 05730af724 Added some IOS version checks and code to clear memory before loading the dol. 2012-12-26 23:10:41 +11:00
skidau 0c845728cc Added support for Reset (from menu). Fixes Sam & Max. 2012-12-26 23:10:40 +11:00
skidau 88e273fac1 Added an IOS check as games which use IOS older than IOS30 do not need to be HLE'd. Added some stubs for Reset to Menu and SSBB's load from disc partition. Fixed loading Fate of Atlantis from the Indiana Jones and the Staff of Kings game. 2012-12-26 23:06:43 +11:00
skidau 651cedaac4 Added argument detection and passing to the loaded dol. This fixes the Wii Sports+Wii Sports Resort bundle pack. 2012-12-26 23:06:43 +11:00
skidau fbdf9ba153 Added preliminary support for ES_LAUNCH (Wii Multi-boot games) by using HLE to hijack the OSBootDol function.
Metroid Prime Trilogy is working.  Wii Sports+Wii Sports Resort is not working.  Any games which can be played using the dol replacement trick should work here.

Suspect that the DOL's are meant to receive an argument list which has not been catered for in this code.  This probably also means that the Metroid Prime Trilogy games are locked in Veteran difficulty for the time-being.
2012-12-26 23:06:42 +11:00
Ryan Houdek 9a58f9a3bb Rename another function... 2012-12-26 00:34:09 -06:00
Ryan Houdek c43a0dac2e Add to more than 32bit debug 2012-12-26 00:25:49 -06:00
Ryan Houdek fa9abfdc42 Add a include directory 2012-12-26 00:22:17 -06:00
Ryan Houdek a35c5a7f22 Add a include directory 2012-12-26 00:20:09 -06:00
Ryan Houdek f4e7a280a9 Remove cg.lib from some files for Windows and renaming a function. 2012-12-26 00:07:43 -06:00
Ryan Houdek e9099459bb Maybe fix Windows compiling. 2012-12-25 22:52:30 -06:00
Glenn Rice 0de073edea When using the "Keep window on top option" make sure that the effect of
that option ends when emulation ends when using render to main.
2012-12-25 21:12:51 -06:00
Ryan Houdek c884dbf654 Mistype in WX.cpp 2012-12-25 19:18:03 -06:00
Ryan Houdek 01953ff64a Rename the interface files and hopefully fix OSX building. 2012-12-25 19:08:24 -06:00
Pierre Bourdon b3ed3bdb91 Define NvOptimusEnablement to tell the Nvidia driver we need high performance 2012-12-25 13:51:13 +01:00
Pierre Bourdon ba348c29d7 Merge branch 'new-ax-hle'
Only AX GC is merged so far, the new Wii AX development will be done in a
separate branch when I'll start working on it.

There are still a few AX GC bugs remaining, but overall a lot less games have
sound issues than before.

Thanks to everyone who helped test the development builds of this branch and
reported results on the forum thread.

Conflicts:
	Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AX.cpp
2012-12-25 13:33:53 +01:00
Pierre Bourdon 4a74da3e87 Readd the old AXWii (rename the new version to NewAXWii) and set it as default 2012-12-25 13:30:55 +01:00
degasus bff0faea2d Merge branch 'immediate-removal'
Conflicts:
	Source/Plugins/Plugin_VideoOGL/Src/Render.cpp
2012-12-25 12:39:00 +01:00
rog b3714f4874 Don't show compress iso option for wbfs and ciso files.
Fixes issue 5809.
2012-12-25 06:31:31 -05:00
NeoBrainX 4798524b75 Dolphin 3.5 release. 2012-12-24 21:29:24 +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
Pierre Bourdon 2c58385fe2 Revert "Uninitialized usage.. or so it thought."
This reverts commit 7839676c87.

Parlane, I hate you.
2012-12-24 21:23:28 +01:00
NeoBrainX 4d868705fd VertexShaderGen: Fix a shader compilation error. 2012-12-24 19:50:16 +01:00
NeoBrainX 5a78351033 TextureCacheBase: Fix a potential bug when using custom textures. 2012-12-24 19:50:16 +01:00
NeoBrainX 249afa5eac Change copyright year to 2013 in the about dialog. 2012-12-24 19:50:16 +01:00
rog 2dd570c880 Should completely fix game list sorting. 2012-12-24 13:29:19 -05:00
Ryan Houdek 53398ca5d8 Remove GLSL option from video options 2012-12-24 12:22:02 -06:00
rog da5e61b45b Fix another sorting bug. 2012-12-24 13:04:57 -05:00
rog 14a31d9b3a Fix sorting bug. 2012-12-24 12:48:14 -05:00
Ryan Houdek 9209253e0d Initial removal of Nvidia CG. Still some more cleanup to go 2012-12-24 11:09:52 -06:00
Ryan Houdek 09b05c0f6c Add header guards to InterfaceBase.h 2012-12-24 09:46:37 -06:00
degasus 78ff8a769c Merge branch 'osx-savegame-fix' 2012-12-24 13:30:59 +01:00
Matthew Parlane eedca57270 Revert "support retina display"
This reverts commit 3aa9901618.
2012-12-24 08:01:44 +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 f865450b5a Changed to non conflicting overload. 2012-12-24 00:00:45 +13:00
Matthew Parlane a8ddc3e069 Function definition was not updated. 2012-12-24 00:00:25 +13:00
Matthew Parlane 7839676c87 Uninitialized usage.. or so it thought. 2012-12-24 00:00:04 +13:00
Matthew Parlane 4dbd2ed7fb Unused variable. 2012-12-23 23:59:44 +13:00
Matthew Parlane 589222857f Someone changed this to a u32... it's definitely a s32 :) 2012-12-23 23:59:10 +13:00
Grant Paul 3aa9901618 support retina display 2012-12-23 21:33:52 +13:00
Matthew Parlane 3a2c0b778a Fixed stupid bool to int conversion warnings. 2012-12-23 19:53:15 +13:00
Matthew Parlane 1c01fd9c9d Remove warning about ambigious if/else. 2012-12-23 19:24:30 +13:00
rog d66dd970cd Implement select audio backend CLI option.
Fixes issue 4920.
2012-12-22 18:25:52 -05:00
degasus ffddfd8662 do only invalid hashes instead of all textures on loading
this is a hack, but only the gpu thread is allowed to call ogl commands
suggestion: create an unused texture cache, so we can move all textures there
2012-12-22 17:30:13 +01:00
degasus 2df0c31d13 add invalid flag for BPStructs (fix issue 5790)
this flag will be set on loading a state and checked before every rendering.
2012-12-21 21:04:53 +01:00
degasus cf8f936abb fix efb2ram decoder 2012-12-19 23:43:05 +01:00
degasus 85ac76e8e2 fix gcc compilation 2012-12-19 23:42:22 +01:00
Pierre Bourdon b0cbac174b Implemented dpop samples support 2012-12-19 08:31:17 +01:00
Ryan Houdek 2db4549174 Fix a memory leak based on Lioncash's patches. 2012-12-18 23:35:28 -06:00
Pierre Bourdon 071b27f0bb Fix volume mixing in DownloadAndMixWithVolume (same issue with >1.0 volumes) 2012-12-19 05:56:57 +01:00
rog 16ac7803f1 Add support for recording bongos. 2012-12-18 23:20:26 -05:00
Pierre Bourdon 2c10ca4e46 Rewrite the linear sample rate conversion algorithm to make it less hacky and to support arbitrarly big ratios 2012-12-18 17:38:41 +01:00
Glenn Rice 1bd42b7acc Merge branch 'rehash-msw-cursor-hide' 2012-12-18 08:07:47 -06:00
Pierre Bourdon 1cecbaedce Fix MixAdd with volume. The previous volume formula completely failed with volumes >= 1.0 (0x8000). Fixes Tomb Raider Legends (GC) music. 2012-12-18 07:01:22 +01:00
Pierre Bourdon faaaa97c9e Added a utility function to dump an AX PB for debugging 2012-12-18 07:00:24 +01:00
Pierre Bourdon 1abbfd4b15 Remove some useless 'inline' attributes from the AX HLE voice mixing functions 2012-12-18 07:00:04 +01:00
Pierre Bourdon 70b3980f46 Fix AX HLE command 12 arguments: takes 4 u16, not 1 2012-12-18 06:58:47 +01:00
Pierre Bourdon ed59f8ff1d Remove UCode_AX_ADPCM.h, now useless (incorporated into UCode_AX_Voice.h) 2012-12-18 05:55:40 +01:00
Ryan Houdek f6ef6fa0d9 I had the wrong header for Windows in GLVideoInterface.h 2012-12-17 16:23:02 -06:00
Ryan Houdek f2004b2474 Blindly add WGL.cpp file to the Windows project file. Just for Neo 2012-12-17 16:19:55 -06:00
Ryan Houdek 512cae69f8 Add a useful comment to DSP.cpp 2012-12-17 15:55:34 -06:00
Ryan Houdek 6099148541 Blind coding fail 2012-12-17 15:33:19 -06:00
Ryan Houdek 8082323c44 Should hopefully fix OSX 2012-12-17 15:29:38 -06:00
Ryan Houdek 3cb5dffbc9 Missed the video interface files. 2012-12-17 15:01:52 -06:00
Ryan Houdek b78f5debe6 Initial push of GLES and GLUtil file breakup. 2012-12-17 14:54:20 -06:00
NeoBrainX 0811311604 TextureCacheBase: Delete textures completely instead of just invalidating them in ClearRenderTargets.
That's what would've been done in the next TCB::Load() call, anyway.
Fixes issue 5742.

Additionally, change efb copies to specify 1 as the number of mipmaps because that makes more sense than anything else.
2012-12-17 19:36:31 +01:00
Glenn Rice 98ed34d50b Use wxNullCursor to put the cursor back to its default instead of
explicitly setting the cursor to the arrow.
2012-12-17 11:32:10 -06:00
Glenn Rice f1cc5c2ff9 Define the icon for "dolphin". The IDI_ICON1 seems to be preempted by the wx resource. This one does not. 2012-12-17 08:33:42 -06:00
rog 4c7b63cf0e Save secondary list sorting.
Allow sorting by platform ascending.

Fixes issue 5774.
2012-12-17 06:08:45 -05:00
Glenn Rice 0a918782cf Reorder the inclusions to hopefully fix the icon issue. 2012-12-17 00:11:59 -06:00
Glenn Rice ff7041804c Make sure that the wxWidgets manifest does not override the dolphin one. 2012-12-16 23:55:22 -06:00
Glenn Rice 832a5a0b26 Add the resource include in only one place for all builds. 2012-12-16 23:39:05 -06:00
Glenn Rice d34fb84734 Add the resource inclusion to the other builds. 2012-12-16 23:21:11 -06:00
Glenn Rice a581c75a37 Make the resource include path relative. 2012-12-16 22:52:29 -06:00
Glenn Rice d1a812231e Rework the way that windows mouse cursor hiding is done to use the built
in wxWidgets methods.
2012-12-16 21:32:14 -06:00
LPFaint99 351979795c revert changes to banner background color 2012-12-16 15:29:25 -08:00
Ryan Houdek 8838944cd3 Revert "Use the global ::wxSetCursor instead of the local one from our panel object. Should close 3956."
This reverts commit 884006e4c8.
2012-12-15 00:04:10 -06:00
Ryan Houdek 884006e4c8 Use the global ::wxSetCursor instead of the local one from our panel object. Should close 3956. 2012-12-14 15:19:22 -06:00
Ryan Houdek 88b890824b (CoreAudio) Retain volume value until initialization. Makes volume slider work when game isn't running. Fixes issue 5383. 2012-12-14 12:15:01 -06: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
degasus 8b62be2025 fix ShowEFBCopyRegions
those fancy colors were the result of the usage of non-allocated heap

Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:49 -06:00
Glenn Rice a6374f25fd Fix OSX build once again. Apparently OSX needs to get with the times. 2012-12-10 10:31:08 -06:00
NeoBrainX c82136abdc PixelShaderGen: Drop some useless and potentially buggy code.
Thanks to glennrics for noticing.
2012-12-10 16:13:22 +01:00
Glenn Rice f6df3d1513 OSX build fix for the unordered_map/hash_map issue. 2012-12-10 08:40:27 -06:00
rog 330ea74d19 Allow input displays to work without an active movie. 2012-12-10 06:20:06 -05:00
Glenn Rice e85438cba0 Clean up gcc/g++ compiler warnings that have accumulated. 2012-12-10 00:40:28 -06:00
rog 43d673b576 Save game list sorting.
Fixes issue 5771.
2012-12-08 23:53:50 -05:00
NeoBrainX 4fc0125fb3 Fix OS X 10.6 compatibility.
Patch by mathieudel.
2012-12-07 19:49:08 +01:00
skidau aeb5782395 Merge conflict. Fixes issue 5471. 2012-12-06 21:16:27 +11:00
rog bbf7c3a4d0 Fix a save state crash in some situation. 2012-12-05 17:11:19 -05:00
Ryan Houdek 423024110e Includes are case sensitive and Common is in the include directories so including the file this way was silly. 2012-12-04 11:44:28 -06:00
John Peterson 470a4eee8b Fixing wiimote savestate and recording. 2012-12-03 21:14:25 -05:00
John Peterson 983d5d1f73 Making cheats manager resizeable, maximizable, hideable (parentless), higher by default. 2012-12-03 20:58:25 -05:00
rog 47aaca89eb Fix error message about state undo backup always appearing when no movie is active. 2012-12-02 02:08:43 -05:00
NeoBrainX bed260aa14 VertexShaderManager: Fix redundant shader constant updates.
Thanks to konpie for spotting this.

Might give a fairly perceivable speedup in the D3D11 backend.
2012-12-01 14:23:24 +01:00
Pierre Bourdon 3ca77cf077 Fix samples clamping and interlacing in the OUTPUT command. Shouldn't have assumed previous AX HLE was doing something right. 2012-12-01 00:54:25 +01:00
Pierre Bourdon 04b1ee0016 Implemented command 01 (download data and mix to MAIN/AUXA/AUXB with volume control). Fixes missing weapon sounds in Metroid Prime 2. 2012-11-28 15:22:02 +01:00
Pierre Bourdon 4cf2856284 Improve savestates support in AX and AXWii 2012-11-28 03:31:46 +01:00
Pierre Bourdon f11a40f858 Command 13 should upload only AUXA LRS, not MAIN LRS + AUXA LRS. Fixes more GC EA games sound/music (including FIFA 06, Madden 08). 2012-11-28 01:48:27 +01:00
Pierre Bourdon 1a129abe0d AUX return data should be mixed to main buffers, not AUX buffers. Fixes a regression introduced by r954c55e35afb, now EA games sound works again. 2012-11-27 21:48:59 +01:00
Pierre Bourdon 9270b62830 Rewrite MixAUXSamples to make it more clean 2012-11-27 20:36:34 +01:00
Pierre Bourdon 2120f536d5 Implement command 07 in GC AX (download data to main LR and reset main surround) 2012-11-27 20:36:14 +01:00
rog aaeeef48da Compile fix for linux. 2012-11-26 23:36:47 -05:00
rog c0bb7aa8f3 Turns out you have to actually commit a change before merging if you want it to be included. 2012-11-26 18:17:07 -05:00
Pierre Bourdon 9b1a66245e Fix an AUX mixing issue introduced when implementing AXWii. Now FIFA 06 sounds great with AX HLE. 2012-11-27 00:03:40 +01:00
Pierre Bourdon 706939e632 Implement command 10, used by FIFA 06 and linked to AUXB mixing. Sound still broken in that game. 2012-11-27 00:03:02 +01:00
Pierre Bourdon fb1ecd90b0 Implemented command 13 in GC AX, used in some EA games (FIFA 06 now has broken sound, which is still better than no sound) 2012-11-26 23:34:18 +01:00
rog db458a234a Merge branch 'desync-fixes' into movie-fixes 2012-11-26 12:40:56 -05:00
rog 38e0d06e8c Whoops, was calling GetMD5() twice. 2012-11-26 12:29:36 -05:00
rog 3d9712a99e Remove more unused code. 2012-11-26 03:48:04 -05:00
rog c2146921f9 Call InputUpdate() for wii games when using gc controller but not wiimote. 2012-11-26 03:04:17 -05:00
rog 97f5b1665f what is this even... 2012-11-26 02:11:52 -05:00
rog 0903e20817 Expand input buffer as needed, instead of hardcoding it at 40 MiB.
Patch (mostly) by Ilari.
2012-11-25 22:41:48 -05:00
rog 1917f83244 Cleanup and misc movie fixes. 2012-11-25 19:26:37 -05:00
rog 0c6dad6a37 Clear unneeded variables upon stopping emulation. 2012-11-24 18:27:20 -05:00
rog d26c7fea17 Remove old, unused code. 2012-11-24 01:40:34 -05:00
rog f251704df2 The trick to multithreaded emulation is to include thread.h more than once.
Also, rewords some awkardly written messages.
2012-11-24 01:15:26 -05:00
rog a374f9f049 Check md5 when recording from save state too. 2012-11-23 22:47:32 -05:00
rog ca650d4435 Record md5 of game file to .dtm, and check it when playing back. 2012-11-23 22:23:58 -05:00
skidau 085c81da86 Mapped the addco and subfco PowerPC instructions. Fixes Frogger: Hyper Arcade Edition. 2012-11-24 00:04:28 +11:00
NeoBrainX 0fcb246b7e Enable GFX debugger functionality in Release builds. 2012-11-20 17:54:48 +01:00
Pierre Bourdon 9d85052a66 Implement Wiimote audio output in AXWii. Not very useful yet as no sound is currently being mixed to the wiimote channels. 2012-11-20 11:34:49 +01:00
Pierre Bourdon affdf08fd6 Real fix for the crashes on Windows with AXWii 2012-11-20 09:49:27 +01:00
Pierre Bourdon e858835c7e Fixing the hack fix (I can't multiply 32x32) 2012-11-20 04:26:07 +01:00
Pierre Bourdon 0d3c3f6339 Fix a crash in AXWii with SRC ratio > 4 (which I thought was impossible, but AXWii changed the SRC algorithm) 2012-11-20 04:18:48 +01:00
Pierre Bourdon 321e3a8421 Add global volume handling for AUX mixing and L/R output in AXWii 2012-11-20 03:32:29 +01:00
Pierre Bourdon ae85159a94 Add surround sound support to GC AX HLE 2012-11-20 03:22:24 +01:00
Pierre Bourdon 954c55e35a New AXWii now working properly in some games I tested 2012-11-20 03:13:55 +01:00
Pierre Bourdon e750bed2a9 Rename NewAX -> AX and remove the old code. Time to work on AXWii. 2012-11-19 22:03:56 +01:00
NeoBrainX 4f652c4086 Partially revert "Check if BP and XF changes actually change values before flushing". Dolphin code sucks too much to get optimizations.
This reverts commit 5a77cae2e3.

Fixes issue 5459.
Fixes issue 5606.
2012-11-19 21:09:31 +01:00
parlane d7e65f03e4 Fix indentation [ using the web editor D: ] 2012-11-19 19:44:44 +00:00
Pierre Bourdon 4f88fee560 Added a small TODO list of things missing in NewAX 2012-11-19 20:25:57 +01:00
Pierre Bourdon 3541d33c25 Support both versions of the mixer_control bitfield. Fixes Skies of Arcadia music being muted (and sounds being mixed only on the left audio channel), this time without a hack. 2012-11-19 20:10:37 +01:00
NeoBrainX 4ff9e03509 Merge branch 'efb_scaling_fixes'. 2012-11-19 13:18:57 +01:00
NeoBrainX b02bb7617f Fix some fractional EFB scaling issues. 2012-11-19 13:10:32 +01:00
parlane 9345501388 Dolphin was crashing after attempting to use a NULL on macosx.
(turns out that passing NULL to string cmp funcs has "undefined behavior".)

Thanks to Grant Paul for this quickfix!
2012-11-19 03:19:51 +00:00
rog 69e8942dac Fixes pausing movies for some 30 fps games, in some situations.
Thanks abahbob for testing.
2012-11-18 01:07:48 -05:00
XtraFear d6697d50c7 Added option to toggle the display of On-Screen Display messages in the Interface tab. 2012-11-16 23:54:48 +01:00
NeoBrainX a135512f9b Build fix.
Fixes issue 5674.
2012-11-16 23:46:28 +01:00
rog 3a8e8af2d5 Merge movie-fixes. 2012-11-16 12:07:22 -05:00
rog 101de62c86 Remove an old TODO, and add a new one. 2012-11-16 12:03:51 -05:00
NeoBrainX f88e7d3b73 Fix an off-by-one error. 2012-11-16 14:29:11 +01:00
NeoBrainX a38bb488d2 Remove Renderer::xScale and Renderer::yScale. 2012-11-16 14:29:09 +01:00
NeoBrainX 78031c2d54 Move ComputeDrawRectangle() to Renderer::UpdateDrawRectangle(). 2012-11-16 14:25:49 +01:00
Pierre Bourdon c8b2ba1bc6 Implement the MORE command (0D) used to read more commands from the CPU 2012-11-16 07:51:19 +01:00
Braden a024d04583 Patch by mwessel that fixes real wiimotes on OSX 10.8 2012-11-15 21:30:19 -06:00
X-tra Fear 5170d65711 Fixed last commit. 2012-11-15 14:47:51 -05:00
Pierre Bourdon 5a2d8661d7 Add comments explaining how the voice processing works 2012-11-15 16:57:33 +01:00
Pierre Bourdon aa90f799b7 Re-implementation of the AX voice mixing algorithm. Now with 100% less WTF. 2012-11-15 16:30:05 +01:00
rog 25a1979b22 Merge https://code.google.com/r/xtrafear-dolphin-emu 2012-11-14 17:27:46 -05:00
rog 14aa7150d9 Add option for author name for movies. Also, minor cleanup for previous options i've added. 2012-11-14 16:23:20 -05:00
X-tra Fear 11fc13aea4 Fixed WiiMotes disconnecting when ES_LAUNCH is ran. 2012-11-14 16:12:25 -05:00
rog f5a3379d71 Add config option for mac address. Fixes issue 5694. 2012-11-14 14:28:38 -05:00
Pierre Bourdon 531cc6aaf3 Fixed AUXB_NOWRITE command number and implemented UPLOAD_LRS command (06) 2012-11-14 18:08:29 +01:00
Pierre Bourdon f84f15c5bf Oops, forgot a memset which removed all AUX effects 2012-11-14 18:03:55 +01:00
Pierre Bourdon a630357c9e Add AUX mixing support as well as a send&return effect implementation 2012-11-14 17:55:16 +01:00
Pierre Bourdon 61c1fab2c6 Fix Windows support again: std::thread can't take a member pointer with StdThread.h from Common 2012-11-14 12:13:19 +01:00
Pierre Bourdon db46ccd175 More accurate mixing buffers initialization using parameters from command 00 2012-11-14 12:08:41 +01:00
Pierre Bourdon 24d430eba0 Add NewAX to the VC++ project files 2012-11-14 11:32:57 +01:00
Pierre Bourdon 6a1241c03e Make a hack optional to fix 48KHz output mode with NewAX 2012-11-14 11:25:27 +01:00
Pierre Bourdon 0b275c20af Added output support to NewAX. Now working fine with Tales of Symphonia. 2012-11-14 11:20:54 +01:00
Pierre Bourdon 18f3630af5 PBs processing is now done, just need the output to be able to test 2012-11-14 06:53:36 +01:00
Pierre Bourdon 7535c6d903 Parse the AX command list in the AX thread 2012-11-14 06:15:55 +01:00
Pierre Bourdon 9e813502ac Create a new thread for AX and make it handle the command lists 2012-11-14 05:33:04 +01:00
Pierre Bourdon 3195916744 Basic infrastructure for the new AX HLE, currently not doing anything besides answering mails 2012-11-14 05:08:04 +01:00
Pierre Bourdon e4d18e3a8b Bound the iteration on the PB list when processing updates.
Fixes freezes introduced in 3.0-807 with DSPHLE on some AX games.

Apparently logic doesn't apply inside the HW/DSPHLE/UCodes directory.
2012-11-13 16:50:42 +01:00
Pierre Bourdon 16060290c2 Fix missing notes in musics with DSPHLE.
Tales of Symphonia and Skies of Arcadia Legends now have working musics with
DSPHLE. Some other games with the same symptoms (missing instruments) should
probably be fixed by that change too.
2012-11-13 09:37:44 +01:00
rog 8fe5aa4ee8 movie cleanup 2012-11-12 20:40:11 -05:00
rog 8eb6f9002e Fixes interpreter when not recording or playing back a movie. 2012-11-12 20:20:34 -05:00
rog a5d210129d Add an on screen lag counter. 2012-11-11 17:57:06 -05:00
rog 35e5a1e592 Add an option to pause on the last frame of a movie. 2012-11-10 21:57:31 -05:00
Rog e8c0fea16e Retain dsp JIT setting when switching to HLE. Fixes issue 5691. 2012-11-09 12:08:56 -05:00
Rog ab48e1154b Stop saving undo buffer (and associated .dtm, and .sav) when starting playing back a movie from save state. This is completely useless, and just wastes time copying save states around. 2012-11-08 23:25:55 -05:00
Pierre Bourdon d13163380d Bye mamario, you won't be missed 2012-11-02 02:48:55 +01: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
skidau 303b0f6b6d Test the audio loop with aligned addresses. Fixes the high pitched squeal in Muramasa. 2012-10-29 14:03:28 +11:00
skidau 882d5161f8 Merge branch 'Capcom-Music-Loop'
* Capcom-Music-Loop:
  Removed the fake DMA wait time as it is no longer needed after the aram-dma-fixes branch is merged.  This fixes the Resident Evil 2/3 cutscene audio in DSP LLE mode.  Fixes issue 2723.
  Changed the loop end address detection to an exact match with the current address for ADPCM audio.  Fixes the non-looping music in PN03.
2012-10-28 13:36:34 +11:00
rodolfoosvaldobogado ee72852491 implement some code to reduce the amounts of calls to setup vertex format, in d3d9 it gives no noticeable speedup, in opengl it still does not work right.
thanks to neobrain for the idea
2012-10-26 23:18:09 -03:00
rog 95d55ed1c7 fixes for backing up wii saves when playing a movie 2012-10-26 20:04:06 -04:00
rog 8921fe0d09 move wii saves to a backup if playing a movie that starts with no save 2012-10-26 17:36:18 -04:00
rodolfoosvaldobogado eaa1ea71c1 Implement the new buffer approach in opengl. sadly in my machine it gives my only 2 more fps and if your hardware does not support ARB_map_buffer_range is even slower than plain vertex arrays.
change naming in all the backends vertex managers to make more easy to continue with the merge an some future improvements.
please test this as i'm interested in knowing the performance in linux and windows with the different hardware platforms.
2012-10-26 11:34:02 -03:00
rog 0bc2021284 save if a wii game's save data exists when starting recording. Probably not the best way to do this, and could result in a false negative if banner.bin exists, but the actual save file doesn't, but this should work well enough. 2012-10-25 03:15:54 -04:00
rog 8dfb12da3e stuff 2012-10-24 23:21:34 -04:00
rog 76a6917fdf Check game ID against what is recorded to the .dtm 2012-10-24 19:42:04 -04:00
rog 7ee455ce3b When beginning recording, check settings in Init() instead of just in BeginRecordingInput(), since it's called after bootmanager.cpp reads the game's config. 2012-10-24 18:44:26 -04:00
rog 7006cd1217 i'm still not using a branch to fix the name of a variable 2012-10-24 15:32:02 -04:00
rog 4358f8384f readd memory card detection for movie code. I deleted this before, intending to move it elsewhere, but never did 2012-10-24 15:16:41 -04:00
rog a1186d84df update state version 2012-10-23 02:31:16 -04:00
rog 5133ac551b merge relevant changes from bc61dbdf58a8 in otu0001-desync-fix clone 2012-10-23 02:10:49 -04:00
skidau 421a75493c Removed the fake DMA wait time as it is no longer needed after the aram-dma-fixes branch is merged. This fixes the Resident Evil 2/3 cutscene audio in DSP LLE mode. Fixes issue 2723.
Removed the ADPCM format detection from the previous commit as it broke the audio looping in Knockout Kings 2003.
2012-10-23 00:30:01 +11:00
skidau b2a01dc348 Changed the loop end address detection to an exact match with the current address for ADPCM audio. Fixes the non-looping music in PN03.
Fixes issue 3998.
2012-10-22 22:59:35 +11:00
NeoBrainX f7edfc0118 FifoPlayer: Copy selected object commands to clipboard when pressing ctrl+c 2012-10-22 12:32:57 +02:00
rog aece5310f3 more movie cleanup. Removes the remaining globals that didn't need to be global, rearranges some code to make more sense, and removes some redundant code. 2012-10-21 23:20:28 -04:00
rog 9070e7ff8c misc movie cleanup and fixes 2012-10-20 22:26:40 -04:00
rog 92d2f5dee2 keeping padding right is so hard 2012-10-20 15:58:29 -04:00
NeoBrainX 069d949a57 [cleanup] TextureCache: Kill the autogen_mipmap parameter 2012-10-20 21:07:02 +02:00
NeoBrainX ee3d6d66d7 [cleanup] [bugfix] TextureCacheBase: Cleanup and simplify mipmapping logic. Possibly fixes a bug or two. 2012-10-20 21:07:02 +02:00
NeoBrainX c859aaae84 [optimization] TextureCacheBase: Slightly loosen the requirements for reusing mipmapped textures 2012-10-20 21:07:02 +02:00
rog a6028b055b Save disc changes to .dtm, and load the full movie header every time it's loaded. 2012-10-20 14:40:16 -04:00
rodolfoosvaldobogado@gmail.com 5230146c73 Hey, long time no commits :).
So to compensate lets bring back some speed to the emulation.
change a little the way the vertex are send to the gpu,
This first implementation changes dx9 a lot and dx11 a little to increase the parallelism between the cpu and gpu.
ogl: is my next step in ogl is a little more trickier so i have to take a little more time.
the original concept is Marcos idea, with my little touch to make it even more faster.
what to look for: SPEEEEEDDD :).
please test it a lot and let me know if you see any problem.
in dx9 the code is prepared to fall back to the previous implementation if your card does not support the amount of buffers needed.
So if you did not experience any speed gains you know where is the problem :).
for the ones with more experience and compression of the code please test changing the amount and size of the buffers to tune this for your specific machine.
The current values are the sweet spot for my machine.
All must Thanks Marcos, I hate him for giving good ideas when I'm full of work.
2012-10-20 10:22:15 -03:00
rog 0384f61af3 re-rearrange movie code so it actually works all of the time 2012-10-19 19:43:03 -04:00
rog b1dee5fc23 small fix for undo load state while not recording 2012-10-18 04:40:56 -04:00
rog 79692a6c78 save settings necessary for syncing a movie to the .dtm, and load them upon playback 2012-10-18 04:18:40 -04:00
rog 783409c765 clear the save state loaded from a previous movie when starting emulation 2012-10-18 04:14:25 -04:00
rog 6b99b746c8 fix undo load state and load last overwritten state while recording 2012-10-18 04:11:14 -04:00
rog 7f624cda10 fix recording from save state 2012-10-18 04:03:12 -04:00
rog a366521d13 Correct the hotkey labels for undo load state, and load last overwritten state buttons 2012-10-18 03:30:44 -04:00
Ryan Houdek 57426ee726 Forced commit 2012-10-13 13:00:04 -05:00
Ryan Houdek 3f0d7312fa A couple missed lines on the rebase. 2012-10-13 12:43:00 -05:00
Ryan Houdek 10666a9b87 More 'stuff' 2012-10-09 23:56:00 -05:00
Ryan Houdek eb7a0c485a More "stuff" for SS, also a small fix in the program shader cache cache setup." 2012-10-09 23:56:00 -05:00
Ryan Houdek 71f6b1eec6 Change 'stuff' 2012-10-09 23:56:00 -05:00
Ryan Houdek 03b09bed5d Get the program binary type correctly or else ATI makes massive (~400MB) shader caches. Also, don't need the line in the PixelShaderGen. 2012-10-09 23:56:00 -05:00
Ryan Houdek 2e15440896 Add support for Dual source blending to older ATI cards that don't support 420pack but do support GL_ARB_blend_func_extended. This is more proper as well anyways. 2012-10-09 23:56:00 -05:00
Ryan Houdek e88d35d1c1 Had a few vec4 and float4(0) calls floating around. 2012-10-09 23:55:59 -05:00
Shawn Hoffman 31a8424bcc fix formatting uglies introduced in glsl-master branch 2012-10-09 23:54:17 -05:00
Shawn Hoffman 4a4833e617 default to GLSL instead of Cg 2012-10-09 23:43:22 -05:00
Ryan Houdek 9996f27120 Give OSX users more of a chance of supporting Single pass DSB in the future. 2012-10-09 23:42:41 -05:00
Ryan Houdek d012c75005 Implement Program shaders cache. Seems to reduce a small amount of stuttering when F-Zero starts. Did it because I can :| 2012-10-09 23:42:41 -05:00
Ryan Houdek c76593f6a2 Looky, OSX found an issue for me. 2012-10-09 23:42:40 -05:00
Ryan Houdek 7aad45658e Add a GUI option to use GLSL shaders. Also fix a small typo. 2012-10-09 23:42:39 -05:00
Ryan Houdek 7f12daa014 Looks like we make use of fmod, make a GLSL function for it! 2012-10-09 23:41:49 -05:00
Pierre Bourdon 3bcec51334 More coding style fixes because I suck at sed 2012-10-09 23:41:48 -05:00
Pierre Bourdon 3c6d0fc710 8 spaces indentation -> tabs 2012-10-09 23:41:48 -05:00
Ryan Houdek 5b06bbf87d Use UBOs in every shader. I had missed a few. Only cache Uniform locations if we aren't using UBOs. 2012-10-09 23:41:06 -05:00
Ryan Houdek 5bcbf92f43 Make sure to support everything even if GPU doesn't. 2012-10-09 23:41:06 -05:00
Ryan Houdek d4a80ca3ec yay, UBOs work 100% now. 2012-10-09 23:41:05 -05:00
Ryan Houdek 1f75ee49bf UBO works for Pixel Shaders if Binding for UBO is zero, otherwise fails. Probably why Vertex shader UBO is failing. Too tired to investigate right now. 2012-10-09 23:41:05 -05:00
Ryan Houdek b105d70339 Firin ma lazer 2012-10-09 23:41:05 -05:00
Ryan Houdek c82b92bfc2 Fix one error. 2012-10-09 23:41:05 -05:00
Ryan Houdek 2fbca145cb Remove bSupportsGLSLLocation since it won't work how I expect it. 2012-10-09 23:41:05 -05:00
Ryan Houdek 4a84c6f742 Add in UBOs, doesn't work yet. Still debugging here. 2012-10-09 23:41:05 -05:00
Ryan Houdek 76e5766a1b Put Vertex Uniforms in to the correct places to get ready for UBOs. 2012-10-09 23:41:04 -05:00
Ryan Houdek d897491f94 Few compiler errors that got exposed once I got Dual Source Blending working. Seems it isn't working quite 100% either. Good chance I missed something anyway. 2012-10-09 23:41:04 -05:00
Ryan Houdek d83ead5914 Support Dual Source Blending in OGL plugin with GLSL. 2012-10-09 23:39:16 -05:00
Ryan Houdek eff019442f Playing through SSBM story made me find this. 2012-10-09 23:37:52 -05:00
Ryan Houdek b24990ca28 Bit of cleanup. Clean up my massive hack in the ShaderManagerFiles. Almost feature parity with Nvidia CG now I think. Just need to do Alpha test with Dual source blending now. 2012-10-09 23:37:52 -05:00
Ryan Houdek cf68cc0c61 Add support for GL_ARB_shading_language_420pack so we don't have to binding sampler locations. Also add support for GL_ARB_separate_shader_objects which doesn't currently work for some reason....investigating. 2012-10-09 23:37:52 -05:00
Ryan Houdek 8058f2f32f Missed one 2012-10-09 23:33:02 -05:00
Ryan Houdek 9064b76deb Shader Compile fixes. Played SMS for two shines. 2012-10-09 23:33:02 -05:00
Ryan Houdek 7cec31dbf3 Almost there. 2012-10-09 23:33:02 -05:00
Ryan Houdek 8123b137aa This is the terrible bit that can't be removed until we use UBOs in the GLSL shaders. 2012-10-09 23:31:31 -05:00
Ryan Houdek 0fc755c4df More stuff 2012-10-09 23:31:31 -05:00
Ryan Houdek 66a5334158 moe 2012-10-09 23:30:48 -05:00
Ryan Houdek 3943840d5c Now CG plays nice with this new stuff. 2012-10-09 23:27:59 -05:00
Ryan Houdek a357c77257 Add in GLSL setting again.
PS and VS making. Untested and won't work for now.

Add in program shader cache files.

Readd NativeVertexFormat stuffs.

Add in PS and VS cache things.

SetShaders in places.

Fixed EFB cache index computations in OpenGL renderer.

The previous computation was very likely to go out of array bounds,
which could result in crashes on EFB access.

Also, the cache size was rounded down instead of up. This is a problem
since EFB_HEIGHT (528) is not a multiple of EFB_CACHE_RECT_SIZE (64).
2012-10-09 23:23:37 -05:00
Pierre Bourdon 3990002250 Optimize JitCache::InvalidateICache by maintaining a "valid blocks" bitset
Most of the InvalidateICache calls are for a 32 bytes block: this is the
number of bytes invalidated by PowerPC dcb*/icb* instructions. Profiling
shows that a lot of CPU time is spent checking if there are any JIT blocks
covered by these 32 bytes (using std::map::lower_bound).

This patch adds a bitset containing the state of every 32 bytes block in
RAM (JIT cached/not JIT cached). Using that, a 32 bytes InvalidateICache
can check in the bitset if any JIT block might be invalidated. A bitset
check is a lot faster than an std::map::lower_bound operation, improving
performance of JitCache::InvalidateICache by more than 100%.

Some practical numbers:

* Xenoblade Chronicles (PAL)
  56.04FPS -> 59.28FPS (+5.78%)
* The Last Story (PAL)
  30.9FPS -> 32.83FPS (+6.25%)
* Super Mario Galaxy (PAL)
  59.76FPS -> 62.46FPS (+4.52%)

This function still takes more time than it should - more optimization in
this area might be possible (specializing for 32 bytes blocks to avoid
useless memcpy, for example).
2012-10-06 01:49:09 +02:00
Pierre Bourdon 8cefcaa94c Implement a simple benchmarking mode which logs FPS to a file
Very useful to compare performance between two builds, check the impact of
a configuration option, etc. FPS log is stored in User/Logs/fps.txt and is
reset each time you launch a game. Only enabled if you check the "Log FPS
to file" option in your graphics settings.

Could be improved a bit: currently logs only every 1s (so you can't really
see small variations), maybe output more infos to the fps.txt like
average/stddev (but Excel/Libreoffice/Google Docs can compute that easily
too).
2012-10-04 05:41:02 +02:00
NeoBrainX 035840e7b5 Move last XFB size from Render to FramebufferManager. 2012-10-03 13:44:35 +02:00
NeoBrainX 6e4a61a991 Minor cleanups. 2012-10-03 13:44:04 +02:00
NeoBrainX bb8b5936c0 Revert "Partially revert revision d511b506120c."
This reverts commit 08e06b2293.
2012-09-27 18:15:44 +02: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 41266129ba Should fix issue 5630. 2012-09-24 17:16:34 -05:00
Ryan Houdek 3229bf824c Should actually load the backend when it changes via game INI 2012-09-23 17:54:23 -05:00
Ryan Houdek f8f8aea577 Allow the user to set graphics backend from Game INI. Zero GUI option available for setting. 2012-09-23 16:02:11 -05: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
sulokuTDCmago 1e174ad31a F-Zero and Phantasy Star Online Memory Card Manager support. Thanks to Ralf from GS Central
Original information:
http://board.gscentral.org/retro-hacking/53093.htm

Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-09-21 21:41:04 -07:00
Pierre Bourdon 760f777f5a Simulate a small delay on GC Memcard operations
This was not needed for most games before because the external exception was
itself delayed. aram-dma-fixes changed that and made the external exception
happen a lot quicker, breaking games that relied on the memcard operations
delay.

Fixes issue 5583.
2012-09-07 01:24:10 +02:00
Pierre Bourdon 208d25c3f5 Revert merges of aram-dma-fixes and memcard-delay
These merges, while in theory improving emulation accuracy, cause issues
in other parts of the emulator based on invalid assumptions. memcard-delay
fixed some of these issues in the EXI memcard code, but several other
problems still exist and I don't have the time to debug that right now.
2012-09-07 01:11:38 +02:00
Scott Moreau 1ffb9ce47e Fix broken build when using SDL from Externals.
The problem here was the logic that detects SDL in the main CMakeLists.txt
is not the same as it is in DolphinWX/CmakeLists.txt to set libraries. When
using SDL from Externals it failed at link time because -lSDL was never set.
This fixes the problem by using the same condition logic to set the libs
as used when detecting SDL in the first place.
2012-09-02 16:53:15 -06:00
Glenn Rice d2e057d137 Update libav code to remove deprecation warnings. 2012-08-28 22:34:24 -05:00
Scott Moreau 6773261a85 Use correct linker flags for SDL. 2012-08-28 03:35:31 -06:00
NeoBrainX 1c1ae63b69 Windows build fix. 2012-08-26 20:26:10 +02:00
NeoBrainX cf8744cf2c OGL: Implement pixel metrics (untested) 2012-08-26 20:26:10 +02:00
NeoBrainX 4d8d86bd6a D3D11: Implement some PE pixel performance metrics.
Super Mario Sunshine is using a cool trick: To determine how much goop has been cleaned in ep. 6 of Sirena Beach, it counts the number of pixels that are input to the blending stage. For that it's using the PE performance registers ;)

Fixes issue 1498.
2012-08-26 20:26:10 +02: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
Pierre Bourdon 60aed4e5b0 Merge branch 'memcard-delay' 2012-08-24 12:45:45 +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
NeoBrainX bab9b5d3ce FifoPlayer: Fix fifo log playback in dual-core mode. 2012-08-22 01:04:09 +02:00
Pierre Bourdon 0b00c95b79 Simulate a small delay on GC Memcard operations
This was not needed for most games before because the external exception was
itself delayed. aram-dma-fixes changed that and made the external exception
happen a lot quicker, breaking games that relied on the memcard operations
delay.

Fixes issue 5583.
2012-08-20 13:49:12 +02: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
LPFaint99 603bd9982d bugfix for memorycard manager. fixes exporting from page > 1 on slot b, thanks to suloku for reporting
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-08-19 20:45:43 -07:00
skidau 28bc5eca37 Added a check for out of bounds memory accesses. Fixes Avatar: The Last Airbender (GC). 2012-08-17 22:14:35 +10: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
NeoBrainX 6e02ad55bc Maintenance. 2012-08-07 18:57:53 +02:00
NeoBrainX ec859009b7 Add a sanity check for viewports with zero width/height.
Fixes issue 5466.
2012-08-07 01:37:31 +02:00
Pierre Bourdon a2b71f1ed7 Clean up WX style issues mentionned in previous commits comments 2012-08-06 14:21:49 +02:00
skidau 0efd4e5c29 Skipped the ZCompLoc pass if the result can be determined at compile time. Brings back the speed lost by r146b02615c07. 2012-08-06 09:29:01 +10:00
Pierre Bourdon 86a1899b9e Fix a wrong data type in the WBFS Blob reader causing issues on x86 systems
Fixes issue 5489.
2012-08-05 19:35:49 +02:00
Pierre Bourdon d7d2e5b9bf Link explicitly DolphinWX with GTK2 libraries
Fixes issue 5555.
2012-08-05 20:51:42 +02:00
Pierre Bourdon fe1501db9a Check if WX recognized a key before testing if it's a hotkey
Fixes issue 5537.
2012-08-05 17:28:57 +02:00
Pierre Bourdon b3c9f437db Return early from DoOpen if the user cancelled the file picker box
Fixes issue 5551
2012-08-05 16:53:36 +02:00
Pierre Bourdon 80bf3c2c0b Add VTune profiling support for Dolphin's JIT 2012-08-05 16:39:15 +02:00
Pierre Bourdon 228172d656 Fix a typo in the indexed color vertex loader
Patch from konpie: http://forums.dolphin-emulator.com/showthread.php?tid=24658
2012-08-05 04:24:16 +02:00
Pierre Bourdon 8597660855 Replace all of the opcode data read functions by their SSSE3 equivalent, not only the first one.
Patch from konpie: http://forums.dolphin-emulator.com/showthread.php?tid=24658
2012-08-05 04:24:08 +02:00
Pierre Bourdon d44a3471be Fix DSP LLE thread affinity being set to the wrong core
Patch from konpie: http://forums.dolphin-emulator.com/showthread.php?tid=24658
2012-08-05 04:24:00 +02:00
Pierre Bourdon e42c6214d9 Fix a typo in GenQuantizedLoads causing issues with SSSE3 in x86 builds
Patch from konpie: http://forums.dolphin-emulator.com/showthread.php?tid=24658
2012-08-05 04:23:46 +02:00
skidau 00df727d2f Optimised the JitCache struct size from 88 bytes to 80 bytes. Thanks to Lioncash for the patch. 2012-07-23 22:15:34 +10:00
Pierre Bourdon 174c1b00f8 Use the right modifier for hotkeys on Mac
Fixes issue 5324.
2012-07-22 19:22:50 +02:00
sktsqrl c0060f9ef8 Merge branch 'bba'
OS X support not impl
2012-07-21 12:53:46 -07:00
sktsqrl 601b9fc03b typo fix 2012-07-21 12:50:40 -07:00
sktsqrl 9442d334d8 bba: stub the os x impl 2012-07-21 12:21:55 -07:00
Scott Moreau 0e1348c839 Re-add hack to use SDL/SDL.h ifndef _WIN32.
The correct convention is to use #include SDL.h in all cases but we have to
do this so Externals/SDL builds, which isn't in the best shape.
2012-07-14 20:50:58 -06:00
Scott Moreau d34418100b Add periodic effects for haptic devices.
This adds support for drivers supporting sine, square and triangle
periodic haptic effects. This allows rumble to work on devices/drivers
supporting these effects, such as an xbox controller using the xpad
driver under Linux.
2012-07-12 19:47:17 -06:00
Scott Moreau 80c15f21b4 Add SDL2 support to build system.
Dolphin code already builds against SDL2 but the build system never
checks for SDL2, which is the what latest SDL is called now. SDL2
replaces SDL 1.3. This allows Dolphin to be build against SDL2, which
activates certain new features such as the haptic interface.
2012-07-12 19:47:17 -06:00
sktsqrl 8dd11bd1c0 fixes issue 5507 2012-07-11 20:54:50 -07:00
sktsqrl 1d44de53b5 reset samples_avail when stopping gc mic sampling. fixes Mario Party 7 2012-07-11 01:03:25 -07:00
sktsqrl a02cbedb0f bba: generate MAC if needed 2012-07-07 13:44:26 -07:00
Pierre Bourdon dd48b246b2 Reduce logging verbosity in the Linux BBA code 2012-07-05 01:30:37 +02:00
Pierre Bourdon 5db70f452b Remove the now unneeded recv sleep hack and fixes game exit by implementing a timeout on read(2) calls in the read thread. 2012-07-05 01:29:42 +02:00
sktsqrl bb84043de0 bba: (windows) fix games which stop and restart recving, such as logging off of PSO and loggin on again without stopping dolphin 2012-07-04 16:17:47 -07:00
sktsqrl 6cccbb91ec bba: implement recv buffer full interrupt
(windows) hopefully fix crashes from closing dolphin while recving
2012-07-04 16:02:05 -07:00
sktsqrl 9cff8316d2 code cleanup for win32/tap/eth 2012-07-04 16:02:04 -07:00
Pierre Bourdon 9a3dd778cb Preliminary BBA support for Linux. Assumes that a TAP interface named 'Dolphin' exists and is preconfigured. Contains some dirty hacks. 2012-07-04 04:34:40 +02:00
skidau c57640dfbd Implemented proper timing in the "No audio output" back-end. 2012-07-01 17:07:58 +10:00
sktsqrl 3cb6e4a864 Redo BBA once again. Now it works on windows, if crappily.
To use, install OpenVPN's TAP device driver. Then create a network bridge between the TAP and your device connected to the internet.
TODO:
proper overlapped read - can look at qemu impl
non-windows impl
2012-06-29 17:33:56 -07:00
skidau b4ec836aca Removed the offset if the ZCompLoc GREATER or LESS function is used. Fixes the invisible player in THPS3. 2012-06-29 18:47:49 +10:00
Pierre Bourdon b27d8ff0d6 Add a missing Invalidate() call in ~TextureCache(). Fixes a regression from 8bed27a3d1 causing textures to load improperly when a game is run two times in the same Dolphin instance 2012-06-27 20:20:28 +02:00
NeoBrainX 29e21026e9 Merge branch 'awesome-texcache-cleanups-and-fixes' 2012-06-21 22:21:34 +02:00
Pierre Bourdon fa2ee1f4a0 Only call CheckExceptions in dcbz in interpreter mode, use FL_ENDBLOCK for Jit64. Now RS3 demo disc does ingame with Jit and block_size = 1 2012-06-20 18:33:23 +02:00
NeoBrainX 7dabba5095 Fix a small bug. 2012-06-20 18:18:20 +02:00
NeoBrainX 043a85f8a6 Minor cleanup. 2012-06-20 18:18:19 +02:00
NeoBrainX 8a5abbddc4 Enable texture format overlay on the fly. 2012-06-20 18:18:18 +02:00
NeoBrainX 8bed27a3d1 Enable hires textures even when texture dumping is enabled.
Remove some deprecated code.
2012-06-20 18:18:17 +02:00
NeoBrainX 8d30ac462a Instead of invalidating texcache whenever the graphics configuration dialog gets opened, clean up textures on configuration changes. 2012-06-20 18:18:05 +02:00
Pierre Bourdon 30de244050 Check for DSI exceptions after a dcbz instruction. Fixes Rogue Squadron 3 in interpreter mode. 2012-06-20 12:15:22 +02: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
Pierre Bourdon 34606f34a9 Allow disassembly of FakeVMEM with the dolphin debugger 2012-06-19 11:57:57 +02:00
Pierre Bourdon 76a13604ef Optimize mtmsr by going to an exception exit only if EE are enabled and some
exceptions are pending.
2012-06-19 06:35:30 +02:00
Pierre Bourdon bfc797ede1 Removed an obsolete comment 2012-06-16 14:39:17 +02:00
Pierre Bourdon e1ddbdd214 Use WriteExceptionExit and implement the change for JitIL 2012-06-16 14:38:48 +02:00
Pierre Bourdon da4141aa9f Simulate ARAM DMAState correctly and check for external exceptions after
MTMSR is executed.

This commits fixes issue 617. WWE Day of Reckoning 1 and 2 are now playable
with Dolphin.

The changes are not implemented for JitIL yet.
2012-06-16 14:38:44 +02:00
NeoBrainX 227580d1a5 Remove "Disable Textures". 2012-06-11 23:35:46 +02:00
NeoBrainX 1dd6b978c1 Remove "Disable Lighting". 2012-06-11 23:30:20 +02:00
skidau 1d9ac2f6e1 Removed the check for changed JIT blocks before invalidation. Fixes the slow speed in Zelda: Ocarina of Time Master Quest.
Fixes issue 5454.
2012-06-09 18:48:15 +10:00
NeoBrainX b5ad382b07 Fast mipmaps deserves to die!! 2012-06-08 00:22:57 +02:00
NeoBrainX 0d577d886a Remove some TODOs. 2012-06-02 19:23:20 +02:00
skidau d74c50b942 OSX build fix for BPStructs. Thanks to pauldacheez for the fix. 2012-06-02 11:28:43 +10:00
skidau bb4c9e2205 Fixed "Failed to compile pixel shader" error when Per-Pixel Lighting is enabled. Thanks to slmpika for the fix. 2012-06-02 11:25:44 +10: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
skidau 99b7c91df5 Checked if dcbst instructions are preceded by dcbt. If it is, the game is prefetching memory into the data cache, and not loading new code. In these cases, the JIT cache will no longer be flushed. Fixes the frequent "Clearing code cache" issue in games like "The Last Story". 2012-05-31 22:09:33 +10:00
NeoBrainX 372e00632d Fix changing internal resolution via hotkeys (settings above 1.5x weren't accessible anymore before). 2012-05-29 13:11:28 +02:00
Pierre Bourdon bfde41895f Update the viewport when the scissor offset is changed
Fixes a bug with Another Code: R that was noticed when gx-optimization was
merged.
2012-05-27 08:03:26 +02:00
Glenn Rice 00f6b7b6ea Fix core dump on start up on linux. Thanks to degasus. 2012-05-26 08:24:18 -05:00
Pierre Bourdon 1efabea9b4 Fix compilation errors with g++4.7 2012-05-26 08:09:50 +02:00
skidau b79d8d9e10 Fixed the Cheat Search. Patch by nagosaki. 2012-05-26 15:45:58 +10:00
skidau 146b02615c Merge rodolfoosvaldobogado's zcomploc code (Graphic_Fixes branch) 2012-05-26 13:47:07 +10:00
Braden 82cb14e49b Actually fixes crashing on start up. 2012-05-26 13:21:30 +10:00
Braden cbc84ecd72 set variables equal to zero or false correctly. Should fix crashes on 32bit version. 2012-05-26 13:21:30 +10:00
Braden defb4c255d Allows analog sticks to be used with the TAS Input Open. 2012-05-26 13:21:30 +10:00
unknown 873437d58a Adds better support for the tas input. 2012-05-26 13:21:29 +10:00
nitsuja 9ea8d54343 remove some code that was made unused by rca287e7957c7 2012-05-26 13:19:57 +10:00
nitsuja 1f9586a8ba compile fix for my merging of rca287e7957c7 2012-05-26 13:19:57 +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 ae242e5675 added some missing VideoBackendHardware data to savestates. I think this makes savestates more stable (fewer "GFX FIFO: Unknown Opcode" errors) in dual core mode.
also added some extra verification markers around here, to potentially give better info on future version mismatches
2012-05-26 13:18:08 +10:00
nitsuja 2be579e8ba fixed some graphics problems with loading savestates (for example, wrong colors on title screen of metroid prime 3) 2012-05-26 13:18:07 +10:00
nitsuja 19b0b02ad7 add some missing IPC HLE data to savestates 2012-05-26 13:14:15 +10:00
nitsuja c9059c708e save events in a safer way. the old way assumed that event type indices remain constant (they don't always), which could result in running arbitrary events or crashing upon loading. 2012-05-26 13:09:39 +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 108f69eaa9 to help movie sync, added some more wiimote data to savestates and disabled auto-reconnect. although I think this is basically just removing hacks and should be more correct, I don't know what side effects this could cause for normal players, so for now these changes ONLY take effect when an input movie is playing back or being recorded. 2012-05-26 12:59:08 +10:00
nitsuja d19c389246 clean up some savestate code 2012-05-26 12:59:08 +10:00
nitsuja 8ef75dac67 add missing SI device state to saves 2012-05-26 12:59:07 +10:00
nitsuja 5423bca79c add some more missing dsp ucode data to savestates 2012-05-26 12:59:07 +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 cf69e7ca8a Merge branch 'gx-optimization'
This branch reduces the number of useless state flushes in the video
emulation layer by checking whether a BP/XF change will have an effect
or not. Greatly reduces the number of GL calls per frame.

Thanks to degasus for his help!
2012-05-24 21:49:37 +02:00
NeoBrainX 4131ca8d38 Merge branch 'hires-tex-improvements' 2012-05-22 08:14:49 +02:00
Pierre Bourdon fee2d83f68 Fix a data endianness problem introduced by r7cccb4baa724. 2012-05-20 22:16:21 +02:00
Pierre Bourdon c95baf614d Avoid changing video state on useless BP writes
When a game writes the same value that was already configured to a BP
register, Dolphin previously flushed the GPU pipeline and reconfigured
the internal video state (calling SetScissor/SetLineWidth/SetDepthMode).

Some of these useless writes still need to perform actions, for example
writes to the EFB copy trigger or the texture preload registers (which
need to reload the texture from memory).
2012-05-20 20:56:03 +02:00
Pierre Bourdon 7cccb4baa7 Check if data was modified in LoadIndexedXF too 2012-05-19 10:54:40 +02:00
Pierre Bourdon b8d4d013f6 Compute the comparison size properly (transferSize is in u32, not in u8) 2012-05-18 23:27:02 +02:00
Pierre Bourdon 5a77cae2e3 Check if BP and XF changes actually change values before flushing 2012-05-18 23:13:53 +02:00
Matthew Parlane 1bc5f41e40 Fixes issue 5428. Thanks delroth. 2012-05-18 17:57:28 +12:00
skidau 5a8ad92302 Changed a JMP that needed to be a far JMP in JITIL. 2012-05-15 09:32:21 +10:00
NeoBrainX 54aeec7a8f Dump the redundant "save textures" function. Use TextureCache's dumping feature instead. 2012-05-13 17:48:23 +02:00
NeoBrainX 72e83140f0 TextureCacheBase: Remove the texture size limit for custom textures. Only the GPU restrictions for maximum texture size remain. 2012-05-13 17:43:14 +02:00
NeoBrainX 41d37ab0a0 TextureCacheBase: Support loading custom mipmaps. 2012-05-13 17:42:22 +02:00
NeoBrainX a5e68ab10e TextureCacheBase: Support dumping individual mipmaps. 2012-05-13 17:41:04 +02:00
NeoBrainX a8ad59ee3e TextureCacheBase: Move texture dumping to a helper function. 2012-05-13 17:41:03 +02:00
NeoBrainX 3ecc5e879c TextureCacheBase: Move custom texture loading to a helper function 2012-05-13 17:41:03 +02:00
skidau b27f471488 Invalidated the JIT cache when the dcbst instruction is used. 2012-05-13 21:07:03 +10:00
skidau 48bf5c739d Changed the block linker to work on physical addresses. Checked whether the code has changed before invalidating it. Fixes the cut-scenes in Tales of Graces.
Fixes issue 2933.
2012-05-12 21:43:39 +10:00
Pierre Bourdon f567782b47 Implement a better heuristic to detect whether an ELF is for GC or Wii 2012-05-12 01:48:56 +02:00
Pierre Bourdon 04bde406d3 Fix DVD root path for Wii games. Now Wii games can be booted using extracted files instead of a disc image. 2012-05-11 22:19:57 +02:00
skidau 1587cb3738 Fixed texture encoding. Fixes the interaction with objects in Another Code R. Thanks to wordmanwords for the patch.
Fixes issue 5405.
2012-05-05 11:21:05 +10:00
Pierre Bourdon 77f47866df Add Wii DVD integrity checking to Dolphin
This allows users to easily check whether their Wii dump is corrupted or not
using the Dolphin properties window. Right click on a game, Properties,
Filesystem tab, then right click on the game partition and select "Check
partition integrity".

This may have some false negatives due to the unused clusters heuristic (see
the comment in VolumeWiiCrypted.cpp). False positives are unlikely.
2012-05-04 16:27:42 +02:00
orphis 6254edcfbc Add the missing *.wbfs extension to the file picker. 2012-05-03 22:27:06 +00:00
skidau 0e812cb187 JIT32 fix.
Added wbfs to the File Open list.
2012-05-04 07:00:30 +10:00
skidau 7885e63deb Added wbfs support. Thanks to lordlyhobo for the patch. Fixes issue 859. 2012-05-04 00:09:01 +10:00
skidau a1b3eaffb7 Reverted the ES changes from r0fc390b55226. Fixes the crash that occurred when loading a channel from the sysmenu. 2012-05-03 23:32:32 +10:00
skidau e5d527340d Optimised the JIT path. 2012-05-03 23:17:15 +10:00
skidau d7f468a781 Applied the "Hide cursor" fix to the Pause button. 2012-05-03 20:57:22 +10:00
Glenn Rice 40640217f1 Fix hide mouse cursor on linux.
Fix emulator window position when rendering to main on linux.
Allow building against wxWidgets 2.9.3 on linux.
2012-05-02 14:40:40 -05:00
Billiard26 1974938c5a Fix DirectInput D-Pad handling. 2012-05-02 06:31:38 +00:00
Pierre Bourdon beb4204bbb Include libavutil/mathematics.h explictly in AVIDump.cpp. Fixes issue #5266. 2012-05-02 07:29:15 +02:00
Pierre Bourdon 5e2d692cec Lock the DSP thread on its own core when using "Lock threads to cores" and "LLE on Thread". Greatly improves DSPLLE performance on Linux with >= 3 cores CPUs. 2012-05-02 07:19:14 +02:00
skidau 1b15cd0b60 Added preliminary support for ARAM memory map mode "4".
Fixes issue 3410.
2012-05-01 22:05:48 +10:00
skidau 2540fe0606 Fixed ARAM DMA overflow situations. Fixes issue 4952. 2012-05-01 21:31:21 +10:00
skidau 30d6d22816 Merge Conflicts:
Source/Core/Core/Src/PowerPC/PowerPC.cpp
2012-05-01 21:00:57 +10:00
skidau d015f0926a Fixed a typo and some far jumps in the JIT. 2012-05-01 20:52:35 +10:00
skidau d557c913e8 Reset the performance counters at the start of the each block. 2012-05-01 20:42:01 +10:00
skidau 389823a749 Changed the performance monitor check to a compile time check instead of run-time. 2012-05-01 20:42:00 +10:00
skidau cdace9d776 Added preliminary support for the Gekko CPU Performance Monitor. Fixes Harry Potter and the Prisoner of Azkaban. 2012-05-01 20:42:00 +10:00
skidau 75fbbcae40 Merge branch 'JIT-Exceptions'
* JIT-Exceptions:
  JitIL code cleanup
  Changed the JIT code to make the FPU exception timing more accurate.  The exception is now triggered at the first FP instruction instead of the start of the block. Rearranged the JIT exception code for a tiny speed-up.  Only external exceptions are checked at the end of the block.  All other exceptions are checked at the time they occur.

Fixes issue 5382.

Conflicts:
	Source/Core/Core/Src/PowerPC/Jit64/Jit_LoadStore.cpp
2012-05-01 20:35:12 +10:00
skidau 05040379e9 JitIL code cleanup 2012-05-01 20:26:05 +10:00
skidau 15d3c45159 Reset the performance counters at the start of the each block. 2012-04-29 00:10:20 +10:00
skidau 853d12b42c Changed the performance monitor check to a compile time check instead of run-time. 2012-04-28 22:47:55 +10:00
skidau 103e73030f Added preliminary support for the Gekko CPU Performance Monitor. Fixes Harry Potter and the Prisoner of Azkaban. 2012-04-28 20:42:45 +10:00
skidau 330f63df80 Corrected the file offset within the FST of virtual disks (used by the DVD Root path function). 2012-04-28 11:21:55 +10:00
skidau 8878ae5fc3 Merge branch 'AudioStreaming'
* AudioStreaming:
  Reset the stream playing flag on init.
  force VolumeDirectory to align files to 32KB (only streaming audio files really need to be aligned...)
  Removed the DTK Music option.  It is now always enabled.
  Added the response for audio streaming disc offset requests.  Generate an AI interrupt at the end of the audio streaming loop.  Fixes Pac-man Fever and the background music in Eternal Darkness.
  Fixed the erroneous looping in audio streaming games like Eternal Darkness and Zoids: Battle Legends.  Thanks for the tip, tueidj.
2012-04-23 22:40:58 +10:00
skidau f0e1b4c1dd Reset the stream playing flag on init. 2012-04-23 22:15:23 +10: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
skidau 5ceef0c513 Removed the DTK Music option. It is now always enabled. 2012-04-23 05:02:43 +10:00
skidau f0a5214a3f Added the response for audio streaming disc offset requests. Generate an AI interrupt at the end of the audio streaming loop. Fixes Pac-man Fever and the background music in Eternal Darkness. 2012-04-23 04:47:31 +10:00
skidau 8ff3954069 Added the memcheck for stXx. 2012-04-21 21:38:57 +10:00
skidau 7038a841bd Fixed the erroneous looping in audio streaming games like Eternal Darkness and Zoids: Battle Legends. Thanks for the tip, tueidj.
Fixes issue 5378.
2012-04-21 15:50:07 +10: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
skidau 13b66df125 Changed the JIT code to make the FPU exception timing more accurate. The exception is now triggered at the first FP instruction instead of the start of the block.
Rearranged the JIT exception code for a tiny speed-up.  Only external exceptions are checked at the end of the block.  All other exceptions are checked at the time they occur.
2012-04-15 21:34:15 +10:00
Pierre Bourdon c08510baa8 wxWindow::FindFocus() sometimes return NULL, check for that to avoid segfaulting 2012-04-15 02:24:41 +02:00
skidau a488b2c0ca Fixed the rerecord counter when using more than one save state. Patch by rdragoon. 2012-04-13 19:50:44 +10:00
Jordan Woyak 722480cb2e Fix compilation with g++ 4.7 and some warnings. Fixes issue 5347. 2012-04-07 15:45:32 -05:00
skidau 5d9ac22d58 Added a "Keep window on top" option in the graphics options. 2012-04-08 10:29:49 +10:00
LPFaint99 87954dacad Revert part of r6bfb8c9597dc so new memory card files will be created.
some how  I neglected to remember that r+ requires the file to exist.
 still should fix the issue with 0 byte memory cards.
This reverts commit 6bfb8c9597.
2012-04-05 21:43:05 -07: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
Shawn Hoffman 702905131b follow-up for last commit: don't warn about the EUART init commands. 2012-04-03 03:54:17 -07:00
Shawn Hoffman 423cdb6398 fixes issue 5335 2012-04-03 03:26:06 -07: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
rodolfoosvaldobogado a0d60210fd First Stage:
Fix depth related errors in dstalpha pass.
best place to test: water splash effect in super mario galaxy
2012-04-02 14:26:12 -03:00
skidau f7ce27c91d Fixed the audio streaming "blocks left" register by making it zero-based. Fixes DreamMix TV World Fighters (GameCube). 2012-04-02 22:14:11 +10:00
LPFaint99 6bfb8c9597 small fix to writing memorycards, open as r+b so the file is not cleared when opening. should eliminate the 0byte memory card files reported http://forums.dolphin-emulator.com/showthread.php?tid=21964 http://forums.dolphin-emulator.com/showthread.php?tid=22631 http://forums.dolphin-emulator.com/showthread.php?tid=22098 2012-03-31 14:03:19 -07:00
Matthew Parlane 5c27e27a4a Oops how did that compile... 2012-03-31 16:26:41 +13:00
Matthew Parlane 763916a779 Comments about DVDLowAudioBufferConfig 2012-03-30 20:13:29 -07:00
Matthew Parlane 404a6b9ba8 Fixes issue 5330. 2012-03-30 20:10:48 -07:00
skidau 995a84e06a Removed CGDisplayCapture from the OSX fullscreen mode code, fixing full-screen mode. Thanks to celgilles for the patch.
Fixes issue 5331.
2012-03-31 13:48:40 +11: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
LPFaint99 f7c17c6351 Merge branch 'GCMemcardFixes' 2012-03-29 14:39:01 -07:00
rodolfoosvaldobogado 402006a83a more fixes to zcomplock and opengl implementation 2012-03-29 18:26:58 -03:00
NeoBrainX 2356def0d4 Merge branch 'fifoplayer_updates'.
This adds an "Analyzer" tab to the fifoplayer dialog which allows to conveniently browse through all register pokes that are being sent by the game each frame.
There's also a search function, but it doesn't work all that well for anything but simple searches at the moment. However, I'm merging this anyway since I'm not sure if I'm going to finish this.

Note that due to recent fifo changes, it's not yet possible to run fifoplayer in dual-core mode.
2012-03-29 22:50:45 +02:00
NeoBrainX 04c2f2382f FifoPlayerDlg: Don't use wxString::fromAscii() 2012-03-29 21:50:21 +02:00
Sacha 5f85815922 Remove inherited variable that was no longer used. Clean up. 2012-03-29 17:01:59 +10: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 48eb791a4e Merge remote-tracking branch 'timowiren/master' 2012-03-25 13:21:25 -07:00
Shawn Hoffman 48bfca3c86 Merge remote-tracking branch 'adlr/macwiimote' 2012-03-25 13:15:38 -07:00
Shawn Hoffman d15740daf1 Merge branch 'wxw3-update' 2012-03-25 12:27:38 -07:00
skidau f30aebf8d7 Added a check for TMEM overflows while preloading textures. Thanks to NeoBrainX for the tip. 2012-03-25 21:35:57 +11:00
Timo Wiren cb92805445 Spaces to tabs. Removed a comment. 2012-03-25 13:01:26 +03:00
skidau fa2b4cd8fc Quick fix for minimum number of cheat codes needed to activate Gecko. 2012-03-25 04:13:41 +00: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
Pierre Bourdon b5ba2eb030 Merge branch 'master' into zcomploc-support 2012-03-24 18:41:51 +01:00
Timo Wiren 11959a3781 Matching new and delete. 2012-03-24 19:41:13 +02: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
skidau 33e20cf76d Added a check for active Gecko codes before installing the Gecko code handler.
Fixes issue 5279.
2012-03-23 23:36:23 +11:00
skidau 41bcf657f8 Adjusted the DX9 offset of the Sampling address to more closely match what we are seeing in games.
Fixes issue 5305.
2012-03-23 23:20:19 +11:00
skidau c4fbb6e377 Checked PRELOAD_MODE to determine if TMEMODD or TMEMEVEN should be used.
Fixes issue 5212.
2012-03-23 22:10:48 +11:00
Shawn Hoffman fab037446c Forward "raw" reads of GC discs to the normal read function, since they are not encrypted in the first place. 2012-03-22 23:04:45 -07:00
Andrew de los Reyes d3361494ce WiiremoteReal for Mac: Find Wiimotes by name.
The decided way to find Wii Remotes is by their bluetooth name, so
this patch introduces common code to identify if a given string is a
valid Wiimote name.

On Mac, when scanning bluetooth, consult the function with all found
bluetooth devices.
2012-03-22 20:55:41 -07:00
Andrew de los Reyes 93b78d7139 WiimoteReal for Mac: Send commands on interrupt channel.
There are two ways to send commands to Wii Remotes:

- On command channel, with a first byte of 0x52. This works on
  Nintendo RVL-CNT-01, but not Nintendo RVL-CNT-01-TR wiimotes.

- On interrupt channel, with a first byte of 0xa2. This works on
  Nintendo RVL-CNT-01 and Nintendo RVL-CNT-01-TR wiimotes.

This patch switches Mac from the former to the latter. Windows and
Linux remain unchanged.
2012-03-22 20:17:28 -07:00
Andrew de los Reyes af8690a7d8 Revert "Add Support for Wii Motion Plus INSIDE Wii Remotes on Mac OS X."
This reverts commit c9dfcf8cf7.

That commit attempted to support all Wii Remotes on Mac OS X, but the
logic was incorrect, and as a result the original (non-TR) Wii Remotes
were broken by that change.

Future patches will address this problem in a better way.
2012-03-22 20:06:52 -07: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 5bf99f461b Add some padding to the GameList column sizes on non-MSW.
These underlying controls seem to insert 8px of divider between each column.
2012-03-22 18:45:11 -07:00
Shawn Hoffman 7d57b925e6 Disable wxHAS_MSW_TASKDIALOG because as of wxW svn r70933,
there is a bug with the wxPD_AUTO_HIDE style which can cause a non-dolphin
window to come to the foreground after auto-closing of the TaskDialog.
2012-03-24 20:59:20 -07:00
Shawn Hoffman e0941828f5 Fix uglies on gcpad/wiimote config pages.
Use wxPanel in place of wxNotebookPage (which is really just a typedef for wxWindow). This applies the correct background color for the page.
2012-03-23 00:27:54 -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
Pierre Bourdon 5242f09104 Fix Linux build: search for gthread-2.0 and pangocairo, then add both these libs to wx dependencies 2012-03-23 01:06:45 +01:00
LPFaint99 9c9e593479 fix crash on windows while changing exi/si devices when interface language is Japanese or Chinese 2012-03-22 14:52:20 -07:00
Pierre Bourdon 339ee98e62 Add a comment before the zcomploc test explaining the implementation/hack 2012-03-22 22:10:23 +01:00
Pierre Bourdon 0ffc12bbfd Merge branch 'master' into zcomploc-support
Conflicts:
	Source/Core/VideoCommon/Src/PixelShaderGen.cpp
2012-03-22 15:21:52 +01:00
Matthew Parlane d95e31af3f Fixes issue 4932 AGAIN :D 2012-03-22 22:52:12 +13:00
skidau 006923e871 Disabled zcomploc while update_enable has been set in zmode. Fixes zcomploc in F-Zero GX. 2012-03-22 20:36:41 +11:00
Matthew Parlane 2d75d7a8be Fixes issue 5278. Thanks to megazig for finding the bug :) 2012-03-22 21:15:05 +13:00
Matthew Parlane dc1cde4581 Re-enabled stfs, was caused by fast fp, thanks delroth! 2012-03-22 17:25:43 +13:00
Pierre Bourdon 70b6c4280f Compile with /fp:precise instead of /fp:fast in release mode on Windows
/fp:fast was introducing FP precision problems, and mixing it with some
/fp:precise code caused strange game behaviors, DSI exceptions and freezes.

This commit should fix most of the issues introduced by 3.0-73 (r95517a97).

Thanks to hatarumoroboshi@hotmail.com for tracking a lot of these Win32 bugs.

Fixes issue 4906.
Fixes issue 5138.
Probably fixes (not tested) issue 5067.
2012-03-21 22:43:44 +01:00
NeoBrainX 6202714efd Fix some regressions from r3b38295cbd08. 2012-03-20 22:36:21 +01:00
skidau 5e2fd45203 Merge fix 2012-03-20 21:01:15 +11: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
Matthew Parlane 14ea442382 srawx fixed thanks to boo toe. 2012-03-20 19:51:42 +13:00
Shawn Hoffman c0992cc73e Build fix:
Don't use isascii() - just do it ourselves
Bump required wxw version (for shared libs)
There still seems to be linking issues on some linux distros, I can't reproduce it though...
2012-03-19 23:16:01 -07:00
Shawn Hoffman dd5df17688 forgot to save my buffer :( 2012-03-19 12:07:47 -07:00
Shawn Hoffman cf52029b51 Check if the game's ID is valid before accessing it to set the ntsc u/j register. Prevents discs without a real ID from crashing dolphin. 2012-03-19 11:12:40 -07:00
Shawn Hoffman ff6023df27 Change wxString(<string>, wxConvUTF8) method of creating unicode from filenames to wxSafeConvertMB2WX()
(Just applied to FrameTools.cpp for now)
Allows one to properly restart Pokémon by hitting play :P

Ignore non-ASCII strings passed to DisplayMessage(). These strings would end up going to renderer display and statusbar/titlebar, which can't handle them properly.
2012-03-19 10:37:15 -07:00
Shawn Hoffman 4a1e8ba30a sigh...fix #ifdefs in last commit... 2012-03-19 07:46:23 -07:00
Shawn Hoffman 05c964e6d6 wxw3: OSX can use the same method of hiding cursors as MSW 2012-03-19 07:40:27 -07:00
Shawn Hoffman 35a5a3b9d4 Fix "Hid cursor" causing a wxWidgets warning 2012-03-19 06:54:02 -07:00
Shawn Hoffman c3a537728f Don't allow wiimote config while in Gamecube mode
Fixes crash when attempting to open emulated wiimote config in Gamecube mode
2012-03-19 06:03:23 -07:00
Matthew Parlane 418f46ea72 Fixed memory leak. And added braces to match the rest of the switch statement in FileIO. 2012-03-19 18:08:16 +13:00
marcosvitali 20eca1bf7e Ive 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.
2012-03-18 22:54:58 -03:00
Andrew de los Reyes d6d52920ec Fix segfault in LogWindow on Mac
Commit 9ddb67d4a9 seems to have
introduced a segfault on Mac. The issue is that it this change casts
wxConvCurrent (which is a wxMBConvLibc) to a wxCSConv. This is an
unsafe cast because wxCSConv has member variables, but wxMBConvLibc
does not.

In LogWindow.cpp, the constructor for m_SJISConv is dereferencing one
of those member variables, which is a dereference of uninitialized
memory!

This CL reverts to the older (non-crashing) constructor, but keeps the
behavior the same.
2012-03-18 15:11:34 -07:00
Shawn Hoffman c5d746f3d8 remove scons files from VS projects 2012-03-18 06:41:12 -07: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
Shawn Hoffman d9a7510937 forgot to add wxwidgets3 vcxproj to git, since it was masked by gitignore...
fix up misc warnings and build errors
2012-03-18 03:30:03 -07:00
Shawn Hoffman ff63c689d6 wxMSW no longer allows overriding OnPaintDrawImages, so remove the msw-specific drawing code from the GameListCtrl (it's rendered correctly by default) 2012-03-18 02:33:03 -07:00
Shawn Hoffman c3d13b048c build against wxWidgets3 from Externals on Windows.
use Externals version of libpng on Windows.
2012-03-18 02:31:19 -07:00
Matthew Parlane 8479d5bdf7 Some code clean up. I am terrible at coding styles... 2012-03-18 21:50:07 +13:00
Matthew Parlane 6fe495e1aa Fixed Pokepark 2! Maybe... :D Don't trust save states, although I think they are correct. File fd's were too large. Let me know if file related loading stops working in some games. fds are many to 1, not 1 to 1. ES has two instances available at a time. Sadly a clean up requires changing IWII_IPC_HLE_Device Constructor, as a deviceID doesn't make much sense per device. I won't do this until we have less branches :| 2012-03-18 21:00:23 +13:00
Shawn Hoffman 8bdf93a15c fix logwindow crash 2012-03-17 21:51:24 -07:00
Shawn Hoffman 1fbf2e38c4 wxw implements wxEVT_THREAD itself now 2012-03-17 21:50:40 -07:00