JosJuice
5162ed4d5f
DVDInterface: Use default delay for DVDLowClearCoverInterrupt
...
The old delay was probably a hack to make up for the incorrect
disc speeds. Using it with the new disc speeds made
Resident Evil Archives: Resident Evil Zero freeze when starting.
2015-01-06 21:25:17 +01:00
Markus Wick
f63361ad26
Merge pull request #1810 from Stevoisiak/FreelookDefaultHotkeyFix
...
Changed default freelook hotkey to match description
2015-01-06 20:52:00 +01:00
Markus Wick
09a10622dd
Merge pull request #1621 from FioraAeterna/pscleanup
...
JIT: cleanups/optimizations for ps loadstore
2015-01-06 20:12:50 +01:00
Fiora
8f7c799794
JIT: catch illegal instruction errors
...
Still crash, but at least give a message informing the world that it happened.
2015-01-06 11:06:49 -08:00
Markus Wick
25fac0282c
Merge pull request #1764 from Armada651/safe-exclusive
...
D3D: Only try to apply exclusive mode when the renderer is in focus.
2015-01-06 11:00:47 +01:00
Markus Wick
d8d4c94e07
Merge pull request #1819 from Tilka/cmake
...
CMake: simplify some expressions
2015-01-06 09:27:59 +01:00
Fiora
e85f0ff179
MMU: fix problems with blocks that cross vmem page boundaries
...
In rare cases, this can result in a violation of the JIT block cache constraint
that blocks must end in the same place. This can cause instability, lockups,
due to blocks not properly being invalidated properly.
l Please enter the commit message for your changes. Lines starting
2015-01-05 10:46:04 -08:00
Fiora
b058bbd223
JIT: move mfcr code to JitAsmCommon
...
It's like 80+ instructions, so inlining it on every use of mfcr is probably
not the best for the icache.
2015-01-05 10:46:03 -08:00
Fiora
821db9798c
Memmap: clean up function argument names.
...
To be more consistent overall.
2015-01-05 10:46:02 -08:00
Fiora
3d2492627f
Fastmem: increase the size of trampoline cache in MMU mode, check space
...
Fastmem in MMU mode generates way more trampolines than normal, so we need
a bunch more space too, lest we run out of room.
2015-01-05 10:46:01 -08:00
Fiora
1ee83e332e
MMU: optimize PTE lookup code
...
Pull out calculation of PTE1 instead of comparing the separate parts.
2015-01-05 10:46:01 -08:00
Fiora
16e756cb39
MMU: fix TLB behavior on setting C bit
...
We shouldn't be updating the TLB when setting the C bit.
Bug reported by tueidj.
2015-01-05 10:45:59 -08:00
Fiora
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
Fiora
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
Fiora
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
Fiora
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
Fiora
6dc7cf29f3
JIT: implement crset special case
...
Rebel Strike seems to use this one.
2015-01-05 10:34:59 -08:00
Fiora
0ff6ad5734
MMU: handle exception checks in fastmem
...
Inspired by a patch by magumagu.
2015-01-05 10:34:58 -08:00
Fiora
190312e1a6
MMU: enable fastmem stores
2015-01-05 10:34:58 -08:00
Fiora
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
Fiora
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
Fiora
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
Fiora
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
Fiora
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
Fiora
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
skidau
519970c003
Added a callback option instead of using a thread to read the GC adapter.
2015-01-05 12:43:26 +11:00
skidau
8e9ff68352
Set the GC pad origin using the real hardware origin instead of the virtual hardware.
2015-01-05 12:27:36 +11:00
skidau
cd4e0399ec
Added an error recovery mechanism for the GC Adapter.
2015-01-05 12:27:36 +11:00
Tillmann Karras
fffd890be3
SI_GCAdapter: properly clean up libusb
2015-01-05 01:31:54 +01:00
Stevoisiak
2f47faf016
Changed default freelook hotkey to match description
2015-01-04 17:07:43 -05:00
Jules Blok
b7e056c74d
Host: Add Host_RendererIsFullscreen().
2015-01-04 17:09:56 +01:00
skidau
b06a3fb144
Merge pull request #1809 from magumagu/simplify-isi
...
JIT: simplify ISI handling.
2015-01-04 20:31:16 +11:00
Fiora
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
Tillmann Karras
6bcdb10eee
CMake: simplify some expressions
2015-01-03 13:17:57 +01:00
Pierre Bourdon
c3d52e0476
Merge pull request #1789 from Tilka/memleak
...
DSPHLE: fix an unimportant memory leak
2015-01-03 01:50:16 +01:00
skidau
3738d27b24
Merge pull request #1776 from JosJuice/cleanrip-wii-discs
...
Fix CleanRip reading Wii discs
2015-01-03 10:42:51 +11:00
skidau
598dc033f2
Merge pull request #1739 from JosJuice/wii-di-timing
...
Accurate loading times for Wii games
2015-01-03 10:41:18 +11:00
magumagu
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
Fiora
92a0716f65
Memory: forceinline read/write hardware functions, TLB/page functions
...
MSVC wasn't actually inlining these. Should give a nontrivial performance boost
in MMU-heavy games.
2014-12-30 18:04:21 -08:00
skidau
5d55bceeb3
Merge pull request #1773 from FioraAeterna/fixcarryearlyblockend
...
JIT: fix carry optimization on blocks that end early
2014-12-30 11:15:45 +11:00
Tillmann Karras
a00ae4ad79
DSPHLE: fix an unimportant memory leak
2014-12-29 18:39:24 +01:00
Ryan Houdek
a09d854636
Merge pull request #1760 from rohit-n/shadow
...
DSPLLE: Silence -Wshadow warning and conform more to style.
2014-12-28 16:43:08 -06:00
Markus Wick
c5a0b6bf50
Merge pull request #1432 from randomstuff/linux-perf
...
Add Linux perf JIT support (/tmp/perf-$pid.map)
2014-12-28 23:12:52 +01:00
Ryan Houdek
15f074dd21
Merge pull request #1766 from Armada651/enable-stereo
...
Enable stereoscopy settings.
2014-12-28 15:14:53 -06:00
FL.dolphinemu
78f8bf7423
Issue 7968: Added keybinds for increasing, decreasing, and muting audio.
2014-12-28 22:03:21 +01:00
Rohit Nirmal
fd0d19aa82
DSPLLE: Silence -Wshadow warning and conform more to style.
2014-12-28 09:52:31 -06:00
JosJuice
bb93336ecf
DiscIO: Replace "raw" functions with "decrypt" parameters
...
This is intended to make decryption look less implicit in the code.
2014-12-28 10:35:48 +01:00
Fiora
354e255827
JIT: fix carry optimization on blocks that end early
...
I don't know if this shows up currently, but e.g. if you force blocks to be
under a certain length, this problem (a crash) shows up.
2014-12-27 23:20:05 -08:00
JosJuice
72f8f243c7
Never decrypt data when using DI command 0xA8
...
CleanRip relies on this when ripping Wii discs.
2014-12-27 13:49:25 +01:00
Ryan Houdek
1dbd8c0b96
Merge pull request #1745 from degasus/remove_gpu_sync
...
VideoCommon: Make GPU syncing hack optional
2014-12-27 04:26:17 -06:00