Commit Graph

6192 Commits

Author SHA1 Message Date
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
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
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
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
Tillmann Karras 0e725c0860 USBGecko: don't needlessly call StringFromFormat() 2015-08-10 12:33:49 +02: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
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
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 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
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 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
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 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
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
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
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 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
degasus 1c9b5efb4c CachedInterpreter: New kind of jit which always fallback to interpreter. 2015-07-22 23:19:20 +02:00
Jules Blok 5535c5c54c Core: Don't return true on IsRunning() when stopping emulation. 2015-07-22 09:44:39 +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
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
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
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
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
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
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 2eb553fdb7 Fix FreeBSD build 2015-07-11 23:09:11 -07: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
skidau c70f3f4b45 Merge pull request #2731 from skidau/PAL-Progressive
Removed the ability for PAL televisions to be set to progressive mode.
2015-07-10 16:00:23 +10:00
Admiral H. Curtiss e462422ef7 Wiimote: (Re-)Connect a disconnected emulated Wiimote when a mapped button is pressed. 2015-07-10 04:29:56 +02:00
skidau 6d2f85f183 Removed the ability for PAL televisions to be set to progressive mode. 2015-07-10 10:26:24 +10:00
Lioncash 6e90d1e433 SI_DeviceGCController: Remedy undefined behavior regarding shifts
Left shifting a negative left-hand operand is undefined behavior per section 5.8.2 of the C++11 standard.
2015-07-09 13:08:40 -04:00
Lioncash 5768161052 Core: Pass string by const reference in SaveScreenShot 2015-07-09 07:24:30 -04:00
Ryan Houdek 7b7d1b0dcf Merge pull request #2718 from phire/1way-icache
Interpreter: Fix bug with icache emulation.
2015-07-08 07:29:46 -05:00
Scott Mansell a31ebb9bcd PPCAnalyst: Don't swap instruction which might cause interrupts.
fcmpo and fcmpu can be matched by the REORDER_CMP pass, as they set CR0
and they can cause interrupts if the fpu is disabled.
So we add an extra check to make sure op a is an integer op too.
2015-07-07 22:37:48 +12:00
Scott Mansell 4ffeb057cc Interpreter: Fix bug with icache emulation.
The constructor sets up way_from_valid and way_from_plur as fast lookup
tables for implementing the PLRU algrothm. Then the Init function
memsets them to zero, meaning the instruction cache will now always
choose the first way in each set.

This degrades the cache from 128 sets, 8 way to 128 sets, 1 way.

Not only does fixing this bug increase accuracy, but it increases
preformance too, giving a 1% speedup to interpreter.
2015-07-07 22:20:36 +12:00
Scott Mansell c54534ee3b Merge pull request #2649 from phire/FileIO_Sanity
IPC_HLE: Don't open/close files for every single file operation.
2015-07-07 17:16:28 +12:00
degasus effb626bef JitArm64: Implement EXCEPTION_FPU_UNAVAILABLE support.
Seems like this flag was missed.
This patch was mostly done by HdkR.
2015-07-06 23:40:20 +02:00
Lioncash 25bd55b7aa Core: Use clamps for nunchuk and wiimote x,y,z values 2015-07-06 13:34:11 -04:00
Lioncash e3c6eb2a85 WiimoteEmu: Fix use of spaces.
There should be a tab here instead.
2015-07-06 13:20:24 -04:00
Lioncash 614a656b83 DSPInterpreter: Remove an unused typedef
DSPTables already has an equivalent of this, which it uses.
2015-07-06 06:47:13 -04:00
Markus Wick b6ee886540 Merge pull request #2708 from lioncash/override
MMIO: Add missing override specifiers
2015-07-06 12:36:37 +02:00
Lioncash af4cfd32d4 Core: Change a volatile into an atomic
Also changes s_drawn_video into an atomic, as it's used across threads as well.
2015-07-06 06:25:51 -04:00
Lioncash c7193fcd41 MMIO: Add missing override specifiers 2015-07-06 06:11:31 -04:00
Scott Mansell 0b0f70aad4 Revert "Merge pull request #2358 from Tilka/pie"
This reverts commit 0f7f8f8774, reversing
changes made to 9f15054358.
2015-07-06 09:05:25 +12:00
Markus Wick 009148d401 Merge pull request #2701 from mickdermack/pr-jitnull
Prevent nullptr dereference on a crash with no JIT present
2015-07-05 16:37:29 +02:00
Michael Ehrenreich 2b2af12466 Prevent nullptr dereference on a crash with no JIT present
JitInterface::HandleFault would dereference jit which is NULL, causing a stack overflow through infinite exception recursion.
2015-07-05 14:24:51 +02:00
Sintendo ce10525056 Eliminate branch in GenFres 2015-07-05 11:18:59 +02:00
Scott Mansell 08fcc7bf84 IPC_HLE: Cleanup device definitions with templates.
Less copy/pasted code will make future modifications easier.
2015-07-05 02:05:39 +12:00
Scott Mansell 1d5cda9820 IPC_HLE: Reimplement fix for issues 2917/5232 with more sanity.
Instead of opening... and... closing... files... after... every...
file... operation... (which can be slow, especially if a virus scanner
is running), we catch attempts to open the same file twice and
only open one copy of the file.
2015-07-05 02:01:45 +12:00
degasus 30869135d5 Jit64: Fallback support of branching instructions 2015-07-04 04:12:25 +02:00
Tillmann Karras afea72edfe Revert "Interpreter: assign directly instead via variables"
This reverts commit 174ada3a62.
2015-07-03 21:10:18 +02:00
Markus Wick 3fc070c4fc Merge pull request #2680 from degasus/idle
Interpreter: Idle skipping support
2015-07-03 19:52:05 +02:00
Admiral H. Curtiss 6a33f174de GC Adapter: Do not attempt to claim_interface when libusb_open() returns an error.
Fixes a crash / nullptr dereference when the adapter is plugged in but
no drivers are installed for it, on Windows.
2015-07-01 23:49:39 +02:00
Jules Blok bee7f19d76 Merge pull request #2682 from AdmiralCurtiss/libusb-fix-win-crash-without-drivers
GC Adapter: Do not attempt to claim_interface when libusb_open() fails.
2015-07-01 23:48:24 +02:00
degasus 245a639e2c JitArm64: Partially fallback on bcctrx
No need to assert, fallbacks on branching instructions now works fine.
2015-07-01 17:58:17 +02:00
degasus 0054c4e0d9 JitArm64: Drop icbi instruction
It was already just a fallback + exit. Now we emit the exit for all affected fallbacks.
2015-07-01 17:58:17 +02:00
degasus dc83c8912f JitArm64: Support branching fallbacks 2015-07-01 17:58:17 +02:00
Ryan Houdek b174f99b17 Merge pull request #2662 from Tilka/interpreter
Interpreter: turn SNaNs into QNaNs
2015-07-01 01:09:43 -05:00
Ryan Houdek 68d8d784ee Merge pull request #2670 from endrift/dolphinbar-osx
WiimoteReal: Add IOHIDDevice support for OS X
2015-06-30 23:33:13 -05:00
Ryan Houdek a0f5bd51f1 Merge pull request #2678 from Sonicadvance1/aarch64_implement_rlwimix
[Aarch64] implement rlwimix.
2015-06-30 22:18:00 -05:00
Ryan Houdek 2cddaa09f0 [AArch64] Implement rlwimix. 2015-06-30 19:49:10 -05:00
Admiral H. Curtiss 08b952ef31 GC Adapter: Do not attempt to claim_interface when libusb_open() returns an error.
Fixes a crash / nullptr dereference when the adapter is plugged in but
no drivers are installed for it, on Windows.
2015-07-01 01:29:04 +02:00
Markus Wick 45fde6caf5 Merge pull request #2669 from stgn/new-dsp-coef
Audio: new dsp_coef.bin with windowed sinc filter coefficients
2015-06-30 22:02:05 +02:00
degasus 717d4bfbcc Interpreter: Idle skipping support 2015-06-30 20:11:23 +02:00
Jeffrey Pfau 6f8a38cefb WiimoteReal: Add IOHIDDevice support for OS X 2015-06-29 23:13:18 -07:00
Shane Nelson 388ab13db1 Audio: new dsp_coef.bin with windowed sinc filter coefficients 2015-06-29 22:24:24 -04:00
Stevoisiak 7248f9b524 Minor spelling corrections 2015-06-29 14:51:21 -04:00
Lioncash daa205990f Use emplace() instead of insert() where applicable for maps. 2015-06-28 19:52:40 -04:00
Admiral H. Curtiss 69b7296fc2 WiimoteReal: Make sure that Wiimote thread isn't already running before starting it.
This fixes a crash when switching a Wiimote's internal slot or type in the Dolphin config.
2015-06-26 20:48:45 +02:00
Jules Blok cff6d9f922 Merge pull request #2640 from AdmiralCurtiss/real-wiimote-crash-fix
WiimoteReal: Fix crash when switching a real Wiimote to a different slot or type during emulation.
2015-06-26 20:33:50 +02:00
Admiral H. Curtiss 716c54217a WiimoteReal: Make sure that Wiimote thread isn't already running before starting it.
This fixes a crash when switching a Wiimote's internal slot or type in the Dolphin config.
2015-06-26 17:12:18 +02:00
Tillmann Karras 2711d5201b Interpreter: turn SNaNs into QNaNs 2015-06-26 09:29:18 +02:00
Tillmann Karras 174ada3a62 Interpreter: assign directly instead via variables 2015-06-26 08:16:34 +02:00
Tillmann Karras b2c21e800a Interpreter: drop unused macros 2015-06-26 08:16:34 +02:00
Tillmann Karras ca36ff0551 Interpreter: consolidate fdiv/fdivs/ps_div 2015-06-26 08:07:46 +02:00
Ryan Houdek 63a2180c1f [AArch64] Implement slwx in the recompiler.
I streamed this implementation earlier today to get people to have a feel for implementing instructions in the AArch64 recompiler.
This one was a fairly simple one to implement.
2015-06-26 00:51:06 -05:00
Ryan Houdek 521f6e89c3 Merge pull request #2624 from sigmabeta/android-save-screenshot
Android: Save screenshot at end of an emulation session.
2015-06-24 21:39:47 -05:00
Tillmann Karras 6d273f6119 Jit64: fix pre-SSE4.1 fallback of ps_sum1 2015-06-24 18:32:10 +02:00
Tillmann Karras 2bd11469a5 Jit64: fix pre-SSE4.1 fallback of ps_sum1 2015-06-24 16:48:26 +02:00
Admiral H. Curtiss 84e42904a2 Netplay: Sync Video Mode settings. (Progressive Scan and PAL60)
Must match so that Wii games don't desync, especially PAL games.
2015-06-24 12:41:10 +02:00
Scott Mansell 8b4734133e IPC_HLE: Don't open/close file for every single file operation.
On the first boot of Pokemon Snap it copies a 144KB file to the Wii's
NAND, but it only copies 32 bytes per IPC write call.

This was causing dolphin to open and close the same file over 4000
times. This wouldn't usually be a huge issue, except some operating
systems (namely Windows) allow 3rd party programs (namely antivirus
software) to hook all accesses to the filesystem.

This causes the antivirus software to scan the same file for viruses
4000+ times, which is kind of slow.

This fix reduces the initial boot time of pokemon snap from 3+ min
to just a few seconds. Could also improve other games which write
things to NAND.

Will break a few things, see the next commit for an improved fix.
2015-06-24 19:23:10 +12:00
Scott Mansell 03124ec3f0 IPC_HLE: Simplify lifecycle of devices with shared pointers.
This also fixes a memory/filehandle leak when loading savestates.
2015-06-24 19:22:04 +12:00
Eder Bastos 7935c1c57a Android: Ensure that the target folder for screenshots exists before attempting to save. 2015-06-23 23:08:10 -04:00
sigmabeta 8ca620db7f Android: Invalidate Picasso screenshot cache every time a screenshot is displayed. 2015-06-23 22:36:27 -04:00
sigmabeta a028805626 Android: Save screenshot at end of an emulation session. 2015-06-23 22:22:01 -04:00
Tillmann Karras c9af7def28 Fix some warnings 2015-06-23 21:11:56 +02:00
comex afaa0d92df Merge pull request #2613 from AdmiralCurtiss/netplay-sram-sync
Netplay: Sync GameCube SRAM.
2015-06-22 12:48:38 -04:00
skidau c18662432f Merge pull request #2622 from AdmiralCurtiss/homebrew-video-modes
Fix Homebrew region inconsistency exposed by #2596.
2015-06-20 11:49:57 +10:00
Lioncash 6ca6896b6e JitRegCache: Get rid of an unnecessary cast 2015-06-19 18:10:56 -04:00
Admiral H. Curtiss 7276d80adc Boot: Decide setting.txt's country settings based on the game's video mode when no valid country code is found rather than defaulting to Europe. 2015-06-19 15:09:21 +02:00
Admiral H. Curtiss 1b8b99e9f1 ConfigManager: Set homebrew video mode based on Dolphin's PAL60 config instead of always using 50Hz.
This is a bit indirect, but since homebrew always boots in a European environment the framerate depends on the bPAL60 flag, which is always auto turned off if bNTSC is set to true as of 2e5e724f94. By actually indicating that we're PAL on homebrew boot, the rest just falls into place.
2015-06-19 15:07:19 +02:00
Lioncash 458378528b DolphinWX: Remove the Toggle IR hotkey.
This isn't necessary since Increase IR and Decrease IR are present.
2015-06-19 05:10:40 -04:00
Ryan Houdek 22e7024da5 Merge pull request #2614 from endrift/fix-gdbstub-build
PowerPC: Fix GDBStub build
2015-06-16 02:15:21 -05:00
Jeffrey Pfau 46cf44bcec PowerPC: Fix GDBStub build 2015-06-16 00:10:28 -07:00
skidau c6f72115e9 Merge pull request #2596 from AdmiralCurtiss/pal60-config-option
PAL60 improvements: Allow setting in GameINI, disable for NTSC games, store in Movie files.
2015-06-16 14:44:31 +10:00
Ryan Houdek 87b45de634 Merge pull request #2606 from Sonicadvance1/aarch64_optimize_psq_st
[AArch64] Optimize paired quantized stores.
2015-06-14 19:03:50 -05:00
Admiral H. Curtiss 277348cd75 Movie: Add the PAL60 setting to Movie files. 2015-06-14 17:10:34 +02:00
Admiral H. Curtiss 2e5e724f94 Boot: Automatically temporarily disable PAL60 for NTSC Wii games.
Fixes issues like https://code.google.com/p/dolphin-emu/issues/detail?id=7714 and https://code.google.com/p/dolphin-emu/issues/detail?id=8036.
2015-06-14 17:10:12 +02:00
Admiral H. Curtiss f9067cbf38 Boot: Setting overrides should be applied after all settings from ini/movie/netplay/... are read. 2015-06-14 17:03:45 +02:00
Admiral H. Curtiss abb65515b9 Netplay: Sync GameCube SRAM. 2015-06-14 16:52:08 +02:00
Ryan Houdek 96058c5de1 [AArch64] Reenable psq_l.
The bug was due to issues in the FPR cache.
2015-06-14 04:11:59 -05:00
Ryan Houdek 282282aafc [AArch64] Fix a few bugs in the FPR cache. 2015-06-14 04:11:26 -05:00
Jeffrey Pfau 1b9f55692b Fix 64-bit FreeBSD build 2015-06-13 21:52:47 -07:00
Jeffrey Pfau 7085fcc8d6 Fix FreeBSD build 2015-06-13 21:52:47 -07:00
Ryan Houdek 5ea66369f8 [AArch64] Optimize paired quantized stores.
Uses {S,U}QXTN to saturate the value to the maximum sizes instead of manually clamping using FMIX + FMAX.
2015-06-13 23:16:56 -05:00
Matthew Parlane f32cede086 Revert "x64: build a Position-Independent Executable (PIE)" 2015-06-14 16:06:26 +12:00
Admiral H. Curtiss 8ffe745c09 Config: Allow PAL60 to be set by ini files.
Fixes issue https://code.google.com/p/dolphin-emu/issues/detail?id=7847.
2015-06-13 02:10:44 +02:00
Admiral H. Curtiss 92447fb052 Config: Add a boolean for PAL60, like the Progressive Scan one.
This decouples the Dolphin PAL60 option from the currently set value in the Wii SYSCONF file.
2015-06-13 02:09:19 +02:00
Ryan Houdek bcc8c78e4a Merge pull request #2582 from Sonicadvance1/aarch64_fix_thp_videos
[WIP] [AArch64] Clamp quantized store ranges.
2015-06-12 18:07:24 -05:00
degasus 9f929c8593 Hotkeys: Fix translation array 2015-06-12 19:32:50 +02:00
degasus c375111076 Options: merge SCoreStartupParameter into SConfig 2015-06-12 19:07:45 +02:00
degasus b9a9fcd26d Hotkeys: Fix missing hotkey strings 2015-06-12 13:59:22 +02:00
skidau 5ae1c07cd4 Merge pull request #2570 from Papermanzero/patch-1
Correction of emulated wiimote initialisation
2015-06-12 12:39:02 +10:00
skidau a2b3541160 Merge pull request #2559 from AdmiralCurtiss/wind-waker-pal60-fix
Fix issue with Wind Waker not displaying boot display options.
2015-06-12 11:58:37 +10:00
Admiral H. Curtiss 33f5aaf956 GameCube Config: Add option to override the NTSC auto language change.
Some NTSC games have translations on the game disc that can be accessed via the system language byte.
2015-06-11 18:40:41 +02:00
Admiral H. Curtiss ffe25da78a Boot: Automatically temporarily set GameCube language to 0 when booting NTSC games.
NTSC GameCubes have no Language setting, so the language byte in SRAM is always 0. Some NTSC games do react oddly and display unfinished translations and similar when the byte is set to a nonzero value that corresponds to a non-English language on a PAL GameCube. See issue 7731: https://code.google.com/p/dolphin-emu/issues/detail?id=7731.
2015-06-11 18:39:44 +02:00
Tillmann Karras d329147871 Interpreter: use std::isnan(x) instead of x != x 2015-06-10 14:31:08 +02:00
Tillmann Karras c7544719e2 Interpreter: optimize NaN checks
NaNs always propagate, so we can get away with only checking for NaN
inputs in the rare case that the result is NaN (as already done in
Jit64::HandleNaNs()).
2015-06-10 14:23:43 +02:00
Ryan Houdek 113c2dcd74 [AArch64] Clamp quantized store ranges.
Fixes block dots in THP videos.
Nintendo's THP video uses paired U8 stores to write their THP videos after decoding with floating point operations.
Paired stores clamp the range to the minimum and maximum values(0 - 255 in this case).
In some instances the resulting float will be larger than what a U8 can fit(Typically white) and results in black dots due to how AArch64 handles
quantizing.
2015-06-09 18:11:27 -05:00
Rohit Nirmal 46bad5291b Silence -Wreorder warning. 2015-06-09 11:35:53 -05:00
Matthew Parlane 39155007c7 Merge pull request #2545 from Tilka/accurate_nans
Jit64: optionally accurate NaNs
2015-06-09 17:53:28 +10:00
degasus d31bed8b79 Fifo: Rewrite SyncGpu
The new implementation has 3 options:
 SyncGpuMaxDistance
 SyncGpuMinDistance
 SyncGpuOverclock

The MaxDistance controlls how many CPU cycles the CPU is allowed to be in front
of the GPU. Too low values will slow down extremly, too high values are as
unsynchronized and half of the games will crash.
The -MinDistance (negative) set how many cycles the GPU is allowed to be in
front of the CPU. As we are used to emulate an infinitiv fast GPU, this may be
set to any high (negative) number.

The last parameter is to hack a faster (>1.0) or slower(<1.0) GPU. As we don't
emulate GPU timing very well (eg skip the timings of the pixel stage completely),
an overclock factor of ~0.5 is often much more accurate than 1.0
2015-06-08 23:16:24 +02:00
Papermanzero 47ea0e1089 Update WiimoteEmu.cpp
Should fix Issue 8209: Emulated Wiimote tilt is incorrect since 4.0-4543. 
Original changes can be looked at the link below and discussion about the issue can be followed within Issue 8209 at googlecode.
http://pastebin.com/yKA2nuGp

Thanks to hk.konpie for the fix.
2015-06-08 13:22:55 +02:00
Tillmann Karras aec38466d9 Jit64: optionally accurate NaNs
When AccurateNaNs is enabled, NaNs are handled accurately by checking
for NaN results and choosing the correct input NaN or replacing x86's
generated -QNaN with +QNaN.
2015-06-08 11:14:52 +02:00
Ryan Houdek 59e2225f7d Remove ARMv7 support. 2015-06-07 22:44:13 -05:00
Ryan Houdek 9969273994 Merge pull request #2557 from AdmiralCurtiss/gc-sram-checksum
GameCube SRAM: Recalculate checksums after setting language.
2015-06-07 23:24:06 -04:00
Ryan Houdek e8ae0f8c3c Merge pull request #2562 from Sonicadvance1/aarch64_optimize_gatherpipe
[AArch64] Optimize gatherpipe stores
2015-06-07 23:23:11 -04:00
Ryan Houdek 8c2e5e2860 Merge pull request #2555 from Sonicadvance1/aarch64_rebase_ppsspp_emitter
[AArch64] Upstream PPSSPP's emitter changes.
2015-06-07 23:23:04 -04:00
Ryan Houdek 444d112df5 Merge pull request #2563 from Sonicadvance1/aarch64_disable_psql
[AArch64] Disable psq_l again.
2015-06-07 23:12:50 -04:00
Ryan Houdek c8068e26fb Merge pull request #2527 from Sonicadvance1/aarch_multi_loadstore
[AArch64] Implement lmw/stmw.
2015-06-07 23:12:42 -04:00
Ryan Houdek d29fd84249 [AArch64] Disable psq_l again.
Still causing issues with games.
Disable it again until I can spend enough time debugging it.
2015-06-07 19:55:27 -05:00
Ryan Houdek 46c3a11d01 [AArch64] Optimize gatherpipe stores
This can be even more optimized in the future when the register cache supports constant caching.
2015-06-07 19:53:40 -05:00
Ryan Houdek 05b72c5d31 [AArch64] Upstream PPSSPP's emitter changes.
Requires a minor change to in the JIT to make sure everything still works.
2015-06-07 19:50:21 -05:00
comex 5c7caf1f22 Merge pull request #2517 from comex/netplay-timebase-rb
[rebased] Compare timebase of netplay users to detect desyncs.
2015-06-07 17:47:53 -07:00
Admiral H. Curtiss 63064aeaaa GameCube SRAM: Add a struct for the "flags" parameter. 2015-06-08 02:40:02 +02:00
Admiral H. Curtiss 78903884e5 GameCube SRAM: Recalculate checksums after setting language.
This fixes a minor bug where the IPL thinks the SRAM has been corrupted and forces you to re-set date/time and settings when you change language in Config -> GameCube while not skipping the IPL on boot.
2015-06-08 02:40:02 +02:00
Admiral H. Curtiss 350f2fb40e Fixes issue with PAL Wind Waker not displaying PAL60 option. 2015-06-08 02:29:35 +02:00
Markus Wick e987383f6d Merge pull request #2537 from degasus/master
Config: Add SyncOnSkipIdle GameIni option
2015-06-07 23:02:12 +02:00
Tillmann Karras 3513dd454f Revert "Jit64: add FMA4 support to fmaddXX"
This reverts commit 794a311b11.
2015-06-07 13:03:16 +02:00
Matthew Parlane cf8f049c4d Merge pull request #2518 from degasus/hotkeys
Hotkeys: Drop old GUI
2015-06-07 20:10:10 +10:00
Lioncash 8707d68ddb Merge pull request #2542 from JosJuice/how-to-not-print-variables
DVDInterface: Fix newFileName variable not being printed correctly
2015-06-06 16:20:49 -04:00
JosJuice 23f9ccf59b DVDInterface: Fix newFileName variable not being printed correctly 2015-06-06 21:29:43 +02:00
flacs d3e47dfcf5 Merge pull request #2496 from Tilka/fma4
Jit64: add FMA4 support to fmaddXX
2015-06-06 17:31:55 +02:00
degasus 12b469b417 Config: Add SyncOnSkipIdle GameIni option 2015-06-06 11:19:58 +02:00
comex 9c63b78397 Fix indeterminism in GPU thread mode. 2015-06-06 02:14:06 -04:00
comex f2631a835e Simplify and improve.
Note - I removed a SleepCurrentThread(1) the patch added which seemed to
be unrelated to the actual job at hand.  If there was a real need for it
(which sounds like it would be an enet-related bug - enet_host_service
is supposed to *sleep*), that needs to be dealt with...
2015-06-06 01:28:01 -04:00
comex 95d682dfd5 Merge pull request #2519 from JosJuice/volume-type-enum
Volume: Return volume type as an enum
2015-06-06 01:23:52 -04:00
Rachel Bryk 04ca54623c Compare timebase of netplay users to detect desyncs. 2015-06-06 00:52:02 -04:00
skidau 2f577e147b Merge pull request #2520 from AdmiralCurtiss/wii-pal60
Properly set default video mode for PAL Wii games.
2015-06-06 10:42:42 +10:00
Lioncash aca7c948d5 EXI_DeviceEthernet: Convert a volatile bool to an atomic 2015-06-05 09:37:14 -04:00
Admiral H. Curtiss a2ca4841e9 Properly set default video mode for PAL Wii games.
See https://github.com/dolphin-emu/dolphin/pull/2520 for a more detailed explanation.
2015-06-05 14:35:48 +02:00
Ryan Houdek 7b9565c4e6 [AArch64] Implement lmw/stmw. 2015-06-04 23:54:50 -05:00
flacs 2f2e514b54 Merge pull request #2524 from lioncash/aarch64
Arm64: Make some functions const.
2015-06-05 04:52:14 +02:00
Lioncash 97382ec90a Merge pull request #2526 from lioncash/silly
WII_IPC_HLE: Remove a silly volatile usage
2015-06-04 22:27:48 -04:00
Rohit Nirmal cd5142ddeb Fix building with PCH disabled. 2015-06-04 21:05:10 -05:00
Lioncash 630e0375b1 WII_IPC_HLE: Remove a silly volatile usage 2015-06-04 21:35:21 -04:00
Lioncash de2e84344d Core: Convert volatile bools to atomics
Converts over bools that are typically used as loop checks into atomics.
2015-06-04 21:21:11 -04:00
Lioncash fe77505d4d Jit: Make IsInCodeSpace() const 2015-06-04 20:52:53 -04:00
Lioncash d9e1bf139f JitArm64_RegCache: Make some functions const 2015-06-04 20:40:36 -04:00
Lioncash 6f3598eee4 PPCAnalyst: Remove extra whitespace from CodeBuffer 2015-06-04 19:13:29 -04:00
Lioncash 293c3bae6f PPCAnalyst: Mark some functions as const
Also removes the redundant inline specifier, as functions defined in a class/struct definition are inline by default.
2015-06-04 19:11:38 -04:00
comex 0c23283049 Merge pull request #2522 from lioncash/ref
Core: Pass several parameters by const reference
2015-06-04 16:15:11 -04:00
Lioncash e37b643096 Merge pull request #2521 from lioncash/unused
Interpreter: Remove unused function prototype
2015-06-04 14:32:31 -04:00
Lioncash d9b51f74be Core: Pass several parameters by const reference 2015-06-04 14:19:25 -04:00
Lioncash bc0e61cb7c Interpreter: Remove unused function prototype 2015-06-04 13:53:53 -04:00
JosJuice 0ed3118141 Volume: Return volume type as an enum
ISOFile and GameFile were using IsWiiDisc() and IsWadFile() to set
an enum value. The volume might as well return an enum directly.

I increased the Qt CACHE_REVISION because m_platform now is saved as u32
instead of int, but increasing the wx CACHE_REVISION is not necessary.
2015-06-04 16:26:36 +02:00
JosJuice 030d467d62 Use PanicAlert instead of PanicAlertT when appropriate
It means less work for the translators... But I'm not too sure
about this, because most of these have already been translated.
2015-06-04 13:25:17 +02:00
JosJuice 95a2abc1ce Use PanicAlertT instead of PanicAlert when appropriate
I tried to change messages that contained instructions for users,
while avoiding messages that are so technical that most users
wouldn't understand them even if they were in the right language.
2015-06-04 13:25:06 +02:00
degasus dfc951fbbb Hotkey: move some code into ParseHotkey 2015-06-04 10:44:20 +02:00
Jasper St. Pierre c84cefa990 Remove wx-based Hotkey stuff
The core InputCommon Hotkeys interface does all of this for us.
2015-06-04 10:44:20 +02:00
Markus Wick 1ed38e901e Merge pull request #2505 from degasus/hotkeys
Hotkeys fixes 2
2015-06-04 10:42:50 +02:00
Tillmann Karras 088668606d Interpreter: use the VERY_ACCURATE_FP code 2015-06-03 22:08:24 +02:00
Tillmann Karras 68eb83ea83 Interpreter: fix NaN handling in FMA 2015-06-03 22:08:24 +02:00
Tillmann Karras d4538c762f MemoryUtil: get executable pages near static data
and clean up a bit.
2015-06-03 21:44:31 +02:00
Tillmann Karras a0597f0d62 Jit64: turn 32 bit addresses into offsets 2015-06-03 21:44:31 +02:00
degasus eabda0efa5 Hotkeys: Implement default hotkeys
Also disable the default hotkeys of the old system.
2015-06-03 19:26:43 +02:00
comex 349f9d5493 Merge pull request #2484 from JosJuice/volume-return-types
Volume: Use more appropriate types for some returned values
2015-06-02 20:29:08 -04:00
comex 36b554613c Merge pull request #2494 from Sonicadvance1/common_disassembler
Break out the disassembler code from the WXWidgets UI.
2015-06-02 20:26:26 -04:00
comex f85db7a686 Merge pull request #2503 from sepalani/master
Fixed: NULL remoteHost in IOCTL_SO_INETATON
2015-06-02 20:23:39 -04:00
comex c0e567731a Merge pull request #2352 from JosJuice/scheduleevent-immediate-assert
CoreTiming: Add assert to ScheduleEvent_Immediate
2015-06-02 20:22:14 -04:00
comex 0c5aa54606 Merge pull request #2470 from degasus/syncgpu
Common: Blocking Loop (extracted from Fifo.cpp)
2015-06-02 20:19:00 -04:00
comex a3b3f0522b Merge pull request #1556 from comex/project-moration
Rudimentary version of Wii IPC determinism.  Ported from my old udpnet branch.
2015-06-02 18:38:19 -04:00
Sepalani f494d1f224 Removed: Unnecessary ternaries in IOCTL_SO_INETATON 2015-06-02 22:24:29 +02:00
Sepalani b95f18fc06 Fix a possible null pointer dereference 2015-06-02 21:09:03 +02:00
Sepalani 6985fd76b2 Merge remote-tracking branch 'upstream/master' 2015-06-02 20:24:54 +02:00
Sepalani 2ff5c451d0 Cleanup IOCTL_SO_INETATON 2015-06-02 20:15:05 +02:00
Tillmann Karras 794a311b11 Jit64: add FMA4 support to fmaddXX 2015-06-02 19:19:52 +02:00
Ryan Houdek 9407797d16 Merge pull request #2454 from Sonicadvance1/armv7_disable_loadstores
[ARMv7] Extend the life of the JIT Recompiler.
2015-06-02 10:42:06 -04:00
Sepalani 893ef20840 Fixed: NULL remotehost in IOCTL_SO_INETATON 2015-06-02 13:51:19 +02:00
Tillmann Karras d516e6bbf0 Jit64: swap XMM registers for later optimization
(BLENDVPD uses XMM0 as an implicit mask.)
2015-06-02 12:47:07 +02:00
Tillmann Karras b96f0fad57 WiimoteReal: fix multiple Wiimotes on OS X 2015-06-02 00:31:02 +02:00
Ryan Houdek 5ed3a5de22 [AArch64] Minor bugfix and optimization.
Fixes a bug in lfs where I was doing a rev64.16b when I needed to do a rev32.8b.
Change a ld1r.4s to a ld1r.2s.
Fix an issue where a fcvtl2 needed to be a fcvtl.
Re-enabled psq_l, issue with flickering can't be reproduced anymore, so whatever.
2015-05-31 22:03:36 -05:00
Ryan Houdek d0ae3f7d24 Break out the disassembler code from the WXWidgets UI.
This cleans up some of the code between core and UI for disassembling and dumping code blocks.
Should help the QT UI in bringing up its debug UI since it won't have to deal with this garbage now.
2015-05-31 18:16:59 -05:00
Markus Wick da97d77e08 Merge pull request #2489 from degasus/hotkeys
Hotkeys fixes
2015-05-31 23:28:26 +02:00
Ryan Houdek ac1f3ef099 Merge pull request #2492 from Sonicadvance1/fix_block_sizes
Fix JIT core's block sizes.
2015-05-31 16:49:47 -04:00
Ryan Houdek 1723217cc9 [AArch64] Don't disable tw{i,}
It's an endblock instruction, it shouldn't be disabled via the JITDISABLE macro.
2015-05-31 15:37:22 -05:00
Ryan Houdek 6c56cd0c30 Fix JIT core's block sizes.
Was causing disassembled blocks to be cut off by a few instructions at the end.
2015-05-31 14:59:17 -05:00
Ryan Houdek 210d7c4d54 Merge pull request #2486 from Tilka/x86_32
Jit64: drop more x86_32 left-overs
2015-05-31 13:06:19 -04:00
degasus bdfea96123 InputCommon: Change default hotkey for home and start.
We already use ALT + ENTER for toggling fullscreen.
But as ENTER is both home and start, this buttons will always
also be triggered on toggling fullscreen. Now we check for
those buttons if ALT is not pressed.
So now we're able to toggle fullscreen without pressing home or start.
2015-05-31 10:30:09 +02:00
Jasper St. Pierre 322c813cb6 HotkeyManager: Add missing hotkeys to the Hotkeys dialog 2015-05-31 09:27:04 +02:00
Tillmann Karras eb057d49a0 x64Emitter: drop duplicate enum & unused wrappers
Keep the more explicit version of the two SSECompare enums.

And the unused CMP* wrappers wouldn't exactly make the code more
readable anyway.
2015-05-31 08:32:31 +02:00
flacs 43ed19a663 Merge pull request #2481 from lioncash/reference
x64Emitter: Pass some OpArg parameters by const reference.
2015-05-31 08:22:55 +02:00
Tillmann Karras a6004f8274 Jit64: drop more x86_32 left-overs 2015-05-31 05:28:40 +02:00
Markus Wick c12f04eefa Merge pull request #2472 from degasus/master
AudioCommon: Remove lock on Pause state
2015-05-30 23:40:46 +02:00
degasus 02a3a063c3 Fifo: Extract syncing loop
It's now a new helper function within common.
2015-05-30 12:58:09 +02:00
JosJuice 301218a103 Volume: Use more appropriate types for some returned values
Disc number is changed from bool to u8, and revision is changed from
int to u16 (WADs can use all 16 bits, but discs can only use 8 bits).
2015-05-29 21:14:02 +02:00
Lioncash 0b8372e566 Jit_Util: Make some OpArg parameters const references 2015-05-29 01:13:45 -04:00
Lioncash e3a6191f02 x64Emitter: Pass some OpArg parameters by const reference
Considering OpArg is a struct, passing by value creates unnecessary copies.
2015-05-29 01:13:29 -04:00
Lioncash ac26f8e79f Pass strings by const reference where possible 2015-05-28 20:54:55 -04:00
comex 45b07cbdcd Fix determinism issues with Wiimote netplay.
- Change the Wiimote emulation SYSCONF R/W to use the temporary NAND if in use.
- Fix up SysConf API so this actually works.

Kind of a hack.  Like I said, this can be cleaned up when configuration
is synced...
2015-05-28 19:19:00 -04:00
comex 0d257b9e88 Don't randomly generate a serial number in deterministic mode. 2015-05-28 19:14:43 -04:00
comex 138d72313e Add a quick check to ScheduleEvent_Threadsafe to ensure it doesn't happen in deterministic mode. 2015-05-28 19:14:43 -04:00
comex dc91e8b607 Add a mode to use a dummy Wii NAND.
Eventually, netplay will be able to use the host's NAND, but this could
still be useful in some cases; for TAS it definitely makes sense to have
a way to avoid using any preexisting NAND.

In terms of implementation: remove D_WIIUSER_IDX, which was just WIIROOT
+ "/", as well as some other indices which are pointless to have as
separate variables rather than just using the actual path (fixed, since
they're actual Wii NAND paths) at the call site.  Then split off
D_SESSION_WIIROOT_IDX, which can point to the dummy NAND directory, from
D_WIIROOT_IDX, which always points to the "real" one the user
configured.
2015-05-28 19:14:42 -04:00
comex f6c6822f71 The old g_want_determinism check in WiiSockMan missed a few cases. Move to net.cpp.
Specifically, things like GETHOSTBYNAME, GETHOSTID, etc. could be done
without creating a socket, which is what the old check blocked.  Now we
check at the ioctl and ioctlv handlers.  Might be possible to get a bit
more realistic behavior in future by filtering individual ioctls, but it
probably doesn't matter.
2015-05-28 19:14:42 -04:00
comex 3173d4dcbf Disable /dev/usb/hid too. 2015-05-28 19:14:42 -04:00
comex aae104ccb4 Disable some stuff in IPC_HLE when determinism is required.
This includes net, which is nonsensical to "sync" in netplay/replays
(could have the host do the Wii networking in future though...), and USB
keyboard, which just needs some love to do the same.
2015-05-28 19:14:42 -04:00
comex a225426510 Rewrite FileSearch and improve ScanDirectoryTree.
- FileSearch is now just one function, and it converts the original glob
  into a regex on all platforms rather than relying on native Windows
  pattern matching on there and a complete hack elsewhere.  It now
  supports recursion out of the box rather than manually expanding
  into a full list of directories in multiple call sites.

  - This adds a GCC >= 4.9 dependency due to older versions having
  outright broken <regex>.  MSVC is fine with it.

- ScanDirectoryTree returns the parent entry rather than filling parts
  of it in via reference.  The count is now stored in the entry like it
  was for subdirectories.

- .glsl file search is now done with DoFileSearch.

- IOCTLV_READ_DIR now uses ScanDirectoryTree directly and sorts the
  results after replacements for better determinism.
2015-05-28 19:14:42 -04:00
degasus 9a96e3c416 AudioCommon: Remove lock on Pause state
We had to lock audiocommon with the old asynchron HLE audio emulation,
now our Mixer is just a plain FIFO which may underrun.
Of course, this will stutter, but underruning the audio backend is likely worse.
2015-05-28 19:58:18 +02:00
Markus Wick 3318120632 Merge pull request #2422 from lioncash/core
DSPCore: Make the mailbox registers atomic.
2015-05-27 09:14:41 +02:00
Lioncash ec03196267 PixelEngine: Replace volatile usages with atomics
Also removes two unused volatile variables.
2015-05-27 02:39:55 -04:00
Lioncash 5db7d4d1d5 DSPCore: Make the mailbox registers atomic. 2015-05-27 00:58:52 -04:00
Rohit Nirmal c59bfd2b7f Fix building with PCH disabled. 2015-05-26 22:44:51 -05:00
Matthew Parlane 3135b4f3e4 Merge pull request #2461 from lioncash/barrier
Thread: Remove unused Barrier class
2015-05-27 13:21:14 +10:00
Lioncash 23c11b3f27 Thread: Remove unused Barrier class 2015-05-26 19:25:59 -04:00
Tillmann Karras 6ea49da5b9 Jit64: fix ps_sum
It's /always/ the register cache.
2015-05-26 19:00:42 +02:00
Ryan Houdek b038b61a29 [ARMv7] Extend the life of the JIT Recompiler.
Until loadstores are fully investigated, let's artificially extend the life of it by disabling all of them.
These instructions break in a very terrible way and eventually all loadstores end up attempting to access memory region (u32)-1.
Disable until someone has enough time to investigate further.
2015-05-25 23:36:28 -05:00
Ryan Houdek a4a8162fb5 Merge pull request #2188 from JosJuice/dol-cleanup
DOL loader cleanup with std::vector and safety checks
2015-05-25 23:51:40 -04:00
Ryan Houdek f4625e6383 Merge pull request #2398 from JosJuice/revert-854f6b8
Attempt at fixing issue 8544 (input recording desyncs)
2015-05-25 23:49:56 -04:00
Ryan Houdek 96ef0fce38 Merge pull request #2450 from lioncash/alloc
NetPlayClient: Remove unnecessary array allocation
2015-05-25 23:42:49 -04:00
Ryan Houdek 3817dd0f91 Merge pull request #2272 from phire/jitil-floatbug
JitIL: Fix a bug in floatpoint load/store instructions.
2015-05-25 23:17:56 -04:00
Ryan Houdek 7c04c76a26 Merge pull request #2421 from Tilka/jit_stuff
Jit64: fixes + less code
2015-05-25 23:08:24 -04:00
Ryan Houdek 0c5f5c4519 Merge pull request #2394 from Sonicadvance1/android_block_profiling_api
[Android] Block profiling JNI interface
2015-05-25 23:06:37 -04:00
Ryan Houdek 95f9096068 Merge pull request #2396 from Sonicadvance1/fix_racing_cpu_core
Fix a race condition when pausing the CPU core.
2015-05-25 23:06:18 -04:00
Ryan Houdek 99d9161e49 Merge pull request #2429 from Sonicadvance1/aarch64_block_profile
[AArch64] Implement block profiling.
2015-05-25 23:05:54 -04:00
Markus Wick 1fc3c8aa02 Merge pull request #2451 from degasus/master
DSP: Inline DSPControl into DSPState
2015-05-25 15:19:31 +02:00
Ryan Houdek 69963dc4b0 Merge pull request #2274 from degasus/disable_bbox
Disable bbox
2015-05-25 08:46:12 -04:00
Tillmann Karras 30ebb2459e Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
Tillmann Karras cefcb0ace9 Update license headers to GPLv2+ 2015-05-25 13:22:31 +02:00
Tillmann Karras 268f52e054 Add missing license headers 2015-05-25 13:11:47 +02:00
Tillmann Karras 6d9986846c Simplify some more license headers 2015-05-25 13:11:41 +02:00
degasus dd35f5df94 DSP: Inline DSPControl into DSPState
This was a struct with exactly one element, and
an overloaded constructor which matches the construtor
of this element. So there is no need for this stacked
structur.
2015-05-25 10:56:14 +02:00
degasus ac0e304159 Jitregister: fix common-core dependency 2015-05-25 09:33:34 +02:00
Lioncash b0075966af NetPlayClient: Remove unnecessary array allocation 2015-05-24 22:53:25 -04:00
Lioncash ac89d00718 DSPCaptureLogger: Add virtual destructor
Silences a warning.
2015-05-24 00:44:49 -04:00
Lioncash 1d2b29734a NetPlayClient: Rename time variables to be more self-explanatory 2015-05-23 23:07:52 -04:00
Lioncash 6dd10033d3 NetPlayClient: Fix reassembling of system time from packets
The shifts need to be swapped to correctly reassemble a 64-bit integer.
2015-05-23 23:06:30 -04:00
Lioncash 760a17abef WII_IPC_HLE_Device_net: Fix a leak with getaddrinfo 2015-05-22 13:15:27 -04:00
Tillmann Karras df34d43936 Jit64: merge ps_sign into fsign 2015-05-21 12:33:37 +02:00
Tillmann Karras 36d6a16559 Jit64: merge ps_maddXX into fmaddXX 2015-05-21 12:33:37 +02:00
Tillmann Karras c6147c5ed5 Jit64: merge ps_arith into fp_arith 2015-05-21 12:33:37 +02:00
Tillmann Karras 6d23b511a6 Jit64: merge tri_op into fp_tri_op 2015-05-21 12:33:37 +02:00
Tillmann Karras dc220fa13d Jit64: merge ps_sel into fselx 2015-05-21 12:33:36 +02:00
Tillmann Karras 05a55de08f Jit64: optimize ps_sum 2015-05-21 12:33:36 +02:00
Tillmann Karras ece0ef4ca8 Jit64: add packed optimization to frsp 2015-05-21 12:33:36 +02:00
Tillmann Karras 6b8ab5993a Jit64: make ForceSinglePrecision more versatile 2015-05-21 12:33:36 +02:00
Tillmann Karras 9792976ee9 Jit64: fix ForceSinglePrecisionS/P
This bug never broke anything because of how these functions are used.
Fixing it should avoid some false dependencies though.
2015-05-21 12:33:36 +02:00
Tillmann Karras a7d753922d Interpreter: fix instruction table flags of frsp
frsp overwrites both ps0 and ps1 so frD is not an input. Regardless of
whether that's what the hardware does, it's what we do.
2015-05-21 12:33:36 +02:00