Commit Graph

12381 Commits

Author SHA1 Message Date
Ryan Houdek
f09cb723c5 Merge pull request #1044 from lioncash/pedantry
Common: Fix code styling in Arm64Emitter
2014-09-08 23:29:19 -05:00
skidau
44c4bc134a Merge pull request #1046 from FioraAeterna/fixdebug
JIT: fix running in debug mode
2014-09-09 14:15:35 +10:00
Fiora
0af1352020 JIT: fix running in debug mode
Regression in 7fb6628.
2014-09-08 21:11:41 -07:00
Ryan Houdek
d9ddc0d9ad Merge pull request #1042 from lioncash/unnecessary
InputCommon: Remove unnecessary breaks in XInput's GetName function
2014-09-08 22:46:58 -05:00
Ryan Houdek
af732dea39 Merge pull request #1043 from lioncash/unused
Common: Remove unused variable in MemoryMap_Setup
2014-09-08 22:46:04 -05:00
Ryan Houdek
cfb2c3db28 Merge pull request #1045 from Sonicadvance1/fix-generic
Fix Generic build from AArch64 merge.
2014-09-08 22:43:30 -05:00
Ryan Houdek
d5da60619e Merge pull request #1034 from Sonicadvance1/fix-android-arm-ndk64bit
Fix building ARMv7 on the 64bit Android NDK.
2014-09-08 22:42:31 -05:00
Lioncash
bc331ee809 Common: Fix code styling in Arm64Emitter 2014-09-08 23:39:20 -04:00
Ryan Houdek
ed476c997c Fix Generic build from AArch64 merge.
I had missed this file and hadn't tested the branch on my new build system.
2014-09-08 22:24:23 -05:00
skidau
0926f1d344 Merge pull request #897 from Sonicadvance1/AArch64-jit
Initial AArch64 JIT
2014-09-09 12:34:58 +10:00
Lioncash
22800dc711 Common: Remove unused variable in MemoryMap_Setup 2014-09-08 21:44:03 -04:00
Lioncash
c2578d0668 InputCommon: Remove unnecessary breaks in XInput's GetName function 2014-09-08 21:36:04 -04:00
Ryan Houdek
859f86ac2d Merge pull request #1037 from lioncash/mem_fn
AudioCommon: Remove unnecessary usages of mem_fn
2014-09-08 18:01:33 -05:00
Lioncash
bf0c4a644b Merge pull request #1002 from waddlesplash/wx-fixup
WiiSaveCrypted: migrate to Core/HW.
2014-09-08 15:20:12 -04:00
Lioncash
789a500ddc AudioCommon: Remove unnecessary usages of mem_fn 2014-09-08 13:41:02 -04:00
Augustin Cavalier
e601b6f2c5 WiiSaveCrypted: migrate to Core/HW.
There's really no reason to have this in DolphinWX, as it does
not use any DolphinWX code.
2014-09-08 13:31:23 -04:00
Ryan Houdek
652b8602d3 Fix building ARMv7 on the 64bit Android NDK.
Google has gotten their act together and fixes a few of the signal handling headers.
Change over to a header that works on both r10 32bit and r10 64bit.
32bit has the old "broken" headers as in some didn't even exist.
64bit has the "fixed" headers that one would expect on any regular unix system.
2014-09-08 06:05:03 -05:00
skidau
9529667eae Merge pull request #1032 from FioraAeterna/fixnocc
JIT: fix conditional-continue=off
2014-09-08 17:34:28 +10:00
Fiora
3855396422 JIT: fix conditional-continue=off 2014-09-08 00:28:56 -07:00
Ryan Houdek
d3a742eb38 Merge pull request #1028 from Sonicadvance1/fix-android-cmake
Fix a few minor bugs that appeared in the latest android cmake script
2014-09-08 02:28:21 -05:00
skidau
dae162c2b5 Merge pull request #971 from TurboK234/EFB_copies_togglefix
Remove "EFB Copies Disabled" option from hotkey toggling cycle.
2014-09-08 17:05:52 +10:00
comex
7fb6628789 Merge pull request #1024 from comex/abi-cleanup
ABI cleanup
2014-09-08 01:03:36 -04:00
comex
4dc090643d Remove ABI_AlignStack/ABI_RestoreStack and the noProlog option to ABI_CallFunctionRR.
The latter being true was the only case where the former would do
anything, and it was never true.  They became obsolete with x86's
removal.
2014-09-08 01:00:10 -04:00
comex
c5c0b36046 Remove the inaccurately named ABI_PushAllCalleeSavedRegsAndAdjustStack (it didn't preserve FPRs!) and replace with ABI_PushRegistersAndAdjustStack.
To avoid FPRs being pushed unnecessarily, I checked the uses: DSPEmitter
doesn't use FPRs, and VertexLoader doesn't use anything but RAX, so I
specified the register list accordingly.  The regular JIT, however, does
use FPRs, and as far as I can tell, it was incorrect not to save them in
the outer routine.  Since the dispatcher loop is only exited when
pausing or stopping, this should have no noticeable performance impact.
2014-09-08 01:00:10 -04:00
comex
2dafbfb3ef Improve code and clarify parameters to ABI_Push/PopRegistersAndAdjustStack.
- Factor common work into a helper function.
- Replace confusingly named "noProlog" with "rsp_alignment".  Now that
x86 is not supported, we can just specify it explicitly as 8 for
clarity.
- Add the option to include more frame size, which I'll need later.
- Revert a change by magumagu in March which replaced MOVAPD with MOVUPD
on account of 32-bit Windows, since it's no longer supported.  True,
apparently recent processors don't execute the former any faster if the
pointer is, in fact, aligned, but there's no point using MOVUPD for
something that's guaranteed to be aligned...

(I discovered that GenFrsqrte and GenFres were incorrectly passing false
to noProlog - they were, in fact, functions without prologs, the
original meaning of the parameter - which caused the previous change to
break.  This is now fixed.)
2014-09-08 00:58:56 -04:00
Ryan Houdek
707d21e36b Fix a few minor bugs that appeared in the latest android cmake script 2014-09-07 23:18:43 -05:00
skidau
262fa1de02 Merge pull request #1026 from lioncash/str
DolphinWX: Use std::string over char arrays in MemoryView
2014-09-08 10:40:16 +10:00
Lioncash
9db370ea40 DolphinWX: Use std::string over char arrays in MemoryView 2014-09-07 20:36:02 -04:00
skidau
c70f31cca9 Merge pull request #1016 from lioncash/vardecl
Common: Inline declare some loop variables in ArmEmitter
2014-09-08 10:24:38 +10:00
Lioncash
e218c38721 DolphinWX: Remove unnecessary unique_ptr get calls in InputConfigDiag 2014-09-07 01:59:56 -04:00
Lioncash
a38093729e Common: Inline declare some loop variables in ArmEmitter 2014-09-07 00:26:26 -04:00
skidau
7863295555 Used a constant for the default high value. 2014-09-07 14:25:06 +10:00
skidau
8abe9622fd Route the wiimote speaker to the sound mixer (the host system's speakers). Emulated Wiimote speaker sounds will go to the host system's speakers. Real Wiimotes will continue to use their own speaker for Wiimote speaker sounds. All Wiimote speaker sound can be disabled by unchecking the "Enable Speaker Data" option.
Each emulated Wiimote can have its speaker routed from left to right via the "Speaker Pan" setting in the emulated wiimote settings dialog.  Use any value from -127 for leftmost to 127 for rightmost with 0 being the centre.

Added code in the InputConfig to use a spin control for non-boolean values.

Defaulted the setting of "Enable Speaker Data" to disabled.
2014-09-07 14:16:20 +10:00
skidau
3caab10df8 Hooked up the emulated Wiimote speaker.
The Wiimotes are positioned as follows:
Wiimote 0 = Center
Wiimote 1 = Left
Wiimote 2 = Right
Wiimote 3 = Center

The Wiimote speaker output can be disabled via the "Enable Speaker Data" checkbox in the Wiimote settings.
2014-09-07 14:16:20 +10:00
skidau
b801c7f8f1 Merge pull request #1015 from zhuowei/update_debugger_menu_at_startup
Update debugger button states at startup to disable non-functional JIT menu items
2014-09-07 14:14:11 +10:00
skidau
a21ad12f1e Merge pull request #1014 from RachelBryk/active-movie
Add an IsMovieActive function.
2014-09-07 14:05:59 +10:00
Rachel Bryk
5a163ec5e6 Add an IsMovieActive function.
Makes things a bit simpler, since this is a common check.
2014-09-06 23:44:25 -04:00
skidau
741c0e2d50 Merge pull request #587 from RachelBryk/recording-race
Don't allow starting recording in states that will cause a crash or othe...
2014-09-07 13:41:57 +10:00
Zhuowei Zhang
e0a909c076 Update debugger button states at startup to disable non-functional JIT menu entries 2014-09-06 23:38:22 -04:00
skidau
213c9a6ba7 Merge pull request #1011 from zhuowei/remove_twi_spam
Downgrade the ERROR log printed when twi is executed in interpreter to DEBUG
2014-09-07 13:33:31 +10:00
skidau
28253f4538 Merge pull request #1013 from lioncash/string
AudioCommon: Use std::string for the filename parameter of StartLogAudio
2014-09-07 13:32:55 +10:00
Lioncash
daddc3317e AudioCommon: Use std::string for the filename parameter of StartLogAudio 2014-09-06 23:26:08 -04:00
Zhuowei Zhang
2ac2cbbcf6 Downgrade the ERROR log printed when twi is executed in interpreter to DEBUG 2014-09-06 22:36:17 -04:00
Ryan Houdek
cdd2bd6cdc Add a couple of asserts to the Arm64 JIT to make sure we can load everything. 2014-09-06 20:14:53 -05:00
Ryan Houdek
82dae72b63 Add AArch64 target to the backpatch header.
This fixes the issue of a million warnings spawning from this header.
2014-09-06 20:14:53 -05:00
Ryan Houdek
5233c87dec Add immediate support to the GPR cache. 2014-09-06 20:14:53 -05:00
Ryan Houdek
2b06257e16 Beginning of the AArch64 JIT branch.
This is the bare minimum required to run a few games on AArch64.
Was able to run starfield and Animal Crossing to the Nintendo logo.
QEmu emulation is literally the slowest thing in the world, it maxes out at around 12mhz on my Core i7-4930MX.
2014-09-06 20:14:52 -05:00
Ryan Houdek
f107b5e176 [AArch64-emitter] Initial work on a emitter for 64bit ARM.
I've tested a few instruction encodings and am expecting most to work as long as one stays away from VFP/SIMD.
This implements mostly instructions to bring up an initial JIT with integer support.
This can be improved to allow ease of use functions in the future, dealing with the raw imms/immr encodings is probably the worst thing ever.
2014-09-06 20:13:44 -05:00
Shawn Hoffman
9a9fd8752a Quiet initialization order warning in CFrame 2014-09-06 13:01:24 -07:00
shuffle2
9302218a19 Merge pull request #851 from lioncash/logg
Common: Kill off duplicate log warning definitions
2014-09-06 12:35:19 -07:00