mr.greywater
2434b531f3
D3D: Fixed crash rendering EFB textures with MSAA
...
Rendering EFB textures currently crashes with the D3D backend when MSAA is enabled, because the depth texture wasn't correctly resolved. An example for a crash would be starting Pokemon Snap with D3D and MSAA enabled.
2015-02-08 21:03:15 +01:00
Fiora
451c4f3c4b
Merge pull request #1969 from JosJuice/dvd-decryption-optimization
...
VolumeWiiCrypted: Decryption optimization
2015-02-08 11:57:55 -08:00
mr.greywater
a1f8c232b2
Fix warning message when loading german discs
...
Added COUNTRY_GERMANY as EUR_DIR so it will not show the warning message that the GCM/ISO is invalid. Also refactors the code to remove duplicate code.
2015-02-08 16:38:35 +01:00
JosJuice
28b441ebea
VolumeWiiCrypted: Replace some hardcoded values with constants
2015-02-08 10:31:17 +01:00
Lioncash
537b9e507b
Merge pull request #1998 from FL-dolphinemu/align_g_HKData_struct
...
Vertical aligned all members of g_HKData struct.
2015-02-07 21:31:45 -05:00
Lioncash
9d5c6c55fe
OnScreenDisplay: Allow for different colored messages
2015-02-07 17:35:21 -05:00
Lioncash
3767ddcacf
Merge pull request #2019 from Buddybenj/website
...
Web Site -> Website
2015-02-07 17:06:23 -05:00
Fiora
73d65f3ad3
Merge pull request #1874 from magumagu/remove-unchecked-reads
...
JIT: cleanup instrction merging for idle loop and dcbst.
2015-02-07 13:48:22 -08:00
Benjamin Przybocki
e75b5165c2
Web Site -> Website
2015-02-06 16:13:35 -06:00
skidau
8f4bcf3ec3
Merge pull request #2012 from lioncash/memswitch
...
Memmap: Fix switch fallthroughs
2015-02-06 21:47:24 +11:00
skidau
66d80b75e2
Merge pull request #1939 from Sintendo/dspjit_ccnits
...
Minor DSP JIT optimizations
2015-02-06 13:53:09 +11:00
Stevoisiak
b578abfbaa
VolumeWad: Return version number for WADs
2015-02-05 11:27:57 -05:00
JosJuice
3414f818cd
DVDInterface: Get rid of DVDCommandResult struct
...
It's only used in one place and is no longer necesssary.
2015-02-05 15:10:31 +01:00
JosJuice
af4f872dfe
DVDInterface: Schedule event in ExecuteCommand
2015-02-05 15:10:14 +01:00
mathieui
8e556603af
Fix issues with the GC adapter handling code
...
If we successfully detach the kernel driver from the interface, we
should continue instead of aborting the setup.
And we should not use libusb_handle_events(), as the API says it is only
for backwards compatibility. Additionally, if the adapter thread is not
active, dolphin will take 60 seconds to close because the
libusb_handle_events() timeout is hardcoded to 60 seconds. Instead, use
libusb_handle_events_timeout_completed() with a timeout of 1 second.
Also, cancel the libusb transfers before the join(), to be able to close
the usb device without libusb screaming in the background (and
potentially crashing).
And finally, split the Init() and Shutdown() functions to avoid having
to init and exit libusb every time we neeed to detect the adapter.
2015-02-05 10:03:21 +01:00
Sintendo
46df8a5358
Correct clobber comments
2015-02-04 22:26:40 +01:00
Sintendo
ca0790e9c9
Merge Update_SR_Register64_Carry functions
2015-02-04 22:26:40 +01:00
Sintendo
34afe08de9
Minor DSP JIT optimizations
2015-02-04 22:26:39 +01:00
degasus
68c70be960
HotKey: fix warnings
2015-02-04 20:19:16 +01:00
Gabriel Corona
266d50c811
Use the C locale for non-Windows CharArrayFromFormatV() and StringFromFormat()
...
The Windows implementations of CharArrayFromFormatV() and
StringFromFormat() use the "C"/".1252" locale instead of the user
locale (using _vsnprintf_l). On non-Windows, the user locale was used.
This leads to bugs on non-Windows: the Overclock parameter was
serialised with the user locale ("0,279322" in some locale) and was
interpreted back as "0" (because the C locale is used for parsing the
string).
Make non-Windows CharArrayFromFormatV() and StringFromFormat()
consistent with their Windows counterpart.
The locale code is not enables for Android:: uselocale is only
available since API 21 and API 21 only supports C and C.UTF-8.
2015-02-04 17:49:22 +01:00
Lioncash
e07679114b
Use emplace_* functions where in-place construction is preferable
2015-02-04 11:39:08 -05:00
Lioncash
d7c6a7522d
Memmap: Fix switch fallthroughs
...
Fixes a bug where out of range MEM2 accesses would hit the locked cache.
2015-02-04 08:28:52 -05:00
skidau
3709a1ce3a
Fixed the crash which occurred when opening Wiimote configuration before a game was started.
2015-02-04 18:48:19 +11:00
skidau
fc8ea9c3b3
Ignore hotkeys if the game has not started.
2015-02-04 18:06:20 +11:00
skidau
b9fb6ad3e8
Initialised all controller interfaces together on CFrame construction to fix the crash that would occur if the controller config were opened before a game was started.
2015-02-04 18:05:22 +11:00
skidau
5e645732f2
Merge pull request #1949 from skidau/hotkey-input
...
Added the ability to map gamepad buttons to hotkeys.
2015-02-04 14:35:03 +11:00
skidau
c18c50a0e1
Merge pull request #1904 from magumagu/d3d-allow-nooutput-adapter
...
D3D: allow selecting adapters with no outputs.
2015-02-04 13:09:27 +11:00
Markus Wick
b2df8cb87f
Merge pull request #2005 from magumagu/d3d-efb-depth
...
Fix regression for D3D EFB depth copies.
2015-02-03 20:50:20 +01:00
magumagu
57d94de2ad
Fix regression for D3D EFB depth copies.
...
On D3D, we read from the depth buffer using the format
DXGI_FORMAT_R24_UNORM_X8_TYPELESS (essentially, the "r" component contains
the depth, and the other components contain nothing).
2015-02-03 11:27:27 -08:00
skidau
4e7d2ab893
Merge pull request #1985 from CarlKenner/accelerometers
...
Fix accelerometer wiimote/nunchuk emulation.
2015-02-02 12:15:43 +11:00
Lioncash
031422c596
Merge pull request #2000 from degasus/master
...
VideoBackends: set GLInterface to zero after deleting it
2015-02-01 07:59:18 -05:00
degasus
081137bd4f
VideoBackends: set GLInterface to zero after deleting it
...
This fixes a crash on opening the gfx settings after closing a game.
2015-02-01 13:51:34 +01:00
FL.dolphinemu
4f65787888
Vertical aligned all members of g_HKData struct.
2015-02-01 10:07:22 +01:00
Ryan Houdek
f9c2d73970
Remove an old comment about stfiwx.
...
This instruction does exactly what it is supposed to. No need for this comment.
2015-02-01 00:30:53 -06:00
Markus Wick
3c475b91ea
Merge pull request #1993 from Armada651/line-perspective
...
GeometryShaderGen: Perspective divide the line coordinates before comparing the angle.
2015-01-31 23:45:54 +01:00
Jules Blok
8c55ec0d51
GeometryShaderGen: Perspective divide the line coordinates before comparing the angle.
2015-01-31 23:32:23 +01:00
Markus Wick
ca5e2e6f16
Merge pull request #1989 from lioncash/leak
...
OGL: Fix a memory leak that would occur every time a game is launched
2015-01-31 23:06:21 +01:00
Lioncash
9476756d43
OGL: Fix a memory leak that would occur every time a game is launched
2015-01-31 16:00:53 -05:00
magumagu
30d15b3a32
Clean up usage of PowerPCState::Exceptions.
...
Accessing any member of ppcState from a thread other than the CPU thread
is not allowed; don't pretend that there's any exception to that rule.
2015-01-31 12:02:45 -08:00
Tillmann Karras
1aac65f988
VertexLoaderManager: assimilate GetVertexSize()
2015-01-31 09:23:50 +01:00
skidau
d50b330d57
Merge pull request #1976 from lioncash/size
...
InputConfigDiag: Fit buttons to their text
2015-01-31 12:34:35 +11:00
skidau
3b07fe01a2
Merge pull request #1982 from skidau/AGP-hash
...
Advance Game Port (AGP) fixes
2015-01-31 12:34:01 +11:00
magumagu
5a3f75f5cf
Use faster CheckGatherPipe from JIT.
...
We don't need to profile explicit calls to CheckGatherPipe: we aleady know
where they are. Skip profiling, and explciitly insert an exception check.
While I'm here, get rid of unused code in JitIL.
2015-01-30 17:00:58 -08:00
magumagu
47be9d8e6b
Clean up usage of ScheduleEvent_Threadsafe.
2015-01-30 14:48:23 -08:00
Ryan Houdek
a277172b49
Merge pull request #1980 from Sonicadvance1/AArch64_more_optimizations
...
[AArch64] Minor optimizations
2015-01-30 08:33:19 -06:00
Ryan Houdek
7cd80200ed
[AArch64] Remove an extraneous nop in 8bit fastmem stores.
2015-01-30 08:30:17 -06:00
Ryan Houdek
4ff2f105cc
[AArch64] Implement MMIO Writes.
2015-01-30 08:30:11 -06:00
Lioncash
b1547b9c8b
Use unique_ptr for some IVolume instances
2015-01-29 21:33:19 -05:00
skidau
ccc1e9aa65
Changed the hash array to a CRC8 function.
2015-01-30 13:33:17 +11:00
CarlKenner
fb370110dc
Fix horribly broken accelerometer emulation.
...
It now emulates the least significant bits.
And it no longer treats maximum acceleration in one direction as being in the opposite direction.
2015-01-30 12:38:21 +10:30
skidau
855ad6f1d3
Fixed an overflow bug in Jit64.
2015-01-30 13:00:23 +11:00
skidau
a42fb80f6a
Added a hash key finder.
...
Fixed the memcard and AGP path parsing in Windows (the code is expecting '/' to be used as the DIR_SEP).
2015-01-30 13:00:23 +11:00
skidau
b92eb03d26
Merge pull request #1973 from degasus/master
...
OpcodeDecoder: Calculate decoding time for vertices
2015-01-30 12:58:52 +11:00
skidau
83a9f1b850
Merge pull request #1972 from lioncash/ref
...
EXI_DeviceAGP: Pass string by reference
2015-01-30 12:58:26 +11:00
degasus
20628b6e5d
OpcodeDecoder: Calculate decoding time for vertices
2015-01-29 19:55:28 +01:00
Ryan Houdek
a2b872b9da
Merge pull request #1983 from Sonicadvance1/remove_comment
...
Remove an old outdated comment that makes no sense.
2015-01-29 09:51:16 -06:00
Ryan Houdek
9b4a896353
Remove an old outdated comment that makes no sense.
...
This comment was left over from a long time ago. It is no longer true.
2015-01-29 09:40:22 -06:00
Ryan Houdek
631c8a981e
[AArch64] Minor performance improvements to paired stores.
...
We can combine these two ST1 calls in to a single ST1 call.
Saves a few cycles in paired stores
2015-01-29 06:07:00 -06:00
Ryan Houdek
235f6c2445
[AArch64] Don't flush VFP register to stack when not needed.
2015-01-29 06:07:00 -06:00
Ryan Houdek
c8c062fa96
[AArch64] Add support for MMIO loads.
...
Should give a small performance benefit.
2015-01-29 06:06:54 -06:00
Ryan Houdek
1c388b6c37
Fix clang on x86_64.
...
If we are compiling in the CRC32 hash, clang has an issue with casting a s32 to a u64.
Change our lens argument to a unsigned integer to fix the issue.
2015-01-29 01:55:20 -06:00
Ryan Houdek
8c53b88cc3
[AArch64] Implement a way to call lambdas in the emitter
2015-01-29 01:50:11 -06:00
Lioncash
73b77f55ba
DSPDebugWindow: Fix issue where the DSPLLE window would hang Dolphin on OSX
2015-01-28 14:01:11 -05:00
Rohit Nirmal
5203c4ef7b
Silence -Wunused-variable warning.
2015-01-28 18:09:07 +00:00
Lioncash
cf156d4d37
InputConfigDiag: Fit buttons to their text
...
Fixes slight sizing issues on high DPI displays.
2015-01-28 13:07:17 -05:00
Markus Wick
109fa8c2c8
Merge pull request #1800 from randomstuff/jit-register
...
Add support of more JIT-compiled code for profiling
2015-01-28 13:23:32 +01:00
Gabriel Corona
c3777bbd69
JitRegister: TrampolineCache
2015-01-28 10:41:45 +01:00
Gabriel Corona
329834f653
JitRegister: JitAsm
2015-01-28 10:41:03 +01:00
Gabriel Corona
3c14930a0a
JitRegister: JitAsmCommon
...
Allows profiling/debugging tools to know about JITed code.
2015-01-28 10:40:05 +01:00
Gabriel Corona
a4adfe194a
JitRegister: overload Register with a [start,end) variant
2015-01-28 09:50:19 +01:00
Gabriel Corona
a957f93532
Use printf-like format in JitRegister::Register
...
The API is cleaner (no more magic default parameter) and more
extensible like this.
2015-01-28 09:47:08 +01:00
Markus Wick
eedc7bb582
Merge pull request #1975 from Tilka/fix_warning
...
CoreTiming: fix warning
2015-01-28 09:33:39 +01:00
Tillmann Karras
257deb7886
CoreTiming: fix warning
2015-01-28 08:27:14 +01:00
magumagu
0030ad9ecf
Fix D3D regression from PR1948.
...
Make sure we don't have a texture bound as both an ShaderResourceView and
a RenderTargetView; this causes rendering glitches.
This isn't really the right place to do this... but I'm not sure
how the code should be structured.
2015-01-27 18:25:35 -08:00
Markus Wick
beaa9905a6
Merge pull request #1966 from magumagu/unify-efb-encode
...
Unify EFB encoding shader generation
2015-01-27 23:14:18 +01:00
Markus Wick
da31314775
Merge pull request #1970 from magumagu/d3d-cleanup
...
D3D: delete unnecessary code.
2015-01-27 22:26:46 +01:00
Lioncash
7dc5bc622f
EXI_DeviceAGP: Pass string by reference
2015-01-27 10:15:27 -05:00
JosJuice
443d371fa3
DVDInterface: Don't use return for ExecuteReadCommand result
...
There's a small timing change here. If no disc is inserted, the
ticks_until_completion passed to ExecuteReadCommand will be used.
2015-01-27 09:47:02 +01:00
JosJuice
de86d539f2
DVDInterface: Move fast disc speed check to ExecuteReadCommand
...
This breaks the workaround used for Star Wars: Rouge Leader,
but that problem has gotten a more proper solution in 4.0-4889.
2015-01-27 09:46:58 +01:00
Markus Wick
43605f8716
Merge pull request #1948 from magumagu/remove-efb-cache
...
Remove EFB to RAM cache, and simplify code.
2015-01-27 09:42:15 +01:00
Markus Wick
8eda3ca844
Merge pull request #1956 from Tilka/vertex_loader_jit
...
VertexLoader: clean up and fix some problems
2015-01-27 09:15:09 +01:00
skidau
c20ef8bb8c
Merge pull request #1919 from skidau/AGP
...
Added support for AGP. Original patch by GreyRogue.
2015-01-27 13:25:14 +11:00
skidau
61c04de7ee
Added the ability to map gamepad buttons to hotkeys.
2015-01-27 12:24:47 +11:00
Tillmann Karras
3dbd6cd384
VertexLoaderX64: save XMM0 if the ABI requires it
2015-01-26 22:24:06 +01:00
Tillmann Karras
8416a86b6d
VertexLoaderBase: fix crash on invalid formats
2015-01-26 22:24:06 +01:00
Tillmann Karras
66f28707e7
VertexLoader: small clean up
2015-01-26 22:24:06 +01:00
magumagu
897b678d24
D3D: delete unnecessary code.
2015-01-26 10:58:32 -08:00
JosJuice
521ccd7b44
VolumeWiiCrypted: Decryption optimization
...
The block doesn't have to be read if it already is in m_pBuffer.
2015-01-26 15:59:25 +01:00
Ryan Houdek
7df55d220f
Merge pull request #1967 from Sonicadvance1/Android_settings
...
[Android] Change some configuration options.
2015-01-26 05:30:35 -06:00
Markus Wick
53a9df10f9
Merge pull request #1817 from Armada651/custom-anaglyph
...
PostProcessing: Add support for user-supplied anaglyph shaders.
2015-01-26 11:08:29 +01:00
magumagu
9dbb9bf3b5
Make sure EFB2RAM buffer is wide enough for new coordinate system.
2015-01-25 23:32:32 -08:00
magumagu
b56025e6eb
Don't use boolean negation.
2015-01-25 23:28:59 -08:00
magumagu
33259c272b
Remove some debugging junk.
2015-01-25 23:11:36 -08:00
magumagu
cb05730127
Use linear sampling in ScaleByHalf mode.
2015-01-25 23:05:23 -08:00
magumagu
92189823f3
Fix RGBA8 encoding.
2015-01-25 22:53:30 -08:00
Ryan Houdek
983c7f4f21
[Android] Select the AArch64 recompiler core by default if shown to support ARMv8.
2015-01-26 00:50:25 -06:00
magumagu
1ee09ced0a
Fix OpenGL coordinate computation.
2015-01-25 21:38:30 -08:00
magumagu
cb5d3fce4f
Fix stupid mistake.
2015-01-25 21:20:25 -08:00
Ryan Houdek
5ba1319abb
Merge pull request #1953 from Sonicadvance1/AArch64_fix_paired_loadstores
...
[AArch64] Fix all of the paired store instructions.
2015-01-25 23:07:44 -06:00
Ryan Houdek
c340a324bc
Merge pull request #1947 from Sonicadvance1/AArch64_tu_tl_merge
...
[AArch64] Implement TU/TL merging.
2015-01-25 23:07:32 -06:00
magumagu
b0b99b6922
Fix shader so it's possible to use with D3D Map().
...
Well, that's not strictly true, but trying to memcpy between two buffers
using different row lengths and different strides is at minimum extremely
unintuitive.
2015-01-25 19:57:09 -08:00
magumagu
6c1bdfe04c
More work.
2015-01-25 19:57:07 -08:00
Rohit Nirmal
51b27c5481
Fix building with PCH disabled.
2015-01-25 21:40:31 -06:00
Pierre Bourdon
1e809d9c11
Revert "Merge pull request #1903 from RisingFog/libav"
...
This reverts commit 34079a0037
, reversing
changes made to 3274df7158
.
2015-01-26 02:35:29 +01:00
skidau
34079a0037
Merge pull request #1903 from RisingFog/libav
...
Use ffmpeg for Windows Video Dumping instead of VFW
2015-01-26 12:03:44 +11:00
Ryan Houdek
3274df7158
Merge pull request #1961 from Sonicadvance1/AArch64_game_fixes
...
[AArch64] Fix a load of games.
2015-01-25 18:26:42 -06:00
Ryan Houdek
b1fc18cbaa
Merge pull request #1958 from Sonicadvance1/Rearchitect_asmcommon
...
Rearchitect a bit of our AsmCommon routines.
2015-01-25 18:26:17 -06:00
Ryan Houdek
d291148016
[AArch64] Implement TU/TL merging.
...
Basically stolen from the x86 recompiler. Works well on AArch64 as well!
2015-01-25 18:05:33 -06:00
magumagu
ef75f3005d
WIP.
2015-01-25 15:49:35 -08:00
Ryan Houdek
f24c466e7e
[AArch64] Fix AArch64 instruction encoding.
2015-01-25 17:26:18 -06:00
Jules Blok
5c4ee2f71e
PostProcessing: Move default pixel shader to PostProcessingShaderConfiguration.
...
Reduces code complexity and fixes a bug where the shader is not properly invalidated.
2015-01-25 23:08:49 +01:00
Ryan Houdek
98fe869e39
Merge pull request #1962 from rohit-n/build-pch
...
Fix building with PCH disabled.
2015-01-25 15:38:20 -06:00
Jules Blok
fc46d460f9
VideoConfigDiag: Allow anaglyph shader to be turned off.
...
Also hard-code the default shader.
2015-01-25 22:27:17 +01:00
Jules Blok
262c3b19ec
PostProcessing: Add support for user-supplied anaglyph shaders.
...
There are lots of different anaglyph glasses out there and there may be even more creative uses for stereoscopic post-processing shaders.
2015-01-25 22:07:03 +01:00
Rohit Nirmal
d10b4d9b8b
Fix building with PCH disabled.
2015-01-25 11:34:22 -06:00
Pierre Bourdon
a93433a860
Merge pull request #1960 from phire/zfreeze-buffer-underrun
...
Fix a buffer underrun in CalculateZSlope.
2015-01-25 18:18:49 +01:00
Ryan Houdek
e4e08b0596
[AArch64] Make sure to load the full destination register on float instructions.
...
With the float instructions that only affect the lower 64bits of the destination register, we need to make sure to load the full 128bit register.
This ensures that we aren't saving garbage in to the top 64bits.
2015-01-25 03:17:46 -06:00
Ryan Houdek
2483f7b359
[AArch64] Fix addcx.
2015-01-25 03:17:14 -06:00
Ryan Houdek
6791a808b6
[AArch64] Fix addzex.
2015-01-25 03:16:57 -06:00
Ryan Houdek
84b90ad1c6
[AArch64] Fix cmp
2015-01-25 03:16:29 -06:00
Scott Mansell
61215e7180
Fix a buffer underrun in CalculateZSlope.
2015-01-25 20:31:20 +13:00
skidau
0aef1d27aa
Merge pull request #1933 from magumagu/intellisense-error-fix
...
Fix Intellisense error spam on Visual Studio.
2015-01-25 15:44:30 +11:00
skidau
d7a8752228
Merge pull request #1920 from CarlKenner/fix3dxfb
...
Fix 3D XFB
2015-01-25 15:44:06 +11:00
Ryan Houdek
12b9ada268
Rearchitect a bit of our AsmCommon routines.
...
JitCommon is becoming a cluster of x86 specific things and things that are common to multiple recompilers.
This overlap is beginning to cause us issues.
Begin by breaking out the common ASM arrays to have their own file and move the x86 specific routines to their own folder.
2015-01-24 20:06:15 -06:00
Benjamin Przybocki
4f324ad742
Clean Up
2015-01-24 17:10:21 -06:00
Lioncash
9cdfe889af
Coding style cleanup from the zfreeze merge
2015-01-24 15:16:48 -05:00
Markus Wick
ae514cb0f2
Merge pull request #1955 from degasus/master
...
TexCache: Rewrite the texID generation for paletted textures
2015-01-24 15:37:25 +01:00
degasus
51990fcdfa
TexCache: Rewrite the texID generation for paletted textures
...
This changes the behavior if both texture are available. The old code did
try to load the modfied texID, the new code tries the unmodified texID first.
2015-01-24 13:58:20 +01:00
Markus Wick
4f6d0049a7
Merge pull request #1951 from Sonicadvance1/Remove_old_defines
...
Remove an old GLES define that I missed.
2015-01-24 13:38:26 +01:00
Tony Wasserka
43036af944
Merge pull request #1812 from phire/real_zfreeze
...
Add proper zfreeze support.
2015-01-24 13:29:57 +01:00
Ryan Houdek
93f3816eae
[AArch64] Fix all of the paired store instructions.
...
These had some minor errors in them that I discovered with the hardware test and Viewtiful Joe.
All work as they should now.
2015-01-23 23:18:49 -06:00
Dolphin Bot
4e9497cdb8
Merge pull request #1057 from phire/IsMMIOAddress2
...
Further improvements to IsMMIOAddress (Includes tests!)
2015-01-24 05:55:35 +01:00
Scott Mansell
fe28d1476a
Make the IsMMIOAddress function easier to read, add tests.
...
This also makes IsMMIOAddress more restrictive.
2015-01-24 17:24:40 +13:00
Ryan Houdek
088b6b2ec3
Merge pull request #1081 from phire/jitil-float-mem-opts
...
JitIL Float load/store optimizations.
2015-01-23 21:47:03 -06:00
Scott Mansell
5c34766809
Propagate elf loading failure up.
...
Also fix mistake in error message.
2015-01-24 16:28:34 +13:00
magumagu
3aa3002010
Fix Intellisense error spam on Visual Studio.
...
Intellisense doesn't like defines in PCH files, and it doesn't like the deleted
constructor for BitField. (I think it's being overly strict about the
"must have no non-default constructors" rule for classes in unions.)
2015-01-23 19:15:25 -08:00
Scott Mansell
3106b20fbe
JITIL: Improve address calulation for float loads/stores.
...
For floating loads with a known address, this eliminates the pattern of:
mov r12d, 80001014
mov rdx, r12d
mov rdx, dword ptr [rbp+rdx]
and generates a nice simple:
mov rdx, dword ptr [rbp+00001014]
2015-01-24 16:08:50 +13:00
Scott Mansell
75815b9b0d
Added a comment to document an issue with the codegen.
2015-01-24 16:08:26 +13:00
Scott Mansell
b7d4ff679a
IsWiiElf: Optimise inner loop.
...
Instead of swaping each word of the elf code section(s) looking
for a match to our pattern, we swap the pattern just once (at
compile time) and test against our swapped pattern.
2015-01-24 15:41:32 +13:00
Scott Mansell
2bf052d8b9
ElfReader: Clean up elf loader code.
...
* Don't claim to support any features we don't, like relocation
* Actually zero-out BSS sections, as memory might not be already
zeroed.
* Deleted commented out code.
* Removed GetPointer, updated to more modern interface methods.
* Updated pointer types style from "u32 *x" to "u32* x"
2015-01-24 15:41:32 +13:00
Scott Mansell
1e5762b163
BootUp: Clean up elf BootUp code.
...
* The file already exsists, otherwise we wouldn't have gotten
this far in the boot.
* We have already checked if it's a Wii or GameCube elf,
besides, it's too late to change our minds now anyway.
* On Wii - Don't call EmulatedBS2, it can never succeed as
it knows nothing about booting elfs. Just call the
SetupWiiMemory directly if needed.
* On GameCube - We still call EmulatedBS2_GC, but we stop
it from running Apploader, which might boot something
unexpected from the default iso or DVD root folder.
2015-01-24 15:41:28 +13:00
Scott Mansell
2642c3f73b
BootElf: Use unique_ptr<u8 []> instead of vectors.
2015-01-24 15:32:38 +13:00
Scott Mansell
14baf038e7
Stop doing nastly shit to OpenGL stream buffers.
...
Instead we keep the loaded vertices in CPU memory.
2015-01-24 14:41:51 +13:00
skidau
f1a4b98d36
Merge pull request #1879 from magumagu/idle-exception-check
...
For idle loops, perform an exception check before CoreTiming::Advance.
2015-01-24 12:28:44 +11:00
skidau
7dafad5a8b
On DCBZ, mask the memory address to ensure that the address is within physical memory. The AGP disc DCBZ's against an out of bounds physical address.
2015-01-24 12:19:33 +11:00
skidau
8a561b57c3
Added EEPROM saving to file.
2015-01-24 12:15:48 +11:00
skidau
a7299a7fff
Added support for AGP. Original patch by GreyRogue.
2015-01-24 12:13:23 +11:00
skidau
18cee2dcc7
Added second parameter for the eject disc via StopMotor DI command. The AGP disc expects the disc to still be readable after sending an eject command.
2015-01-24 12:13:23 +11:00
Ryan Houdek
189528171b
Remove an old GLES define that I missed.
2015-01-23 14:30:23 -06:00
magumagu
6659c15bed
Remove EFB to RAM cache, and simplify code.
2015-01-23 10:48:15 -08:00
Scott Mansell
5510c86b81
Move Zfreeze code out individual backends into videoCommon
...
Also:
* Implement support for per-vertex PosMatrixIndex
* Only update zslope constant once when zfreeze is activated.
* Added a bunch of comments.
2015-01-24 03:22:27 +13:00
skidau
0b1d8fae1b
Merge pull request #1926 from skidau/emu-wiimote-speaker-adpcm-sample-rate
...
Fixed the emulated wiimote speaker's ADPCM sample rate. Patch by hk.konpie
2015-01-23 12:31:20 +11:00
skidau
6e99accf06
Merge pull request #1917 from adamdmoss/no-lfe
...
Remove explicit subwoofer/LFE channel from Pulseaudio and OpenAL
2015-01-23 12:30:48 +11:00
Ryan Houdek
6470227a39
[AArch64] Minor fix in the UMULH/SMULH.
...
These two instructions ignore the register encoded in to RA.
2015-01-22 18:08:49 -06:00
Ryan Houdek
db690a1862
Merge pull request #1936 from lioncash/kb
...
Minor keyboard-related cleanups.
2015-01-22 16:23:34 -06:00
Ryan Houdek
bff230fe2e
Merge pull request #1945 from skidau/GCPad-Init
...
Fixed the GCPad and GCKeyboard getting initialised four times each.
2015-01-22 10:41:43 -06:00
Ryan Houdek
bb1ca26c57
Merge pull request #1940 from Sonicadvance1/AArch64_implement_xer
...
[AArch64] Implement mfspr/mtspr XER routines.
2015-01-22 10:31:22 -06:00
Scott Mansell
daf760b202
A few small cleanups based on code review.
2015-01-23 04:38:36 +13:00
Scott Mansell
e88c02dece
Ensure that ZSlopes save/restore state correctly.
...
Had to re-do *ShaderManager so they saved their constant arrays
instead of completly rebuilding them on restore state.
2015-01-23 03:32:31 +13:00
Scott Mansell
128d303656
Reduce number of divisions in screenspace transform.
...
This is closer to what the hardware does anyway.
2015-01-23 03:32:31 +13:00
NanoByte011
add59b3bea
Fixes Mario Tennis Gimmick Courts and adds support for FastDepthCalc
...
- Calculate ZSlope every flush but only set PixelShader Constant on Reset Buffer when zfreeze
- Fixed another Pixel Shader bug in D3D that was giving me grief
2015-01-23 03:32:31 +13:00
Scott Mansell
6d5065c58d
Fix pixelshader constant offsets.
2015-01-23 03:32:31 +13:00
Scott Mansell
88c7afd315
Make zfreeze use screenspace coordinates independant of IR.
...
OpenGL requires the y coordinates to be flipped.
Also refactored PixelGen code to remove duplicate code.
2015-01-23 03:32:31 +13:00
Scott Mansell
418296961c
Fix various issues with zfreeze implemntation.
...
Results are still not correct, but things are getting closer.
* Don't cull CULLALL primitives so early so they can be used as reference
planes.
* Convert CalculateZSlope to screenspace coordinates.
* Convert Pixelshader to screenspace coordinates (instead of worldspace
xy coordinates, which is totally wrong)
* Divide depth by 2^24 instead of clamping to 0.0-1.0 as was done
before.
Progress:
* Rouge Squadron 2/3 appear correct in game (videos in rs2 save file
selection are missing)
* Shadows draw 100% correctly in NHL 2003.
* Mario golf menu renders correctly.
* NFS: HP2, shadows sometimes render on top of car or below the road.
* Mario Tennis, courts and shadows render correctly, but at wrong depth
* Blood Omen 2, doesn't work.
2015-01-23 03:32:31 +13:00
NanoByte011
613781c765
Cleanup and refactor of zfreeze port
...
Based on the feedback from pull request #1767 I have put in most of
degasus's suggestions in here now.
I think we have a real winner here as moving the code to
VertexManagerBase for a function has allowed OGL to utilize zfreeze now
:)
Correct use of the vertex pointer has also corrected most of the issue
found in pull request #1767 that JMC47 stated. Which also for me now
has Mario Tennis working with no polygon spikes on the characters
anymore! Shadows are still an issue and probably in the other games
with shadow problems. Rebel Strike also seems better but random skybox
glitches can show up.
2015-01-23 03:32:31 +13:00
NanoByte011
937844b9e3
Initial port of zfreeze branch (3.5-1729)
...
Initial port of original zfreeze branch (3.5-1729) by neobrain into
most recent build of Dolphin.
Makes Rogue Squadron 2 very playable at full speed thanks to recent core
speedups made to Dolphin. Works on DirectX Video plugin only for now.
Enjoy! and Merry Xmas!!
2015-01-23 03:31:54 +13:00
skidau
d27bd9d291
Merge pull request #1885 from degasus/custom_texture
...
CustomTexture: new name format
2015-01-23 00:43:39 +11:00
skidau
6ad5d4681a
Fixed the GCPad and GCKeyboard getting initialised four times each.
2015-01-23 00:06:54 +11:00
NanoByte011
0a9257ad37
Cleaned up whitespace
...
Fixed Directional Attenuation (assumed, data was light dir vector already, but it was not!)
2015-01-21 22:30:41 -07:00
Fog
6cad635bd8
Use ffmpeg for Windows Video Dumping instead of VFW
2015-01-21 19:47:45 -05:00
Ryan Houdek
85754c63ca
[AArch64] Implement mfspr/mtspr XER routines.
...
These were fairly simple to implement.
2015-01-21 16:56:27 -06:00
NanoByte011
f475e367f2
Lighting Attenuation Fixes
2015-01-21 15:55:32 -07:00
degasus
7cf4dd63e4
CustomTexture: fix texture format
2015-01-21 23:33:42 +01:00
Ryan Houdek
e7f2a04699
Merge pull request #1938 from CarlKenner/paddedfunctions
...
Skip zeroes that sometimes pad function to 16 byte boundary (eg. Donkey Kong Country Returns).
2015-01-21 15:17:31 -06:00
Ryan Houdek
621322bbae
Merge pull request #1260 from pauldacheez/video-dialog-string-touchups
...
Improve some setting descriptions in the graphics options.
2015-01-21 14:59:45 -06:00
degasus
1d0557a5e6
CustomTexture: use xxhash
2015-01-21 21:47:18 +01:00
degasus
84c8645d22
CustomTexture: Convert old format automatically
2015-01-21 21:22:55 +01:00
degasus
f9ced4eb13
CustomTexture: also support the legacy format
2015-01-21 21:22:55 +01:00
degasus
62402efa6c
CustomTexture: Mark textures with mipmaps
2015-01-21 21:22:55 +01:00
degasus
ee9d05d67f
CustomTexture: Use another file name with wildcards
2015-01-21 21:22:55 +01:00
degasus
a353ead3cb
CustomTexture: Use always safe texture hash
2015-01-21 21:22:55 +01:00
degasus
eeaad06a07
CustomTexture: check for min/max index on paletted textures
2015-01-21 21:22:55 +01:00
Ryan Houdek
1c62c2f935
Merge pull request #1924 from degasus/xxhash
...
VideoCommon: xxhash
2015-01-21 14:19:35 -06:00
Ryan Houdek
e4b04c64f0
Merge pull request #1870 from Stevoisiak/countryFilters
...
Country filter fixes/consistency
2015-01-21 13:48:35 -06:00
Ryan Houdek
80e6367e46
Merge pull request #1869 from Stevoisiak/GeneralConsistency
...
Minor consistency changes
2015-01-21 13:46:53 -06:00
Ryan Houdek
f9fc9d47c0
Merge pull request #1895 from JosJuice/isvolumewiidisc
...
Don't read from disk when checking volume type
2015-01-21 13:45:28 -06:00
Ryan Houdek
4c9fd63562
Merge pull request #1932 from Buddybenj/freelook
...
Fix Default Freelook Hotkey to Match Description (For Real This Time)
2015-01-21 13:41:29 -06:00
Ryan Houdek
50d495b581
Merge pull request #1916 from mimimi085181/master
...
Make efb to texture less broken for paletted textures that are efb copies
2015-01-21 13:40:36 -06:00
Ryan Houdek
b8b537d96e
Merge pull request #1934 from Buddybenj/change-order
...
Change Order of Some Hotkeys
2015-01-21 13:38:10 -06:00
Ryan Houdek
a5e9c5e718
Merge pull request #1910 from Sonicadvance1/LLVMDisassembly_improvements
...
Improve the LLVM disassembler in the debug window.
2015-01-21 13:29:47 -06:00
Ryan Houdek
ca10ce36cc
Merge pull request #1923 from Sonicadvance1/remove_sdl_assumption
...
Remove an assumption in SDL.
2015-01-21 13:29:39 -06:00
Ryan Houdek
7fba4856ce
Merge pull request #1931 from Sonicadvance1/Fix_PP_Config
...
Fix the Post Processing shader configuration dialog.
2015-01-21 13:29:01 -06:00
Ryan Houdek
41dd0667ed
Merge pull request #1930 from Sonicadvance1/AArch64_scalar_ops
...
[AArch64] Move the 64bit floating point instructions to scalar.
2015-01-21 13:28:53 -06:00
Ryan Houdek
d86eaea393
Merge pull request #1935 from Sonicadvance1/AArch64_fix_fp_loadstore
...
[AArch64] Fix bugs in floating point loadstores.
2015-01-21 13:28:46 -06:00
Paul Olszewski
14d856bbc4
Improve and/or arbitrarily change the descriptions of various settings in the graphics options.
2015-01-21 12:17:19 -06:00
CarlKenner
0ab1517134
Skip zeroes that sometimes pad function to 16 byte boundary (eg. Donkey Kong Country Returns).
...
This fixes function detection in the debugger, and prevents functions showing up as four bytes inside another function.
2015-01-22 02:00:35 +10:30
degasus
402fb4bd20
xxhash: Add cmake + VS files
...
Based on riking's PR.
2015-01-21 07:35:34 +01:00
Lioncash
52e74a5070
GCKeyboardEmu: Use range-based for loops for iterating the key arrays
2015-01-20 21:28:40 -05:00
Lioncash
b1c1a2cc6f
Core: Add the GCKeyboard source files to the GCKeyboard VS filter
...
Was previously in the GCPad filter.
2015-01-20 21:19:51 -05:00
Lioncash
566a7a4829
SI_DeviceKeyboard: Remove superfluous virtual specifiers.
...
Removes an unnecessary memset as well.
2015-01-20 21:03:58 -05:00
skidau
5cd8a80553
Merge pull request #1893 from skidau/GCKeyboard
...
Added GameCube Keyboard support.
2015-01-21 12:43:49 +11:00
Ryan Houdek
32bfccce32
[AArch64] Fix bugs in floating point loadstores.
...
The Backpatching routines didn't correctly understand where to find the real VFP register from, so in most cases it was using D0.
Fixes bugs in the slowmem loadstore routines as well.
2015-01-20 19:11:04 -06:00
Benjamin Przybocki
a25b07ec56
Change Order of Some Hotkeys
2015-01-20 18:16:36 -06:00
Ryan Houdek
e3cff625cb
Merge pull request #1906 from jefflongo/patch-1
...
Update NetPlayServer.cpp
2015-01-20 17:13:13 -06:00
Ryan Houdek
e72f70f440
Merge pull request #1929 from Armada651/fix-ppl
...
PixelShaderGen: Fix uninitialized variables.
2015-01-20 16:51:43 -06:00
Benjamin Przybocki
9291d61d98
Fix Default Freelook Hotkey to Match Description (For Real This Time)
2015-01-20 16:46:38 -06:00
Ryan Houdek
d348bfea46
Fix the Post Processing shader configuration dialog.
...
On locales that don't use period as a separator this would break us.
For vector values in a configuration, we use comma as a separator which causes the configuration to balloon to massive sizes due to never saving them
correctly. Loading would then break since it would load a million configuration options.
Fixes issue #7569 .
2015-01-20 16:40:46 -06:00
Ryan Houdek
67f2ff2e18
[AArch64] Move the 64bit floating point instructions to scalar.
...
Instead of doing vector operations and throwing away the top 64bits of each operation, let's instead use scalar operations.
On Cortex-A57 this saves us three cycles per vector operation changed to scalar, so this saves 3-9cycles per instruction emulated.
Also puts one less micro-op in to the vector pipeline there.
On the Nvidia Denver I couldn't see any noticeable performance difference, but it's a quirky architecture so it may be noticing we are throwing away
the top bits anyway and optimizing it. The world may never know what's truly happening there.
2015-01-20 16:35:08 -06:00
Ryan Houdek
217c2c9d6a
[AArch64] Add some more scalar VFP ops to the emitter.
2015-01-20 16:34:32 -06:00
Ryan Houdek
7f68a357ad
Merge pull request #1914 from Sonicadvance1/AArch64_minor_improvements
...
[AArch64] Minor Improvements and bug fix.
2015-01-20 16:33:17 -06:00
Ryan Houdek
cb967a6ff2
Merge pull request #1911 from Sonicadvance1/AArch64_paired_loadstores
...
[AArch64] Implements paired loadstores
2015-01-20 16:33:08 -06:00
Jules Blok
f40cd04a29
PixelShaderGen: Fix uninitialized variables.
2015-01-20 23:15:01 +01:00
Ryan Houdek
714697faaf
Merge pull request #1909 from Sonicadvance1/GLExtensions_additions
...
Add support for two new OpenGL ES extensions.
2015-01-20 14:51:54 -06:00
Ryan Houdek
4262d2199a
[AArch64] Implements paired loadstores.
2015-01-20 13:57:14 -06:00
Rohit Nirmal
e35766cbcd
Fix building with PCH disabled.
2015-01-20 17:01:37 +00:00
skidau
84848b52e0
Fixed the emulated wiimote speaker's ADPCM sample rate. Patch by hk.konpie.
2015-01-21 00:11:54 +11:00
Markus Wick
8ff1dc9c87
Merge pull request #1925 from Tilka/vertex_loader_jit
...
VertexLoaderX64: fix alpha of indirect 8888 colors
2015-01-20 09:40:46 +01:00
Tillmann Karras
1dcf49237b
VertexLoaderX64: support VAT.ByteDequant=0
2015-01-20 09:23:15 +01:00
Tillmann Karras
46ab5d63d6
VertexLoader: never reset alpha in 8888 colors
...
Fixes the opening menu of Xenoblade Chronicles.
2015-01-20 09:22:55 +01:00
skidau
6f61f90dab
Merge pull request #1777 from JosJuice/filemonitor-volumedirectory
...
Add FileMonitor support for VolumeDirectory
2015-01-20 12:32:42 +11:00
Tillmann Karras
80617ec6bd
VertexLoader: remove weird line
2015-01-20 01:53:52 +01:00
Tillmann Karras
873902b4a3
VertexLoader: remove non-JIT SSE code
2015-01-20 01:51:07 +01:00
Ryan Houdek
38cb9bbfae
Merge pull request #1889 from magumagu/remove-hle-end
...
Remove HLE_HOOK_END.
2015-01-19 18:16:47 -06:00
Markus Wick
0d0f7ec662
Merge pull request #1894 from Armada651/exclusive-fix
...
D3D: Fix Dolphin immediately exiting exclusive fullscreen.
2015-01-19 23:29:43 +01:00
Ryan Houdek
817abdd579
Remove an assumption in SDL.
...
We can compile with haptic support, and then not initialize due to haptics not being available.
So if we are compiling with haptics, test initializing with haptics and if that fails attempt to initialize without haptics before bailing out.
2015-01-19 16:07:28 -06:00
Jules Blok
332d5888eb
VideoConfig: Add exclusive mode flag.
...
Allows the UI to easily check the current exclusive mode state.
This simplifies a few checks and prevents the user from ever getting stuck in fullscreen.
2015-01-19 22:55:21 +01:00
Ryan Houdek
7376956c92
Merge pull request #1912 from Sonicadvance1/Android_remove_workaround
...
[Android] Remove posix_memalign workaround.
2015-01-19 15:36:17 -06:00
jefflongo
6b64c309df
Update NetPlayServer.cpp
...
Update NetPlayServer.cpp
2015-01-19 12:13:23 -08:00
CarlKenner
4768d0f0a8
This fixes stereoscopic 3D with XFB enabled, for example in the intro in Animal Crossing GameCube NTSC.
...
The maths appears to give crazy impossible answers without this fix, but the cause is all the ints being "promoted" to unsigned because of the single unsigned division at the end.
2015-01-20 03:42:58 +10:30
Markus Wick
7454297820
Merge pull request #1922 from Tilka/vertex_loader_jit
...
VertexLoader: fix position offset bug
2015-01-19 17:53:50 +01:00
Tillmann Karras
804341d4fe
VertexLoader: fix position offset bug
2015-01-19 17:38:40 +01:00
Tillmann Karras
4b323096ec
VertexLoader_Position: remove old JIT ideas
2015-01-19 17:36:24 +01:00
Ryan Houdek
dc95ea2ce6
Minor fix with psq_st{u,}x disassembly.
2015-01-19 10:12:23 -06:00
Adam D. Moss
05d2bf6060
Audio: Drop the LFE/subwoofer channel from the decoded surround
...
DPL2Decode still doesn't decode 5.1 properly, leaving bass in all channels, but its 5.0 is pretty good, so leave it at that.
2015-01-19 10:24:44 +00:00
Ryan Houdek
4551bb6ce6
Add support for two new OpenGL ES extensions.
...
This adds support for OES_draw_elements_base_vertex and EXT_buffer_storage.
2015-01-18 23:01:43 -06:00
Lioncash
ed58b1fd5b
Merge pull request #1913 from Sonicadvance1/fix_paired_store_disassembly
...
Fixes disassembly of paired store instructions.
2015-01-18 23:27:34 -05:00
skidau
6b0431e80a
Merge pull request #1888 from john-peterson/padclamp
...
Fix the input zone drawing in input settings
2015-01-19 15:22:08 +11:00
Ryan Houdek
7e64869185
Merge pull request #1887 from Tilka/vertex_loader_jit
...
VertexLoader: rewrite x64 JIT
2015-01-18 19:48:14 -06:00
mimimi085181
0d3343d093
Make efb to texture less broken for paletted textures that are efb copies
...
Don't change the texID depending on the tlut_hash for paletted textures that are efb copies and don't have an entry in the cache for texID ^ tlut_hash. This makes those textures less broken when using efb to texture.
This is not really fixing those textures, but it's a step forward. The mini map in Twilight Princess for example is in grayscales with this and is more or less usable.
2015-01-19 01:31:41 +01:00
Ryan Houdek
98d99a9eef
[AArch64] Optimize loadstores address calculation.
...
For offsets that fit in the instruction encoding then we should just put it in the instruction encoding.
Saves an instruction in a large amount of loadstores.
2015-01-18 16:45:42 -06:00
Ryan Houdek
cfd4348b7a
[AArch64] Fully implement cmpl and cmpli.
2015-01-18 16:45:00 -06:00
Ryan Houdek
4547b64959
[AArch64] Fixe a bug in constant propagated ComputeRC.
...
Must not have been thinking, we do want to sign extend when the highest bit is set.
2015-01-18 16:44:33 -06:00
Ryan Houdek
596d3fd5f2
Fixes disassembly of paired store instructions.
...
Someone thought it would be a good idea to have the location as the first argument on the instruction.
Changed it to how it is supposed to be disassembled.
2015-01-18 16:37:43 -06:00
Ryan Houdek
08e50ec6dd
[Android] Remove posix_memalign workaround.
...
Google fixed the issue of posix_memalign not being available. It now works fine in r10d of the NDK.
2015-01-18 16:34:42 -06:00
Ryan Houdek
8d5947efac
[AArch64] Emitter improvements.
...
Adds a bunch of new instructions to the emitter.
2015-01-18 16:25:40 -06:00
Tillmann Karras
d3f49097c5
VertexLoaderX64: register symbol for code page
2015-01-18 23:20:44 +01:00
Ryan Houdek
44405e2ec2
Expose the JIT quantize and dequantize arrays to all the JITs.
...
Removes the ARMv7 arrays that were being used, and lets it use the common one instead.
2015-01-18 16:20:26 -06:00
Ryan Houdek
95ac48d605
Improve the LLVM disassembler in the debug window.
...
There are a couple things in this PR.
Fixes a bug where if we hit an invalid instruction we would infinite loop.
Fixes an issue where on AArch64 it would show invalid instructions for all NEON instructions.
This was due to asimd and crc being optional extensions and LLVM not enabling them by default.
So we have to specify a CPU which has the feature. LLVM 3.6 will let us select by features instead of CPUs, but we don't have a release of that quite
yet.
If we are on an architecture that has a known instruction size, we will continue onward after hitting the invalid instruction. If we don't have a
known instruction size like on x86, we will instead just dump the rest of the block.
2015-01-18 15:31:40 -06:00
degasus
9f13a77799
TexCache: don't try to aggressive reuse the entry
...
As we pool them now, freeing and reallocating them is quite fast.
2015-01-18 19:58:33 +01:00
degasus
8565f02699
TexCache: use an unordered_multimap for the tex pool
2015-01-18 19:58:33 +01:00