8903df7300
MMU: simplify code to restore original data register after failed load
...
Instead of passing the value around constantly, just store it in the regcache,
note where it is, and restore it on the exception path.
This saves a whole bunch of pushing and popping and gives a ~5% speed boost
in Rebel Strike. It's a bit ugly, but it simplifies a lot of code and is
faster, too.
2015-01-05 10:45:59 -08:00
53b44ccb3a
x64ABI: enhance MOVTwo to take an offset
...
This lets us merge displacements into MOVTwo in trampolines.
2015-01-05 10:45:58 -08:00
2a8936312e
Fastmem: jump to trampolines instead of calling them
...
Should be slightly faster, and also lets us skip the nops on the way back.
Remove the trampoline cache, since it isn't really useful anymore with this.
2015-01-05 10:45:54 -08:00
9923d705df
JIT: simplify and optimize memcheck macros
...
Instead of jumping over update code and similar, just jump directly to the
handler.
This avoids redundant exception checks in the case where we can't do fastmem
memory operations (e.g. paired loadstore).
2015-01-05 10:34:59 -08:00
6dc7cf29f3
JIT: implement crset special case
...
Rebel Strike seems to use this one.
2015-01-05 10:34:59 -08:00
0ff6ad5734
MMU: handle exception checks in fastmem
...
Inspired by a patch by magumagu.
2015-01-05 10:34:58 -08:00
190312e1a6
MMU: enable fastmem stores
2015-01-05 10:34:58 -08:00
8e1c92f2e7
MMU: remove goto in MMU fast past check
...
Split into a separate patch to avoid rebasing conflicts and to split from
functional changes.
2015-01-05 10:34:57 -08:00
6f028257d7
MMU: remove code that looks totally wrong
...
I don't think this affects any games (who puts PTEs in MEM2?) but it didn't
make any sense.
2015-01-05 10:34:57 -08:00
dde8b24d00
MMU: small simplification of TLB structure
...
We only need one "recent" per set, not NUM_WAYS recents. Slightly faster.
Breaks savestate compatibility.
2015-01-05 10:34:56 -08:00
a0e5c76a1f
Memmapfunctions: more refactoring and optimizations
...
Try to clean up some redundant code, simplify a few checks, and simplify
page accesses.
2015-01-05 10:34:56 -08:00
c2ed29fe0d
MemmapFunctions: various MMU optimizations
...
Small TLB lookup optimizations: this is the hot path for MMU code, so try to
make it better.
Template the TLB lookup functions based on the lookup type (opcode, data,
no exception).
Clean up the Read/Write functions and make them more consistent.
Add an early-exit path for MMU accesses to ReadFromHardware/WriteToHardware.
2015-01-05 10:34:55 -08:00
ea23ce2726
MMU: fix rollback in DSIs on page-crossing stores
...
I don't know if this affected anything, but it was subtly wrong.
Also reorganize the loads to match, for consistency.
2015-01-05 10:34:55 -08:00
acb583e607
Merge pull request #1815 from degasus/fix_det_dual_core
...
VideoCommon: fix deterministic dual core
2015-01-05 11:50:33 +01:00
519970c003
Added a callback option instead of using a thread to read the GC adapter.
2015-01-05 12:43:26 +11:00
8e9ff68352
Set the GC pad origin using the real hardware origin instead of the virtual hardware.
2015-01-05 12:27:36 +11:00
cd4e0399ec
Added an error recovery mechanism for the GC Adapter.
2015-01-05 12:27:36 +11:00
b65d5d6165
Merge pull request #1821 from Tilka/memleak
...
SI_GCAdapter: properly clean up libusb
2015-01-05 11:35:51 +11:00
fffd890be3
SI_GCAdapter: properly clean up libusb
2015-01-05 01:31:54 +01:00
399b6248d1
D3D: Further improve exclusive fullscreen state checking.
2015-01-05 00:01:22 +01:00
2f47faf016
Changed default freelook hotkey to match description
2015-01-04 17:07:43 -05:00
1b4b836731
Merge pull request #1743 from Stevoisiak/variableNamingConsistency
...
Globals.h: Variable naming consistency
2015-01-04 22:45:30 +01:00
bad5aef5df
Fix building with PCH disabled.
2015-01-04 10:45:35 -06:00
b7e056c74d
Host: Add Host_RendererIsFullscreen().
2015-01-04 17:09:56 +01:00
3b9c070ee0
D3D: Only try to apply exclusive mode when the renderer is in focus.
2015-01-04 16:42:16 +01:00
192c69f595
Merge pull request #1802 from Linktothepast/master
...
Gameini updates.
2015-01-04 20:36:02 +11:00
b06a3fb144
Merge pull request #1809 from magumagu/simplify-isi
...
JIT: simplify ISI handling.
2015-01-04 20:31:16 +11:00
4cbb690378
Merge pull request #1827 from FioraAeterna/fixcrdisasm
...
GekkoDisassembler: fix display of CRs in branch operations
2015-01-04 05:00:31 +01:00
8a6ea918b6
GekkoDisassembler: fix display of CRs in branch operations
2015-01-03 19:53:55 -08:00
03f716e651
Merge pull request #1823 from Tilka/buildbot_try
...
buildbot-try: allow remotes other than "origin"
2015-01-04 00:01:11 +01:00
142aa4a7fe
Merge pull request #1825 from Stevoisiak/RenameBuildDate
...
Change Build Date to Apploader Date
2015-01-03 23:10:12 +01:00
0b8ab84554
Change Build Date to Apploader Date
...
Date given by Dolphin did not match up with build dates found from
tcrf.net
2015-01-03 17:05:35 -05:00
110d494070
VideoCommon: fix deterministic dual core
2015-01-03 21:50:51 +01:00
acebd7fe4c
Merge pull request #1822 from JosJuice/lionux
...
Fix "Lionux" typo
2015-01-03 15:12:24 -05:00
33b03fab81
JIT: cleanups/optimizations for ps loadstore
...
I'm not quite sure why the float paired stores were written how they were,
but it should be more consistent now.
Also get rid of the use of a psTemp global that wasn't really needed.
Add some comments.
2015-01-03 10:30:13 -08:00
8229746695
buildbot-try: allow remotes other than "origin"
2015-01-03 17:07:02 +01:00
2560d89576
Fix "Lionux" typo
2015-01-03 15:42:28 +01:00
6bcdb10eee
CMake: simplify some expressions
2015-01-03 13:17:57 +01:00
c3d52e0476
Merge pull request #1789 from Tilka/memleak
...
DSPHLE: fix an unimportant memory leak
2015-01-03 01:50:16 +01:00
799d69c69d
Merge pull request #1816 from Armada651/master
...
OGL: Fix stereoscopy not being applied properly while the game is running.
2015-01-03 01:48:55 +01:00
dddaa11595
OGL: Fix stereoscopy not being applied properly while the game is running.
2015-01-03 01:36:43 +01:00
3738d27b24
Merge pull request #1776 from JosJuice/cleanrip-wii-discs
...
Fix CleanRip reading Wii discs
2015-01-03 10:42:51 +11:00
598dc033f2
Merge pull request #1739 from JosJuice/wii-di-timing
...
Accurate loading times for Wii games
2015-01-03 10:41:18 +11:00
7dc6484fe7
Merge pull request #1805 from Armada651/dubois
...
PostProcessing: Use Dubois algorithm for anaglyph shader.
2015-01-02 20:04:04 +01:00
582a15deb3
PostProcessing: Mark all shaders constant.
2015-01-02 20:03:20 +01:00
26a9afa0e7
Anaglyph: Use matrices instead of vectors.
2015-01-02 14:32:42 +01:00
7cf180d6b0
Additional gameini changes.
...
Remove FastDiscSpeed = 1 from Star Wars: Rogue Leader and efb to ram
from Super Smash
Bros. Brawl, put a note with suggested settings instead.
2015-01-02 12:22:18 +02:00
1e370550c4
JIT: simplify ISI handling.
...
When we try to JIT from a block which doesn't exist, don't JIT any code;
just update the PPC state to indicate an ISI. This is a little simpler,
and avoids abusing the JIT block cache.
2015-01-01 19:25:48 -08:00
491de39325
PixelShaderCache: Implement Dubois algorithm in anaglyph shader.
2015-01-02 03:06:11 +01:00
e3969f763e
PostProcessing: Use Dubois algorithm for anaglyph shader.
2015-01-02 03:02:28 +01:00