Commit Graph

12723 Commits

Author SHA1 Message Date
magumagu 282e9bd292 JitCache: use a custom bit-set class.
Unfortunately, this appears to be necessary for the sake of performance;
the standard library equivalents don't work well enough on Visual Studio
2013. vector<bool>::insert() is way too slow in debug
builds to be usable, and std::bitset generates inefficient code in release
builds.
2014-05-24 14:17:53 -07:00
magumagu 6bb08de8a0 JIT: get rid of useless code in JitCache.cpp. 2014-05-24 11:04:24 -07:00
Linktothepast 17bdb70abd Gameini updates.
Change Nes games efb scaling to 1x. Also fix issue 7314.
2014-05-24 14:39:52 +03:00
Linktothepast 306bc3d829 Gameini updates.
Various changes.
2014-05-24 14:39:52 +03:00
magumagu 336b55bbc4 BS2 emulation: set up a reasonable BAT during startup.
It doesn't really matter much at the moment given our current terrible MMU
emulation, but it will start mattering once our MMU emulation gets more
accurate.
2014-05-24 03:46:12 -07:00
magumagu 440246a190 Interpreter: use numeric_limits instead of FLT_MAX.
Minor cleanup, and fixes compilation on some systems.
2014-05-24 10:58:15 +02:00
Tony Wasserka cffa848b99 Merge pull request #390 from magumagu/fp-reciprocal
Add accurate implementations of frsqrte and fres
2014-05-24 10:45:01 +02:00
shuffle2 ca3002977b Merge pull request #256 from magumagu/dsound-notify
DSound: use DSound notifications to produce sound.
2014-05-23 17:02:55 -07:00
Pierre Bourdon d71e20880f Merge pull request #398 from Sonicadvance1/Fix-Spaced-Build-Path
Fixes build if the build path has spaces in it.
2014-05-24 01:29:20 +02:00
Ryan Houdek d710e3af82 Fixes build if the build path has spaces in it. 2014-05-23 18:24:08 -05:00
magumagu 6955fef161 Interpreter: Code style fixes. 2014-05-23 15:06:09 -07:00
magumagu d0ed3b8192 Jit: Use infinity and NaN from numeric_limits.
MSVC's implementation of INFINITY is unusable.
2014-05-23 14:59:03 -07:00
magumagu a9a2d3d98d New frsqrte implementation; verified accurate.
This is similar to the old implementation, but it uses smaller tables, and
handles more edge cases correctly.  (hwtest coming soon.)
2014-05-23 14:59:02 -07:00
magumagu 129e76e60d Interpreter: refactor the rsqrte code, and use it for ps_rsqrte. 2014-05-23 14:59:00 -07:00
magumagu 567724b2f8 Jit: get rid of incorrect implementations of fres and frsqrte.
The existing implementations produce answers which aren't consistent with
the hardware, and games care about correct floating point math.

These can be reimplemented at some point in the future, if someone cares
enough, but the general case is probably too much code to inline.

(I'm leaving the ARM implementations in place by request, even though they
suffer the same issues.)
2014-05-23 14:57:34 -07:00
Pierre Bourdon c6b7b4c790 Merge pull request #396 from kayru/opt_icache_invalidation
JIT: Optimized iCache invalidation
2014-05-23 22:25:58 +02:00
Yuriy O'Donnell ac75766c25 removed trailing whitespace 2014-05-23 21:14:48 +02:00
Yuriy O'Donnell d08abfc14e JIT: JitBaseBlockCache::InvalidateICache no longer memsets iCache memory to INVALID_BYTE.
This is redundant, since we reset the valid_block bits any way.
However, this was a source of a significant performance issues in some games.
In particular, Metal Gear Solid: Twin Snakes.
2014-05-23 20:40:45 +02:00
Yuriy O'Donnell de1e2127dc JIT: JitBaseBlockCache::valid_block is now std::vector<bool>
This was previously a std::bitset, which resulted in generation of suboptimal code by VS2013 compiler.
See https://gist.github.com/kayru/753db9607d680e26194b
2014-05-23 20:32:25 +02:00
Rachel Bryk e6684d17c1 Fix a couple race conditions.
Checks if another game is already starting to boot before starting to boot a new one, and only change video backend, and dual core if a game is actually not running.
2014-05-23 10:22:00 -04:00
Rachel Bryk 61d3360033 Limit netplay chat messages to 2000 characters.
There's not really a good reason to be sending messages longer than that, and very long messages can hang dolphin for quite a long time.
2014-05-23 08:11:49 -04:00
Rachel Bryk cd299f0703 Flash netplay window when someone joins if the window doesn't have focus. 2014-05-23 07:30:08 -04:00
Rachel Bryk 0782d106db Check for errors when reading lines from ini files.
Fixes issue 7283.
2014-05-23 03:17:19 -04:00
magumagu 2f8a147eda Interpreter: make fres match hardware.
New table-based implementation written based on actual hardware behavior.
(hwtest coming soon).
2014-05-22 19:48:48 -07:00
magumagu ad4ad7c1ed Use accurate frsqrte in Interpreter.
The implementation of frsqrte exposed by this change isn't completely
correct; that will be fixed in a later commit.
2014-05-22 19:46:27 -07:00
shuffle2 b58753bd69 Merge pull request #370 from Sonicadvance1/remove_specialized_memcmp
Removes ZeroFrog's "optimized" memcpy and memcmp functions.
2014-05-22 13:02:11 -07:00
shuffle2 fc41a53b46 Merge pull request #309 from magumagu/jit-unify-asm
JIT: unify JitAsm for JIT64 and JIT64IL.
2014-05-21 23:10:08 -07:00
shuffle2 c308657779 Merge pull request #376 from lioncash/wx
Wx cleanup
2014-05-21 21:54:00 -07:00
shuffle2 7a7aa8c5a3 Merge pull request #386 from myownfriend/master
Fixed formatting of post-processing shaders so they better match Dolphin's coding style
2014-05-21 21:42:57 -07:00
shuffle2 c4e60d5353 Merge pull request #356 from Sonicadvance1/Fix-MMUAnalyst
Fixes games that use the MMU to page in code(Rogue Leader).
2014-05-21 20:59:25 -07:00
shuffle2 6544d53c16 Merge pull request #361 from LPFaint99/wiisave
Export wii saves to the "User" directory
2014-05-21 20:17:18 -07:00
shuffle2 9ce269c7dc Merge pull request #382 from magumagu/faster-fast-disc-speed
DVDInterface: make fast disc speed faster.
2014-05-21 20:12:38 -07:00
shuffle2 4fb10a11b9 Merge pull request #379 from jordan-woyak/gamelist-size-fix
Fix game list size display.
2014-05-21 19:52:10 -07:00
shuffle2 dd413269e3 Merge pull request #343 from jordan-woyak/disable-sdl-windows
Disable SDL input on Windows.
2014-05-21 19:47:44 -07:00
myownfriend 7853766a6b Update emboss.glsl 2014-05-21 17:09:26 -04:00
myownfriend 24027b78e3 Update emboss.glsl 2014-05-21 16:45:32 -04:00
myownfriend 12a9c5f0ce Update fire2.glsl 2014-05-21 16:43:55 -04:00
myownfriend f5579d9816 Update cool1.glsl 2014-05-21 16:42:18 -04:00
myownfriend cd6aa34979 Update acidmetal.glsl 2014-05-21 16:38:25 -04:00
myownfriend c3864db4b3 Update 32bit.glsl 2014-05-21 16:36:46 -04:00
myownfriend 41f13f9c99 Update primarycolors.glsl 2014-05-21 16:29:25 -04:00
myownfriend c2e5e030b0 Update asciiart.glsl 2014-05-21 15:15:48 -04:00
myownfriend 28c1e6c6ca Update 16bit.glsl
Sorry. Made a little copy and paste error.
2014-05-21 15:14:56 -04:00
myownfriend 9b022e023b Update firewater.glsl 2014-05-21 14:55:45 -04:00
myownfriend dd91d86095 Update 16bit.glsl 2014-05-21 14:53:48 -04:00
myownfriend d2a74bf294 Update chrismas.glsl 2014-05-21 14:52:46 -04:00
myownfriend fd1d0e6e1e Update posterize.glsl 2014-05-21 14:51:25 -04:00
myownfriend d8fe09e9b1 Update nightvision2scanlines.glsl 2014-05-21 00:11:11 -04:00
myownfriend 1fe8d1ae16 Update nightvision2.glsl 2014-05-21 00:10:07 -04:00
myownfriend 753a937289 Update auto_toon2.glsl 2014-05-21 00:06:38 -04:00