Commit Graph

13848 Commits

Author SHA1 Message Date
7f50cc0873 [AArch64] Optimize slowmem paired stores.
This came up from the discussion we were having prior about dumping half of a kilobyte of VFP registers to the stack is insanity.
This was due to me basically copying exactly what I did on ARMv7's paired loadstores, where the impact is less since we only use the bottom 64bits of
the VFP registers.

So I decided to think about how to improve upon this since I got called out on my terrible code.
The solution I have come up with is instead of jumping to the common ASM routine and having that check if it needs to take the fastmem or slowmem
routes, just inline the check in to the JIT block and jump to either a fastmem or slowmem handler.
Fairly simple, and this allows us to only flush the registers that are required when doing so. Should give a reasonable increase in performance for
games that use the slowmem path quite a lot.
2015-03-08 16:12:49 -05:00
f6511c3ba5 [AArch64] Add an assert to SMOV in the emitter.
SMOV doesn't have an encoding for moving a 32bit element to a 32bit GPR.
One should use UMOV if they want that.
2015-03-08 12:29:45 -05:00
f3f2ed1536 GLX: fix memory leak 2015-03-08 17:42:37 +01:00
b0f61201c3 Merge pull request #2142 from Sonicadvance1/fix_gles31_non_nvidia
Fix OpenGL ES 3.1 on non-Nvidia devices.
2015-03-08 09:03:05 -05:00
a9622c247b Merge pull request #2146 from Sonicadvance1/aarch64_optimize_fpr_push_pop
[AArch64] Optimize FPR pushing and popping.
2015-03-08 08:51:45 -05:00
a984b2476a Merge pull request #2144 from Sonicadvance1/android_autostart
[Android] Support arguments from Activity Monitor.
2015-03-08 08:50:27 -05:00
3c5e99c777 Fix OpenGL ES 3.1 on non-Nvidia devices.
We are declaring we require ARB_shader_image_load_store in the shader, this isn't an extension on GLES because it is part of the GLSL ES 3.1 spec.
If we are running as GLES then just not put it in the shaders.
2015-03-08 08:49:53 -05:00
70977fd6b1 Merge pull request #2092 from Sonicadvance1/gles_occlusion_queries
Implement full occlusion queries for the Nexus 9.
2015-03-08 08:44:15 -05:00
c2b2e03f73 [Android] Support arguments from Activity Monitor.
Activity Monitor can start activities by using adb to invoke it.
This will allow us to set the user directory and autostart file from adb.

adb shell am start -n org.dolphinemu.dolphinemu/.gamelist.GameListActivity -e AutoStartFile /sdcard/AC.gcz -e UserDir /sdcard/dolphin-emu2/

This allows more automated testing to be done with Dolphin on Android.
2015-03-08 08:43:25 -05:00
3e12787cc8 Fixed a crash on launch which occurred if the hotkeys are not defined and the default hotkeys are loaded. 2015-03-08 20:27:14 +11:00
8f0bc1cd3a Slowed down the freelook speed keys and allowed the depth/convergence keys to be held down. 2015-03-08 20:27:13 +11:00
9c133c0509 Readded the Key Shortcut function. 2015-03-08 20:27:13 +11:00
12ecc537e9 Renamed the Menu Accelerators to Key Shortcuts.
Cleared the default mapping of hotkeys as they were conflicting with the key shortcuts.
Removed the Open, Change Disc, Refresh List and Exit hotkeys as they work only when driven from the menu.
2015-03-08 20:27:13 +11:00
780eef68f6 Fixed the crash that would occur when the Refresh button was pressed in the controllers config.
- Simplified the locking mechanism when controllers were updated
- Reloaded the config of the controls instead of re-initialising the control plugins
- Fixed controls being unresponsive after the Refresh button was pressed
- Disables the hotkeys while the controller config is open
2015-03-08 20:27:13 +11:00
b446ea0132 Made the freelook keys work while held down 2015-03-08 20:27:13 +11:00
099876782f Made the "Frame Advance" hotkey work while the key is held 2015-03-08 20:27:13 +11:00
a83d27b9c2 Increased the performance of the hotkey code by:
* Halving the number of hotkeys checked for (there were extra for future use)
* Gets the controller status once before parsing hotkeys
* Checks for the GUI lock once before parsing hotkeys
* Removed some redundant memsets
2015-03-08 20:27:12 +11:00
d2abbcd353 Removed the requirement to have the Freelook option enabled for the freelook hotkeys to work. 2015-03-08 20:27:12 +11:00
d080632527 Ignore the File Open command if a game is running 2015-03-08 20:27:12 +11:00
679d9351ea Fixed the Connect Wiimote hotkeys from getting activated while a GameCube game is running. 2015-03-08 20:27:12 +11:00
cc6b55ee2a Fixed the save state hotkeys so that they work with the Render to Main Window option. 2015-03-08 20:27:12 +11:00
3987725217 VertexLoaderX64: fix harmless off-by-one error 2015-03-08 04:43:59 +01:00
9c045e2496 Merge pull request #2094 from lioncash/flags
Interpreter: Flag cleanups/fixes.
2015-03-07 17:38:00 -08:00
11b437ffd1 Consistently sort games with the same name but different revision or region. 2015-03-07 05:17:46 -05:00
3df51e553f Fix crash when server's client disconnects. 2015-03-07 04:40:24 -05:00
12155ddee4 Added the ability to split the Debugger window horizontally and vertically via the Add Panes menu. 2015-03-07 12:33:33 +11:00
4a41ab1715 Fix 4.0-5689 regression (AR codes, patches)
CreateCodeTab, ARCodeAddEdit and PatchAddEdit
need to be able to modify arCodes/onFrame.
2015-03-06 12:26:40 +01:00
a3f6cbfe6b Merge pull request #2167 from JosJuice/language-selection-regression
Call SetUserDirectory before InitLanguageSupport
2015-03-06 15:25:51 +11:00
47c8955248 Merge pull request #2168 from JosJuice/language-selection-untranslated
Display languages untranslated in GUI language selection
2015-03-05 18:05:23 -05:00
92ba677371 Merge pull request #2174 from skidau/warning-fix-gc-adapter
Warning fix
2015-03-05 14:56:19 -08:00
ef3fd68603 Warning fix 2015-03-06 09:34:38 +11:00
45dbcf0ed2 Jit64: use MRegSum where appropriate 2015-03-05 21:58:28 +01:00
e27fae22d8 Jit64: drop a FIXME that has been fixed for years
See 6cdb40a194.
2015-03-05 21:58:28 +01:00
b7514955e5 Merge pull request #2113 from Stevoisiak/VolumeCleanup
Basic volume code cleanup
2015-03-05 12:18:53 -05:00
203c64e66d Changed the GC Adapter rumble command to work like other controllers. 2015-03-05 23:57:18 +11:00
4cf4cee30e Removed the GC Adapter "Use Thread" option as it was not useful. 2015-03-05 23:30:43 +11:00
e5277a5f49 Ignore invalid rumble data sent over Netplay to the GC Adapter 2015-03-05 23:11:48 +11:00
dee6a04980 Moved the gcpad calibration from construction to runtime 2015-03-05 23:06:19 +11:00
863a4c9ce0 Fix clamping for rectangles.
Clamping a rectangle correctly requires fully clamping all four
coordinates in the general case.

This should fix issue 6923, sort of; at least, it fixes the part where a
rectangle ends up with a nonsensical height after being clamped.
2015-03-04 17:15:29 -08:00
c40e1d972a Sort language list alphabetically by new names 2015-03-04 20:36:04 +01:00
a8a9dafb1f Display languages untranslated in GUI language selection 2015-03-04 20:35:19 +01:00
2cb4a3efbc Call SetUserDirectory before InitLanguageSupport
Fixes a regression from 4.0-5692 where only the system language was used.
2015-03-04 14:45:36 +01:00
a11bbe6fea PPCTables: Remove FL_OUT_S.
This is unused, and since it had the same value as FL_OUT_D, it was unnecessarily setting the rS register as an output, even on instructions that only have FL_OUT_D set.
2015-03-03 16:23:28 -05:00
139dbcb8e2 Interpreter_Tables: Fix wrong flags and add missing ones 2015-03-03 16:23:21 -05:00
f4750804ab Add various loads and stores to JitIL 2015-03-03 11:17:25 -06:00
96c4b332f6 FileMonitor: Check log level in addition to FileMonitor checkbox
This is good for performance when FileMontior is selected
but the log level only is set to notice or warning.
The ability to do this wasn't available until recently:
1ed41672f5
2015-03-03 11:33:16 +01:00
fbdee7b15f [AArch64] Handle FPR island registers in a less dumb way. 2015-03-03 00:30:05 -06:00
81242dd4a7 [AArch64] Allow the other FPR push/pop routines to use a temporary register. 2015-03-02 21:38:09 -06:00
a5ea6c6e93 enet: fix Visual Studio files 2015-03-02 22:20:37 +01:00
691b690afe enet: Search for shared library 2015-03-02 22:18:57 +01:00