Commit Graph

13500 Commits

Author SHA1 Message Date
flacs 95d958c03d Merge pull request #2889 from lioncash/interp
Interpreter: Use std::isnan instead of IsNAN
2015-08-21 21:43:08 +02:00
Lioncash caec42135d MathUtil: Remove IsNAN and IsINF
These aren't necessary, since the stdlib provides equivalents.
2015-08-21 15:05:43 -04:00
flacs bb7f3d1822 Merge pull request #2867 from Tilka/mtspr_hid0
Jit64: implement HID0 case of mtspr
2015-08-21 21:04:35 +02:00
flacs 01aea965ba Merge pull request #2864 from Tilka/fpscr
Jit64: implement FPSCR related instructions
2015-08-21 21:04:20 +02:00
Lioncash 18d658df1f Interpreter_FloatingPoint: Use std::isnan instead of IsNAN
Same thing, except one is part of the stdlib.
2015-08-21 15:04:03 -04:00
degasus 78aa01e06e Jit64: Faster linking of continuous blocks
We compile the blocks as they are executed, so it's common
to link them continuously. We end with calling JMP after every
block, but often just with a distance of 0.
So just emitting NOPs instead also "calls" the next block, but
easier for the CPU.
2015-08-21 17:41:53 +02:00
Markus Wick c325c310d6 Merge pull request #2884 from lioncash/emitter
x64Emitter: Minor cleanup
2015-08-21 13:03:51 +02:00
Ryan Houdek 5f628749ff Merge pull request #2886 from Sonicadvance1/aarch64_faster_lfd
[AArch64] Optimize lfd instructions if possible.
2015-08-21 05:38:53 -05:00
Ryan Houdek df53b37253 [AArch64] Optimize lfd instructions if possible.
If we are going to be using lfd, then chances are it is going to be used in double heavy areas of code.
If we only need to load the lower register, then we should also not worry about having to insert in to the low 64bits of the guest register.
So add a new flag to the backpatching to handle lfd to directly to the destination register.
This gives ~3% performance improvement to Povray.
2015-08-21 04:31:54 -05:00
Markus Wick 4f45d71840 Merge pull request #2760 from Sonicadvance1/aarch64_fcmp
[AArch64] Implement fcmp{u,o}
2015-08-21 11:03:20 +02:00
Tillmann Karras 39ced2a2d7 AVIDump: fix -Wsign-compare warning
Cast the other side of the comparison to avoid a warning with newer
ffmpeg/libav versions (cb3591e69738c808d26ba15eb02414fedfcd91cc).
2015-08-21 10:26:35 +02:00
Markus Wick 6cb87a9227 Merge pull request #2837 from Sonicadvance1/aarch64_faster_nonpaired
[AArch64] Optimize cases when an FPR is only used for non-paired ops.
2015-08-21 09:51:45 +02:00
Jeffrey Pfau 65ee5a1d36 DolphinWX: Finish removing bandaid from 704f787 2015-08-20 22:39:24 -07:00
Ryan Houdek 7ce4c3138e [AArch64] Optimize cases when an FPR is only used for non-paired ops. 2015-08-20 23:36:29 -05:00
Lioncash a59f00a5e4 x64Emitter: Remove unused code 2015-08-20 23:05:20 -04:00
Lioncash b903921b14 x64Emitter: Make WriteModRM and WriteSIB private
These shouldn't be public.
2015-08-20 19:29:40 -04:00
degasus 17932935d9 Profiler: Sort output by total time 2015-08-20 11:50:43 +02:00
Lioncash f481a306c2 Merge pull request #2882 from lioncash/namespace
Jit: Remove unnecessary namespace prefixes
2015-08-20 05:38:29 -04:00
Lioncash 95c57fcec1 Jit: Remove unnecessary namespace prefixes 2015-08-20 05:20:19 -04:00
Markus Wick cb264df64c Merge pull request #2874 from barat/master
VideoCommon: Allow more Ram for HiresTexture if system memory is over 4GB
2015-08-20 11:08:42 +02:00
Lioncash 822cf2bcbf IniFile: Mark getter functions as const 2015-08-19 22:27:18 -04:00
Lioncash 9e9a293a85 Frame/TASInputDlg: Remove unused functions 2015-08-19 20:36:16 -04:00
Lioncash 5b86e7335f Merge pull request #2795 from ddcc/master
Fix some compilation warnings
2015-08-19 17:40:04 -04:00
Bartosz Telesiński a52aaf22ba VideoCommon: Allow more Ram for HiresTexture if system memory is over 4GB 2015-08-19 23:13:09 +02:00
flacs b0c9d73465 Merge pull request #2842 from Tilka/bmi2_flags
x64Emitter: don't check flags for most BMI2 ops
2015-08-19 21:38:09 +02:00
Dominic Chen 09714f86c3 Fix some compilation warnings 2015-08-19 11:07:54 -04:00
degasus 896a02b3a8 DSP HLE: Remove timing informations from ucodes
On HLE, we don't emulate the timings on HLE, so there is also no need
to setup periods callbacks.
2015-08-19 16:20:17 +02:00
degasus 7277eb0e6c AX-HLE: Call HLE on mailbox write
It was done on Update() which was called exactly every 5ms.
But the game is allowed to use the DSP more often, eg to generate 48kHz audio.
2015-08-19 16:19:06 +02:00
Markus Wick bdbe723d6e Merge pull request #2870 from Sonicadvance1/GLInterface_Fix
Fix a memory leak in the EGL GLInterface.
2015-08-19 11:14:25 +02:00
Lioncash 291f857b0e Merge pull request #2859 from lioncash/netplay
NetPlay: Minor cleanup
2015-08-19 04:51:28 -04:00
Tillmann Karras 0f2c656687 Jit64: implement FPSCR related instructions 2015-08-18 18:12:32 +02:00
Ryan Houdek 3f1055de94 Fix a memory leak in the EGL GLInterface. 2015-08-18 08:26:45 -05:00
Tillmann Karras 415ad94dbe Interpreter: fix undefined bits of mffs
Lioncash tested this on hardware.
2015-08-18 15:07:14 +02:00
Lioncash 761e087e52 NetWindow: Remove translation marker from empty string 2015-08-17 21:56:52 -04:00
Lioncash 65adf76698 NetWindow: non-ugly way to check for window focus 2015-08-17 21:56:51 -04:00
Lioncash 2b4a249dea NetWindow: Replace old wx event binding types 2015-08-17 21:56:50 -04:00
Lioncash ca0b9481ea ChangeGameDialog: Internally set the chosen game name
Passing in a reference to an empty string is unnecessary and
overcomplicates design.
2015-08-17 21:56:48 -04:00
Lioncash af35f38491 NetWindow: Minor simplifications 2015-08-17 21:56:46 -04:00
Lioncash 11f3ded296 NetPlay: Return mapping arrays and player list vectors directly
Simplifies pad map dialog initialization
2015-08-17 21:56:25 -04:00
Ryan Houdek 4baaa3755e Merge pull request #2840 from zeroZshadow/master
Ignore all writes to BBA_TXFIFOCNT
2015-08-17 10:38:00 -05:00
Markus Wick ff95fa8a6d Merge pull request #2861 from lioncash/param
VideoCommon: Remove unused parameters
2015-08-17 15:02:44 +02:00
Markus Wick 239ad678f1 Merge pull request #2855 from Armada651/revert-clamp
Revert "VideoCommon: Clamp integer conversions."
2015-08-17 15:01:27 +02:00
Tillmann Karras 1c78c7b864 Jit64: implement HID0 case of mtspr 2015-08-17 13:31:57 +02:00
Pierre Bourdon 58b4b7edea Merge pull request #2863 from Tilka/fallback
Jit64: load PC only once after fallbacks
2015-08-17 10:29:54 +02:00
Tillmann Karras fbdc20ac37 Jit64: load PC only once after fallbacks 2015-08-17 06:05:10 +02:00
Tillmann Karras c4a6612b01 PowerPC: fix typo in FPSCR comment 2015-08-17 06:03:11 +02:00
Tillmann Karras a9447a8606 PowerPC: drop instructions not supported by GC/Wii 2015-08-17 06:03:11 +02:00
Lioncash 8e17c710f3 TextureConversionShader: Remove an unused parameter 2015-08-16 21:10:54 -04:00
Lioncash 0e41b973c7 VertexShaderManager: Remove unused parameter 2015-08-16 21:07:10 -04:00
Lioncash a824f6a74c Debugger: Remove unused instance variables 2015-08-16 18:30:07 -04:00
Lioncash c593bd226c Frame: Remove an unused enum and array 2015-08-16 18:24:58 -04:00
Lioncash 7aa76a84ef DolphinWX: Fix memory leaks occurring in ISOProperties
This would only occur for Wii discs. While the tree data itself would be deleted, the allocated contents of it were not.
2015-08-16 05:40:07 -04:00
Lioncash b1af2a6bbc NetPlay: Use std::array for the pad mappings 2015-08-16 00:08:09 -04:00
Lioncash e3ffb2dd16 NetPlayProto: Minor cleanup 2015-08-16 00:00:59 -04:00
Markus Wick b8a35f6996 Merge pull request #2856 from mathieui/netplay-free
[netplay] Fix a crash
2015-08-15 23:13:18 +02:00
Markus Wick b3045f9664 Merge pull request #2852 from aserna3/master
Changed GC adapter "Direct Connect" to false by default
2015-08-15 21:25:23 +02:00
Markus Wick e60018abd4 Merge pull request #2854 from Tilka/valgrind
Fix some small stuff found with Valgrind
2015-08-15 20:52:12 +02:00
Ryan Houdek 909ab23df5 Merge pull request #2853 from degasus/arm
JitArm64: Fix jit clearing
2015-08-15 13:50:36 -05:00
Markus Wick b5a5883792 Merge pull request #2851 from JosJuice/unknown-instruction
Restore old assert message for unknown instruction
2015-08-15 20:10:16 +02:00
Markus Wick 3469694b46 Merge pull request #2676 from Stevoisiak/SpellingCorrections
Minor spelling corrections
2015-08-15 18:36:56 +02:00
zeroZshadow 84764db3b2 Rewrite RecvStart error checking as suggested by shuffle2 2015-08-15 16:46:37 +02:00
Jules Blok 7e266b080f TextureCache: Remove redundant floor(). 2015-08-15 15:30:50 +02:00
mathieui 2420004af8 [Netplay] Always set a playerid
And don’t blindly dereference a pointer.
2015-08-15 15:12:20 +02:00
Jules Blok b01ca1794a Revert "VideoCommon: Clamp integer conversions."
This reverts commit 0f2c72f0f8.
2015-08-15 13:50:43 +02:00
Tillmann Karras b0cc02658b CachedInterpreter: avoid uninitialized value
(The CachedInterpreter backend does not support block linking yet.)
2015-08-15 13:01:26 +02:00
Tillmann Karras b3ff66dc7a evdev: don't pass null path to the kernel 2015-08-15 12:51:34 +02:00
Tillmann Karras 0b73a9ed25 PulseAudio: fix small memleak 2015-08-15 12:51:11 +02:00
degasus 9bfff0d461 JitArm64: Fix jit clearing
We have to reset m_lastCacheFlushEnd on clearing.
2015-08-15 11:41:01 +02:00
Anthony Serna b6da5490c1 Changed GC adapter "Direct Connect" to false by default 2015-08-15 02:09:47 -07:00
JosJuice c49074742c Restore old assert message for unknown instruction
The assert(0) that was introduced in PR #2811 is not user friendly
since it has no explanation at all about what happened. Regular users
probably won't think of looking at the log to get more information.
2015-08-15 10:00:49 +02:00
flacs e28fa1588f Merge pull request #2850 from Tilka/alloc_order
Jit64: clean up GetAllocationOrder()
2015-08-15 09:47:56 +02:00
Lioncash 70e91af405 Merge pull request #2834 from endrift/tasinputdlg-threading
DolphinWX: Ensure TASInputDlg only gets modified on the main thread
2015-08-15 02:45:13 -04:00
Tillmann Karras dd5cc34951 Jit64: clean up GetAllocationOrder() 2015-08-15 07:25:14 +02:00
flacs d8d62336b5 Merge pull request #2849 from lioncash/cond
JitInterface: Fix null checking in GetProfileResults
2015-08-15 00:59:19 +02:00
Lioncash 8db43501d5 JitInterface: Fix null checking in GetProfileResults
Technically a null pointer dereference can occur here.
2015-08-14 18:51:54 -04:00
Tillmann Karras 022286fb90 x64Emitter: don't check flags for most BMI2 ops
With the exception of BZHI, BMI2 instructions don't affect flags, so
don't check if they're locked.
2015-08-14 23:39:17 +02:00
Tillmann Karras e5a2334744 Jit64: make use of ANDN again
This time, make sure not to use it with immediates.
2015-08-14 21:25:52 +02:00
Tillmann Karras 5e9fe4cd13 x64Emitter: check for immediates in BMI ops 2015-08-14 21:25:41 +02:00
Ryan Houdek 3bc5505272 Merge pull request #2814 from Sonicadvance1/aarch64_faster_fastmem
[AArch64] Banish slowmem operations to farcode.
2015-08-14 12:03:46 -05:00
Ryan Houdek f76a30c9fd Merge pull request #2845 from degasus/arm
JitArm64: Implement dcbt
2015-08-14 12:03:25 -05:00
degasus 715802d5aa JitArm64: Move all pointers into the map
And cleanup all of the old code for sharing and generating this pointers.
2015-08-14 11:24:11 -05:00
degasus 878f919f63 JitArm64: Fastmem: fixup map & lookup 2015-08-14 11:24:03 -05:00
flacs 9ef349181e Revert "Jit64: use BMI1's ANDN for andcx" 2015-08-14 18:10:07 +02:00
Pierre Bourdon 86c28bfac6 Bump save state version. 2015-08-14 16:17:28 +02:00
Pierre Bourdon 2d5d203be8 ZeldaHLE: Add UCode version for Pikmin 1 PAL. 2015-08-14 16:01:36 +02:00
Pierre Bourdon 18d0f15885 ZeldaHLE: Fix the AFC remaining samples logic on looping. 2015-08-14 16:01:36 +02:00
Pierre Bourdon 9105a76eb1 ZeldaHLE: Comment on the differences between FSA/ZTP UCodes. 2015-08-14 16:01:36 +02:00
Pierre Bourdon fcbed7483d ZeldaHLE: Properly read remaining AFC samples when a whole frame is available. 2015-08-14 16:01:36 +02:00
Pierre Bourdon a602466e4f ZeldaHLE: Implement patterns 2/3 automatic regeneration. 2015-08-14 16:01:35 +02:00
Pierre Bourdon dd1cb88e9a ZeldaHLE: Add new UCode version for Pikmin 1/2 New Play Control 2015-08-14 16:01:35 +02:00
Pierre Bourdon c6c0f69c6b ZeldaHLE: really fix the constant pattern variable step computation.
This time tested by comparing pattern indexes across LLE and HLE with the same
inputs. Matches on the 3-4 test cases I made.
2015-08-14 16:01:35 +02:00
Pierre Bourdon fddb3f0d3c ZeldaHLE: fix the constant pattern variable step computation. 2015-08-14 16:01:35 +02:00
Pierre Bourdon 090723167f ZeldaHLE: Implement constant patterns with variable step (sample source 0A). 2015-08-14 16:01:35 +02:00
Pierre Bourdon fbe727b0bb ZeldaHLE: Support GBA crypto through command 0C. Reuses the pre-existing GBA crypto code from the separate UCode. 2015-08-14 16:01:35 +02:00
Pierre Bourdon 0b1af50316 ZeldaHLE: Initial support for command 0C in both styles implemented by the light protocol. Logs, but doesn't crash anymore. 2015-08-14 16:01:35 +02:00
Pierre Bourdon 32fcd8ec7c ZeldaHLE: Special case Cmd03 NOP handling to make it clear it shouldn't ever happen on light protocol UCodes. 2015-08-14 16:01:34 +02:00
Pierre Bourdon bbfa238657 ZeldaHLE: Document that the crashy commands are not actually crashy on light protocol, just never used. 2015-08-14 16:01:34 +02:00
Pierre Bourdon 25430e7923 ZeldaHLE: Add a flag to disable Cmd0D on older UCodes.
Shouldn't really matter -- these NOP commands aren't really used, but since it
reads an argument it's probably better to explicitly NOP it for safety.
2015-08-14 16:01:34 +02:00
Pierre Bourdon 8526a4131c ZeldaHLE: Properly implement light command 03.
On at least one version (AC/Pikmin 1 NTSC) it doesn't even send a sync mail and
just reloops to the dispatcher.
2015-08-14 16:01:34 +02:00
Pierre Bourdon 7f7e036a02 ZeldaHLE: Add a missing game to the list of games to look at. 2015-08-14 16:01:34 +02:00
Pierre Bourdon cdb1022696 Zelda HLE: Add support for the ZTP Wii UCode. 2015-08-14 16:01:34 +02:00
Pierre Bourdon 5f61ab3e21 Zelda HLE: Update the CRC to games mapping (documentation only). 2015-08-14 16:01:33 +02:00
Pierre Bourdon addb5cb887 Zelda HLE: Support the per-frame sync protocol used by SMS.
Didn't test if SMS sounds right (travelling with no headphones \o/) but the
waveform looks ok and the mails are flowing as expected.
2015-08-14 16:01:33 +02:00
Pierre Bourdon 89037781e0 Zelda HLE: Make the implementation less strict for recoverable errors.
It kind of sucks that we don't emulate some behaviors properly, but there is
very little ROI for some of these features and I'm not going to spend time
implementing them any time soon. Making the PanicAlerts optional allows for
more testing of the core features on more games while "just" breaking less
important features like reverb.
2015-08-14 16:01:33 +02:00
Pierre Bourdon 837b8041c0 Zelda HLE: Only alert for mixing into back buffers for recent UCode versions.
On older versions there is no such concept of a "back buffer" since positional
audio is not supported. These buffers are just used for temp mixing, and while
it would be really nice if we could support more of that inter-buffer mixing
(TODO :) ) it does not warrant a PanicAlert at this time.
2015-08-14 16:01:33 +02:00
Pierre Bourdon 840a4157b0 Zelda HLE: Properly implement LQ AFC decoding.
Typos and stupid mistakes + untested code = dirty Git history.
2015-08-14 16:01:33 +02:00
Pierre Bourdon 82689677d9 Zelda HLE: Implement LQ AFC decoding (samples source 0005). 2015-08-14 16:01:33 +02:00
Pierre Bourdon b3a327f02b Zelda HLE: Implement sample source 3.
"Square" wave at a 0.25 duty cycle (25% up 75% down).
2015-08-14 16:01:32 +02:00
Pierre Bourdon 3c2b22bc09 Zelda HLE: Add basic support for Luigi's Mansion.
Fails ingame because it mixes to some buffers that are considered the back
buffers for Dolby games. That check might need to be less restrictive for games
that don't use Dolby mixing.
2015-08-14 16:01:32 +02:00
Pierre Bourdon a0c318454d Zelda HLE: Log the UCode version being used (CRC/flags).
Also tidy up the versions list a bit.
2015-08-14 16:01:32 +02:00
Pierre Bourdon 2e72c11025 Zelda HLE: Add support for the Pikmin 1 NTSC version of the UCode. 2015-08-14 16:01:32 +02:00
Pierre Bourdon a8810e8778 Zelda HLE: Add support for the Zelda: FSA UCode. 2015-08-14 16:01:32 +02:00
Pierre Bourdon 01ab40fc6e Zelda HLE: NTSC IPL provides the volume stepping explicitly.
Support that through a new behavior flag. Now the only remaining known bug in
the NTSC IPL is the reverb not fading out.
2015-08-14 16:01:32 +02:00
Pierre Bourdon 43882f3e6e Zelda HLE: Handle the smaller VPBs used by the NTSC IPL.
Damn you, Nintendo.
2015-08-14 16:01:31 +02:00
Pierre Bourdon 1807c113b5 Zelda HLE: Support both NTSC and PAL IPL.
Add a flag for UCodes that only have four non-Dolby mixing destinations
(instead of the standard six destinations).

NTSC IPL is still hopelessly broken.
2015-08-14 16:01:31 +02:00
Pierre Bourdon 4ace79024d Zelda HLE: Add a missing mixing buffer used by GC IPL.
Not completely sure what it's used for yet, but TWW has references to it so
I'll get to it at some point.
2015-08-14 16:01:31 +02:00
Pierre Bourdon 8c85a8c8d9 Zelda HLE: Fix reverb in the GC IPL.
Adds a missing destination buffer, and support post-filtering.
2015-08-14 16:01:31 +02:00
Pierre Bourdon 13ea54628d Zelda HLE: Add support for the light protocol.
Used by a few titles (Luigi's Mansion, Animal Crossing) as well as the GameCube
IPL/BIOS.

Note that the IPL does not work yet because it mixes to unknown buffers.
2015-08-14 16:01:31 +02:00
Pierre Bourdon c033395e28 Zelda HLE: Introduce behavior flags to handle UCode version differences.
MAKE_DOLBY_LOUDER solves some of the volume issues that were happening in Zelda
Twilight Princess and SMG1.
2015-08-14 16:01:31 +02:00
Pierre Bourdon 8b9b9f033a Zelda HLE: Fix and genericize PCM ARAM loading functions.
Now also handles PCM16, and works for longer sounds. SMG1 main menu outputs
some sensible audio now, though volume seems slightly off.
2015-08-14 16:01:30 +02:00
Pierre Bourdon 0dc5a925b0 Zelda HLE: Add initial support for Wii DAC and SMG1.
SMG1 boots but quickly PanicAlerts due to an unimplemented sample source.
2015-08-14 16:01:30 +02:00
Pierre Bourdon ea1ac5f596 Zelda HLE: Add save state support.
Also fix an inconsistency in the spelling of "coeffs".
2015-08-14 16:01:30 +02:00
Pierre Bourdon bfff0a72df Zelda HLE: Implement sample sources 4, 7, 11 and 12.
Just 4 different versions of the same sample source, using a different constant
pattern uploaded to the DSP during command 01.
2015-08-14 16:01:30 +02:00
Pierre Bourdon 6c61ee6278 Zelda HLE: Initial support for Zelda Twilight Princess (GC)
Very close to the TWW version of the UCode, haven't determined any differences
yet (but I'm sure that will come soon). Works well enough to reach ingame
without any errors other than a few volume issues.
2015-08-14 16:01:30 +02:00
Pierre Bourdon b672788548 Zelda HLE: Skip command words that are not commands.
Zelda Twilight Princess (GC) seems to push null words into the command buffer.
The command handler in the UCode ignores initial command mails that do not have
the MSB set.
2015-08-14 16:01:30 +02:00
Pierre Bourdon 9944731516 Zelda HLE: Add reverb emulation. 2015-08-14 16:01:29 +02:00
Pierre Bourdon c58aece9ad Zelda HLE: Implement the PCM8 sample source.
Reorder some things in the source code to match the sample source definition
order. Add and remove some TODOs.
2015-08-14 16:01:29 +02:00
Pierre Bourdon 58fd39d57a Zelda HLE: Value-initialize the std::arrays.
I was under the wrong impression that std::array's default constructor
performed value initialization. Turns out it does not, so an array of POD will
not be initialized.
2015-08-14 16:01:29 +02:00
Pierre Bourdon 34341af17d Zelda HLE: Implement saw wave generation (sample source 0001).
Fixes issue 7961.
2015-08-14 16:01:29 +02:00
Pierre Bourdon 91fade5e89 Zelda HLE: Properly implement the square wave generation.
Zelda TWW magic meter works properly now.
2015-08-14 16:01:29 +02:00
Pierre Bourdon 63712e58fd Zelda HLE: Convert some ERROR_LOG to PanicAlert.
While these are not really unrecoverable errors, while Zelda HLE is in a
testing / development phase it is useful to notice these "unexpected" cases (or
expected without known ways to reproduce) by making them as hard as possible to
ignore.
2015-08-14 16:01:29 +02:00
Pierre Bourdon 2bb3daf027 Zelda HLE: Implement square wave sample source.
Also fix Windows build.
2015-08-14 16:01:29 +02:00
Pierre Bourdon 580fe12c5b Zelda HLE: Implement HQ AFC samples decoding. 2015-08-14 16:01:28 +02:00
Pierre Bourdon 33c29d8aab ZeldaHLE: fix windows build again 2015-08-14 16:01:28 +02:00
Pierre Bourdon b62f1ed453 ZeldaHLE: fix windows build 2015-08-14 16:01:28 +02:00
Pierre Bourdon e35b83fabf ZeldaHLE: Implement more infrastructure and one sample source.
Now renders some of the cutscene audio in Zelda TWW. Most of the work around
sample sources is in a good enough state, even though it is still missing
features like Dolby mixing, IIR, etc.
2015-08-14 16:01:28 +02:00
Pierre Bourdon d9188f1245 Zelda HLE: Rewrite the control flow.
Now accurate control flow for DAC. Voice rendering is not implemented yet, but
framing seems correct. Not expected to work for anything than DAC UCode games.
2015-08-14 16:01:28 +02:00
Pierre Bourdon d5e177d3f9 INIT UCode: reduce DSP initialization time
Push the mail at UCode boot time, not after the first update. This avoids a lot
of crazy busy-looping on the CPU side while waiting for the DSP to be
initialized.
2015-08-14 16:01:28 +02:00
Pierre Bourdon a770cc0778 DSPHLE MailHandler: Synchronize reads and interrupts
This change is meant to solve the following problem: how to translate the
following snippet to DSPHLE:
    SendInterruptAndWaitRead(MAIL_A);
    SendAndWaitRead(MAIL_B);

    SendInterruptAndWaitRead(MAIL_C);

This should cause the following actions on the CPU side:
    ---> Woken up by interrupt
    Reads MAIL_A
    Reads MAIL_B
    <--- Exits interrupt handler

    ---> Woken up by interrupt
    Reads MAIL_C
    <---

But with the current DSPHLE mail support, the following would happen because
the "AndWaitRead" part is not supported:
    ---> Woken up by interrupt
    Reads MAIL_A
    Reads MAIL_B
    <--- Exits interrupt handler

    [Never gets the second interrupt since it was triggered at the same time as
    the first one! Misses MAIL_C.]

This changes fixes the issue by storing two values in the mail queue on the DSP
side: the value of the mail itself, and whether a read of that mail should
trigger a DSP interrupt. If nothing is in the queue yet and an interrupt is
requested, just trigger the interrupt. In the present example, the queue will
look like this:
    Mail value       Interrupt requested
     MAIL_A                  No           <-- Interrupt was triggered when
                                              pushing the mail to the queue.
     MAIL_B                  Yes
     MAIL_C                  No

When the CPU will read MAIL_B, this will cause MailHandler to trigger the
interrupt, which will be handled by the CPU when coming back from the exception
handler. MAIL_C is then successfully read.
2015-08-14 16:01:27 +02:00
Pierre Bourdon 8f3302419b ZeldaHLE: Rip out more code, only keep normal version support and one CRC 2015-08-14 15:21:08 +02:00
Pierre Bourdon 22ec258194 ZeldaHLE: Rip out the whole voice processing code. Still boots games, but no sound at all. 2015-08-14 15:20:29 +02:00
Pierre Bourdon a92727e862 DSPHLE: Add a config parameter to dump UCode to disk 2015-08-14 15:19:57 +02:00
degasus fc23380f6b JitArm64: Implement dcbt
This is a 1:1 copy&paste from Jit64.
2015-08-14 14:47:00 +02:00
Tillmann Karras f9129c0e08 Jit64: use BMI1's ANDN for andcx 2015-08-14 05:51:31 +02:00
zeroZshadow 8925b828aa Ignore all writes to BBA_TXFIFOCNT 2015-08-13 22:45:29 +02:00
zeroZshadow 798365846d Improve TAP_Win32 error logging 2015-08-13 18:25:17 +02:00
degasus 4ef2962055 JitArm64: optimize addzex
So on the general case, we don't need a tempory register.
2015-08-13 13:40:53 +02:00
degasus f7fa22a053 JitArm64: fix addzex
CMP don't update the carry flag, so we have to use an addition.
2015-08-13 13:36:21 +02:00
degasus de3ce74b48 JitArm64: disable addzex 2015-08-13 12:22:48 +02:00
degasus b9f5bfb2bd JitArm64: zero extend RC for cmpli
Patch written by HdkR
2015-08-13 12:22:48 +02:00
Markus Wick 4c5fec4772 Merge pull request #2838 from Sonicadvance1/fix_gles_xfb
[GLES] Fix real XFB.
2015-08-13 08:29:42 +02:00
Ryan Houdek c80e3089c8 [GLES] Fix real XFB.
GLES doesn't support the BGRA texture format type, just use RGBA.
2015-08-12 17:32:05 -05:00
Lioncash 5aa5a100fa CheatSearchTab: Simplify functionality
With auto-updating lists, searching for the previous value isn't
necessary. Also, this breaks out specific functionality into their own
functions, which helps separate UI code from the data processing code.

	modified:   Source/Core/DolphinWX/Cheats/CheatSearchTab.h
2015-08-12 17:49:21 -04:00
Lioncash 00a4184893 CheatSearchTab: Make the search results list auto update address values 2015-08-12 17:49:20 -04:00
Ryan Houdek 1e024e7011 [AArch64] Implement fcmp{u,o} 2015-08-12 14:44:58 -05:00
Markus Wick 40818c4aad Merge pull request #2835 from degasus/master
Wiimotes: Initialize all atomic<bool> globally.
2015-08-12 21:14:04 +02:00
Ryan Houdek bb39ba1f3a [AArch64] Banish slowmem operations to farcode.
This improves performance pretty much across the board for games.
The increase in performance is mainly from removing some code from the main JIT blocks of code (pushing and popping millions of registers) and
throwing them in farcode where it doesn't pollute the icache.
2015-08-12 13:57:09 -05:00
Ryan Houdek d5c99a5b48 Add support for a CodeBlock holding a child.
This is required to make sure two code spaces are relatively close to one another.
In this case I need the AArch64 JIT codespace and its farcode space to be within 128MB of one another for branches.
2015-08-12 12:57:06 -05:00
shuffle2 90e05f7bea Merge pull request #2832 from zeroZshadow/master
Properly scan for OpenVPN TAP adapters
2015-08-12 10:56:50 -07:00
Rohit Nirmal 703892e845 Fix building with PCH disabled. 2015-08-12 12:01:17 -05:00
degasus 6b9eba5761 Wiimotes: Initialize all atomic<bool> globally.
This fixes an issue with broken real wiimotes on linux.
2015-08-12 18:39:38 +02:00
Lioncash 2c3025e8af Merge pull request #2822 from aserna3/master
Specified the type of AA in OGL AA settings
2015-08-12 01:35:22 -04:00
Jeffrey Pfau adf6e46200 DolphinWX: Ensure TASInputDlg only gets modified on the main thread 2015-08-11 22:05:18 -07:00
zeroZshadow 7ed894484e Added for loop end condition 2015-08-12 01:18:27 +02:00
zeroZshadow 8e33891593 Properly scan for OpenVPN TAP adapters
Handle errors correctly in SendFrame
2015-08-11 23:34:49 +02:00
Moncef Mechri 333f998123 Don't busy wait in the audio thread (ALSA)
When the emulation is paused and the ALSA backend is used, make the audio
thread wait on a condition variable instead of busy-waiting. This commit
fixes bug #7729

Since the ALSA API is not thread-safe, calls to snd_pcm_drop() and snd_pcm_prepare()
in AlsaSound::Clear() are protected by the same mutex as the condition variable in AlsaSound::SoundLoop()
to make sure that we do not call these functions while a call to
snd_pcm_writei() is ongoing.
2015-08-11 03:54:54 +02:00
Moncef Mechri a0c5247743 Initialize ALSA before starting the audio thread
This fixes a race condition:

Before this commit, there was a race condition when starting a game:

Core::EmuThread(), after having started (but not necessarily completed)
the initialization of the audio thread, calls Core::SetState() which calls
CCPU::EnableStepping(), which in turns calls AudioCommon::ClearAudioBuffer().

This means that SoundStream::Clear() can be called before
AlsaSound::AlsaInit() has completed.
2015-08-11 03:54:54 +02:00
Lioncash 144ea9f4aa Arm64Emitter: Fix encoding of '2-reg misc' variant of FCMEQ 2015-08-10 19:48:36 -04:00
Tillmann Karras 0e725c0860 USBGecko: don't needlessly call StringFromFormat() 2015-08-10 12:33:49 +02:00
Markus Wick e297e3e666 Merge pull request #2825 from lioncash/log
AudioCommon: Log to AUDIO, not DSPHLE
2015-08-10 10:25:51 +02:00
Moncef Mechri 8b767a1189 Use dummy audio backend if the selected backend fails to start
If the selected audio backend fails to Start() (which could happen for
example if there is no audio device), we currently still use the backend
anyway. This can lead to crashes on some platforms (such as Windows) and
is outright wrong anyway.

This commit fallbacks to the Null audio backend if the selected backend
couldn't be started.

This fixes bug #6001
2015-08-10 03:46:45 +02:00
Lioncash 4c6930d36c AudioCommon: Remove unused code from XAudio streams 2015-08-09 21:37:34 -04:00
Lioncash 3f78d74fc1 AudioCommon: Log to AUDIO, not DSPHLE
This code is not related to DSPHLE.
2015-08-09 21:36:03 -04:00
Ryan Houdek cf22d32d0c [AArch64] Don't do an unnecessary 128bit REV64 operation.
We are only using the lower 64bits here, no need to do the full quad register.
2015-08-09 14:56:52 -05:00
Ryan Houdek 922d476dab [AArch64] Fix FCMGE instruction encoding.
Fixes a crash when ps_sel is used (PSO 1&2 intro movies).
2015-08-09 14:54:55 -05:00
Anthony Serna ca250f6b71 Specified the type of AA in OGL AA settings 2015-08-09 09:59:20 -07:00
Lioncash ccca2982df Merge pull request #2819 from degasus/fix
PPCAnalyst: Mark function as static
2015-08-09 10:09:15 -04:00
degasus bceab37801 PPCAnalyst: Mark function as static 2015-08-09 11:15:44 +02:00
Markus Wick 68a54daec3 Merge pull request #2817 from comex/clientca-typo
Forgot to add a slash in one bit of code I switched from D_WIIUSER_IDX to D_SESSION_WIIROOT_IDX.
2015-08-09 11:08:54 +02:00
flacs 6f2400ebc0 Merge pull request #2807 from aserna3/master
Removed audio shortcut from toolbar
2015-08-09 07:55:37 +02:00
comex e20db1b2e3 Forgot to add a slash in one bit of code I switched from D_WIIUSER_IDX to D_SESSION_WIIROOT_IDX.
Fix that.
2015-08-08 23:16:29 -04:00
Lioncash a488ab7a70 Merge pull request #2811 from Sonicadvance1/interpreter_dump
On unknown_instruction dump the full guest GPR state.
2015-08-08 14:57:06 -04:00
Tillmann Karras 145494144c Jit64: duplicate fres result into ps1
And since frD is completely overwritten now, avoid loading it at all.
2015-08-08 06:17:47 +02:00
Ryan Houdek 14a0b01854 Merge pull request #2812 from Tilka/typos
Gekko: fix typos in HID2
2015-08-07 10:56:22 -05:00
Markus Wick 59e48e0fcf Merge pull request #2801 from Tilka/stuff
x64Emitter: add MOVSLDUP/MOVSHDUP
2015-08-07 10:37:38 +02:00
Tillmann Karras 829a949708 Gekko: fix typos in HID2 2015-08-07 09:54:13 +02:00
Ryan Houdek 0326bf7164 On unknown_instruction dump the full guest GPR state. 2015-08-07 02:45:05 -05:00
Ryan Houdek 988c4f1de8 Have the disassembler show the PC next to host instructions. 2015-08-07 02:43:54 -05:00
Ryan Houdek d9037d6c4a Remove perf_dir Dolphin WX option.
Move the option for the directory to the Dolphin.ini
This way more than DolphinWX can take advantage of it.
2015-08-07 01:59:29 -05:00
Ryan Houdek c5a7243eb2 [AArch64] Add support for JitRegister to the dispatcher and paired loadstores 2015-08-07 01:58:40 -05:00
Anthony Serna d51267d13c Removed audio shortcut from toolbar
Removed audio.png
2015-08-06 22:35:59 -07:00
Lioncash f79855ab46 Merge pull request #2803 from lioncash/fp
CheatSearchTab: Show floating point value equivalent
2015-08-06 14:23:11 -04:00
degasus d3cf4034de DriverDetails: Disable GL_ARB_copy_image on mesa. 2015-08-06 19:41:36 +02:00
degasus e2f42f8fd0 OGL: Move copy_image variable into backend. 2015-08-06 19:41:36 +02:00
Lioncash bef7af1158 CheatSearchTab: Display floating point equivalent results 2015-08-06 10:09:12 -04:00
Lioncash 5882d76a6c CheatSearchTab: Convert wxListBox into a wxListView
Allows us to give the list view columns. This allows removal of monospace font use, as it's now a properly formatted list.
2015-08-06 10:09:00 -04:00
Tillmann Karras 439fb26b9b x64Emitter: add MOVSLDUP/MOVSHDUP 2015-08-06 10:39:43 +02:00
Tillmann Karras f5a10bddee Jit64: use overloaded IsSimpleReg() where useful 2015-08-06 10:39:43 +02:00
Tillmann Karras a3476415f6 JitRegCache: mark derived classes as final 2015-08-06 10:39:43 +02:00
Tillmann Karras 0d3acbd9c7 PPCAnalyst: drop needless forward declarations 2015-08-06 10:39:43 +02:00
Tillmann Karras 8adca82cc6 JitInterface: fix disassembly entry point
This adds the downcount check code to the disassembly text and removes the
bogus instructions at the end.
2015-08-06 10:18:46 +02:00
flacs 0821607b2f Merge pull request #2800 from lioncash/leak
UICommon: Fix a leak/bug in Disassembler retrieval
2015-08-04 20:36:01 +02:00
Lioncash 7387914529 UICommon: Fix a leak/bug in Disassembler retrieval 2015-08-04 14:28:32 -04:00
Rohit Nirmal ac54bbe02d Fix building with PCH disabled. 2015-08-04 12:59:34 -05:00
flacs 0aad44c980 Merge pull request #2753 from Tilka/fix_warnings
Fix some warnings
2015-08-04 18:54:31 +02:00
Markus Wick 972faf42ed Merge pull request #2785 from lioncash/def
GeckoCode: Remove GetAddress function prototype
2015-08-04 17:44:15 +02:00
Markus Wick 19af6e0d93 Merge pull request #2787 from lioncash/memset
CPUDetect: Remove a memset call on the this pointer
2015-08-04 17:43:36 +02:00
Tillmann Karras 5a05187b3b Fix some warnings
reorder, sign-compare, pessimizing-move
2015-08-04 10:58:24 +02:00
comex 3ee302df75 Fix wording of invalid read/write message 2015-08-03 01:57:59 -04:00
Scott Mansell 5097a22844 Merge pull request #2794 from randomstuff/evdev-stable
Stable device identifier for evdev
2015-08-02 21:40:49 +12:00
Scott Mansell 8dd9d35689 Merge pull request #2653 from AdmiralCurtiss/netplay-video-mode-sync
Netplay: Sync Video Mode settings. (Progressive Scan and PAL60)
2015-08-02 12:42:21 +12:00
Gabriel Corona 2722f3f337 Stable device identifier for evdev 2015-08-02 01:51:06 +02:00
Scott Mansell a1df1f5ae4 Widescreen Heuristic: Cleanup code. 2015-08-01 14:39:34 +12:00
Scott Mansell 615e5db0cb Make the GameCube game widescreen heuristic smarter.
The last heuristic wasn't quite smart enough and had a few
false positives in Mario Kart: Double Dash and Metroid prime 2.

Now we only activate if the game is rendering a 16:9
projection to a 4:3 viewport.
2015-08-01 13:21:53 +12:00
unknown 739ede2242 Fix code to comply with coding style 2015-07-31 20:00:36 -04:00
mirrorbender 0faba3b018 Changed the aspect ratio settings to account for NTSC/PAL pixel aspect ratios and VI scaling. 2015-07-31 19:58:02 -04:00
Admiral H. Curtiss 244e5224a7 Wiimote: Extend emulated Wiimote reconnect-on-button-press to attachments. 2015-07-30 20:06:27 +02:00
Lioncash 7ee0e75633 Remove unnecessary virtual keywords 2015-07-30 10:33:08 -04:00
Scott Mansell 567d0b20fa Merge pull request #2769 from phire/autodetect_widescreen
Heuristic to detect if a gamecube game is rendering 16:9 widescreen.
2015-07-29 18:23:35 +12:00
Lioncash 3a450f72f8 CPUDetect: Remove a memset call on the this pointer 2015-07-28 23:44:18 -04:00
Lioncash df30910b06 UICommon: Pass string by const reference for HostDisassemblerLLVM 2015-07-28 22:32:34 -04:00
Lioncash 44e7a7bf91 GeckoCode: Remove GetAddress function prototype
GetAddress didn't have a definition for its prototype.
Also shortened the construction of the Code struct.
2015-07-28 22:10:39 -04:00
Markus Wick f800a5b93f Merge pull request #2695 from degasus/jit64
Jit64: Fallback support of branching instructions
2015-07-28 16:37:41 +02:00
Markus Wick 0c4209a0f9 Merge pull request #2716 from degasus/jitgeneric
CachedInterpreter: New kind of jit which always fallback to interpreter.
2015-07-28 16:37:25 +02:00
degasus ec0582ee5b JitArm64: fix lfd
Bug found by HdkR.
2015-07-28 00:13:50 +02:00
degasus b7c4886d66 JitArm64: fix stfsux 2015-07-27 23:07:38 +02:00
Anthony Serna 7e8cfff3c0 Optimized addx()
Removed some code duplication

Fixed whitespace

Moved else condition
2015-07-27 11:40:15 -07:00
booto 86dce8b0f7 VideoCommon: reduce level of debug output 2015-07-27 10:22:40 +08:00
Scott Mansell bb60bcc42d Heuristic to detect if a gamecube game is rendering 16:9 widescreen.
Someone suggested on IRC that we should make a database of memory
locations in GameCube games which contain the 'Widescreen' setting
so we can automatically detect if the game is in 4:3 or 16:9 mode.

But that's hardly optimal, when the game actually tells the gpu
what aspect ratio to render in. 10 min and 6 lines of code later,
this is the result. Not only does it detect the correct aspect ratio
it does so on the fly.

I'm a little suprised nobody thought about doing this before.
2015-07-27 10:40:41 +12:00
Ryan Houdek e805e05ff5 Merge pull request #2773 from sigmabeta/android_wiimote_main
Android: Add Wiimote support, including configuration UI.
2015-07-26 16:54:45 -05:00
booto 9d055ba5f2 Video: Trying to fix D3D/XFB disabled regression 2015-07-26 00:59:00 +08:00
Jules Blok 3801f89125 Merge branch 'stable' 2015-07-25 14:09:02 +02:00
Jules Blok 3814b5b702 HotkeyManager: Activate hotkey when key is pressed.
As opposed to activating the hotkey when it is released.
2015-07-25 13:53:27 +02:00
Jules Blok 75fc213359 FrameTools: Disable hotkeys while a modal dialog is shown. 2015-07-25 13:05:00 +02:00
Jules Blok 0092f5207b Core: Don't return true on IsRunning() when stopping emulation. 2015-07-25 13:04:37 +02:00
Jules Blok 59eb7a864d Revert "Join the emu thread in Core::Stop. Get rid of Core::Shutdown which did that before."
This reverts commit ba664b3293.

Added documentation to Core::Shutdown() to prevent breaking changes.
2015-07-25 13:04:22 +02:00
Jules Blok dfe5ed54a4 Merge pull request #2770 from Armada651/modal-hotkeys
FrameTools: Disable hotkeys while a modal dialog is shown.
2015-07-25 13:02:13 +02:00
Jules Blok fbd5bb815c Merge pull request #2538 from Armada651/thread-revert
Revert "Join the emu thread in Core::Stop. Get rid of Core::Shutdown which did that before."
2015-07-25 13:02:04 +02:00
booto efd250494d Video: stride in bytes rather than pixels 2015-07-25 02:48:56 +08:00
booto c43ae67b3b RealXFB sizes don't get scaled by IR
When calculating the size of the undisplayed margin in the case where
fbWidth != fbStride for RealXFB for displaying in the output window,
we do not scale by IR - RealXFB is implicitly 1x.
2015-07-25 01:52:13 +08:00
booto 2e28ed3291 Video: respect stride of efb copies to xfb 2015-07-25 01:52:12 +08:00
sigmabeta 1cb07b1c48 Android: Wiimote UI Fixup 2015-07-23 23:17:16 -04:00
Lioncash 0babb80652 PostProcessingConfigDialog: Remove an unnecessary format call 2015-07-23 14:39:05 -04:00
Jules Blok 8eee13e7af FrameTools: Disable hotkeys while a modal dialog is shown. 2015-07-23 09:09:01 +02:00
Jules Blok ed50d61287 Merge branch 'stable' 2015-07-23 08:12:57 +02:00
Ryan Houdek 8bd108426e Merge pull request #2759 from Sonicadvance1/pvr_workaround2
Work around PowerVR's shader compiler.
2015-07-22 16:51:48 -05:00
Ryan Houdek 6ee5ce32cf Merge pull request #2757 from Sonicadvance1/pvr_workaround
Work around slow glBufferSubData on PowerVR.
2015-07-22 16:48:40 -05:00
Ryan Houdek c81bd32720 Merge pull request #2764 from Sonicadvance1/pvr_workaround3
Work around devices that choose to only return the default EGL_RENDERABLE_TYPE
2015-07-22 16:47:11 -05:00
degasus 1c9b5efb4c CachedInterpreter: New kind of jit which always fallback to interpreter. 2015-07-22 23:19:20 +02:00
Jules Blok 703b1e8654 CFrame: Ignore "Pause on Focus Lost" when not started. 2015-07-22 19:31:23 +02:00
Markus Wick 6bcdae616b Merge pull request #2679 from Tinob/master
Implement scaled partial texture updates
2015-07-22 19:04:04 +02:00
Ryan Houdek c4f0515141 Work around devices that choose to only return the default EGL_RENDERABLE_TYPE
The default EGL_RENDERABLE_TYPE is GLES1, so vendors have the ability to choose between returning only the bits requested, or all of the bits
supported in addition to the one requested.
PowerVR chose to take the route where they only return the bits requested, everyone else returns all of the bits supported.
Instead of letting the vendor have control of this, let's incrementally go through each renderable type and make sure it supports everything we want.
This will cover all devices for now, and for the future.
2015-07-22 11:11:23 -05:00
Jules Blok 5535c5c54c Core: Don't return true on IsRunning() when stopping emulation. 2015-07-22 09:44:39 +02:00
Markus Wick deef164c7b Merge pull request #2761 from lioncash/unused
DolphinWX: Remove unused code from MemcardManager
2015-07-22 09:39:53 +02:00
Jules Blok b6c4d5792b Revert "Join the emu thread in Core::Stop. Get rid of Core::Shutdown which did that before."
This reverts commit ba664b3293.

Added documentation to Core::Shutdown() to prevent breaking changes.
2015-07-22 09:15:19 +02:00
flacs 40162fdfc1 Merge pull request #2743 from aserna3/master
Added some warning text about fractional IRs to IR selection description
2015-07-22 08:25:05 +02:00
Ryan Houdek a8227ad9b1 Add Wiimote support to the Android backend.
Not actually wired up to the Android UI for configuration.
2015-07-21 21:33:23 -05:00
Scott Mansell 9ae8e38a8a Merge pull request #2717 from phire/fix-reordering
PPCAnalyst: Don't swap instruction which might cause interrupts.
2015-07-22 05:16:51 +12:00
Lioncash fe2f57361e DolphinWX: Remove unused code from MemcardManager 2015-07-21 00:12:40 -04:00
Ryan Houdek c1df6d7b4e Work around PowerVR's shader compiler.
This bug has been reported to IMGTec at https://pvrsupport.imgtec.com/ticket/472

The basic idea of the bug is that if you're doing a bitwise and  of a constant value vector with a constant scalar value, this causes PowerVR's shader
compiler to fail out with a very non-descriptive message.
Working around the issue by making the value a vector that it is being masked by.
2015-07-20 22:04:16 -05:00
Ryan Houdek 012a9afdb6 Work around slow glBufferSubData on PowerVR.
As with all tiled renderers, glBufferSubData is terribly slow.
Use glBufferData as typical.
2015-07-20 22:02:58 -05:00
Ryan Houdek dc46ae0380 Fix an oversight in GLExtensions
I only wanted to erase the first character in the string, not the entire thing.
Fixes Qualcomm and PowerVR devices crashing out immediately.
2015-07-20 22:01:23 -05:00
skidau 3d6ee7313d Merge pull request #2689 from RisingFog/patch-1
Fix TASInput Crash When Stick Bitmap Is Null
2015-07-21 11:41:38 +10:00
Trace Bullet caa2f15105 DiscIO: Check if m_Disc is null in ParsePartitionData() 2015-07-20 16:21:34 +02:00
Jules Blok 809e480973 Merge branch 'stable' 2015-07-20 16:04:18 +02:00
Jules Blok ccb56ddf97 CFrame: Claim all keyboard events on OS X. 2015-07-20 10:11:11 +02:00
skidau ad68de59bc Merge pull request #2665 from AdmiralCurtiss/relative-memory-card-paths
GameCube Config: Store paths relatively when selected file is within Dolphin's directory. (Windows)
2015-07-20 14:09:36 +10:00
skidau 654c44b870 Merge pull request #2714 from lioncash/clamp
Core: Use clamps for nunchuk and wiimote x,y,z values
2015-07-20 14:08:00 +10:00
skidau 4b260fbd66 Merge pull request #2724 from AdmiralCurtiss/wiimote-reconnect-on-button-press
Wiimote: Reconnect a disconnected Wiimote when a button is pressed.
2015-07-20 14:06:48 +10:00
Lioncash ca703e6499 Merge pull request #2751 from lioncash/title
JitWindow: Use TitleCase for the JIT block viewer tab
2015-07-19 22:32:28 -04:00
Lioncash 40b89627f1 JitWindow: Use TitleCase for the JIT block viewer tab
Makes the title consistent with all other tabs.
2015-07-19 18:20:24 -04:00
Markus Wick d622ae3e7b Merge pull request #2699 from Tilka/fnma
Interpreter: fix rounding of negating FMA instructions
2015-07-19 17:39:19 +02:00
Markus Wick b71430723a Merge pull request #2748 from Tilka/drop
Jit64: small cleanup
2015-07-19 08:26:42 +02:00
Tillmann Karras bcdafc7e34 Interpreter: fix rounding of FNMA instructions
x86:     round(-a*c +/- b)
PowerPC: -round(a*c +/- b)

If the rounding mode is set to +/- infinity, the order of round/negate
matters.
2015-07-18 22:54:15 +02:00
Tillmann Karras 89954d658c Jit64: drop needless casts 2015-07-18 22:33:42 +02:00
Jeffrey Pfau e948aec6cd DolphinWX: Fix build if libusb is disabled 2015-07-17 22:41:12 -07:00
Lioncash 35e9ada2b0 Merge pull request #2709 from lioncash/atomic
Core: Change a volatile into an atomic
2015-07-17 10:24:02 -04:00
Tillmann Karras 334c1bfdf6 Jit64[IL]: drop WriteCallInterpreter 2015-07-17 03:25:38 +02:00
Lioncash 57ca783b72 PathConfigPane: Use shortened variants of the browse buttons 2015-07-16 18:03:14 -04:00
Admiral H. Curtiss 935292c6fc DolphinWX: In Host_ConnectWiimote(), instead of calling CFrame::ConnectWiimote() directly, dispatch an event that will call it for us in the GUI thread.
This eliminates a possible stutter/short freeze that can happen during PowerPC::Pause().
2015-07-16 02:35:57 +02:00
Admiral H. Curtiss 5594b107eb Wiimote: (Re-)Connect a disconnected real Wiimote when a button is pressed.
Where disconnected is defined as: The real physical device is still connected to the PC, but the emulated Wii sees the Wiimote as disconnected.
2015-07-16 02:35:55 +02:00
Ryan Houdek c0f80ca524 Merge pull request #2736 from degasus/farcache
JitArm64: Farcache
2015-07-15 08:41:58 -05:00
degasus 6f38d1baa1 CodeBlock: Add a shared IsAlmostFull function
This function shall keep care about the low watermark of code space.
If we ran out of space, the JITs shall clear their block cache.
2015-07-15 08:53:05 +02:00
mathieui cae00254a5 GCAdapter: Only start the thread on startup if direct connect is enabled 2015-07-14 17:15:26 +02:00
mathieui ac8621ccab GCAdapter: Disable the scanning thread when direct connect is disabled
The goal of this commit is to let people who experience driver issues
with libusb and windows disable the scanning thread (to avoid mouse
issues, keyboard issues, and audio issues).

Also disable the rumble setting when the adapter driver is not detected,
and don’t do anything if libusb can’t init for some reason.
2015-07-14 12:35:40 +02:00
Anthony Serna 18685e2aef Added some warning text about fractional IRs. 2015-07-13 23:33:21 -07:00
skidau a12a4520d8 Merge pull request #2684 from TraceBullet/master
DiscIO: Check if m_Disc is null in ParsePartitionData()
2015-07-14 10:56:12 +10:00
Scott Mansell da38e3a8ae Merge pull request #2741 from endrift/fix-freebsd-build-stable
Fix FreeBSD (stable)
2015-07-13 19:51:18 +12:00
Scott Mansell dc25277a2f Merge branch 'stable' into 'master' 2015-07-13 12:40:38 +12:00
Scott Mansell 87e19f1c19 Merge pull request #2705 from phire/fixrumble
evdev: Delete rumble effects on the correct file descriptor.
2015-07-13 12:05:54 +12:00
degasus a5c10ded55 JitArm64: Fix copy&paste issue 2015-07-12 09:41:32 +02:00
degasus 7196901b40 JitArm64: Move all FLUSH_MAINTAIN_STATE to the far cache 2015-07-12 09:41:32 +02:00
degasus b8dd68beef JitArm64: Far Code Cache 2015-07-12 09:41:32 +02:00
Jeffrey Pfau fff113b64f Fix 64-bit FreeBSD build 2015-07-11 23:09:11 -07:00
Jeffrey Pfau a6437f629c Common: Use more portable invocation of shm_open 2015-07-11 23:09:11 -07:00
Jeffrey Pfau 2eb553fdb7 Fix FreeBSD build 2015-07-11 23:09:11 -07:00
skidau cc79334faf Merge pull request #2712 from JosJuice/wbfs-beyond-end-of-disc
WbfsBlob: Don't enter an infinite loop when reading beyond end of disc
2015-07-12 15:34:56 +10:00
flacs b30ae1b9f8 Merge pull request #2730 from lioncash/undef
SI_DeviceGCController: Remedy undefined behavior regarding shifts
2015-07-12 06:30:50 +02:00
Admiral H. Curtiss 5c0033e6d9 DolphinWX: ParseHotkeys() should use the State::NUM_STATES constant instead of a hardcoded 10. 2015-07-12 05:18:54 +02:00
Admiral H. Curtiss 878629a2bf DolphinWX: GetCmdForHotkey() should have Load Last Slot 9/10 as well. 2015-07-12 05:16:42 +02:00