Stenzek
113bd60fe7
Implement D3D12 backend
2019-04-01 11:24:55 +10:00
Jordan Woyak
2b6d718636
InputCommon: Fix Win32 init race.
2019-03-31 07:46:58 -05:00
Stenzek
378b605669
BPStructs: Gracefully handle out-of-range EFB copies
...
Since the copy X and Y coordinates/sizes are 10-bit, the game can configure a
copy region up to 1024x1024. Hardware tests have found that the number of bytes
written does not depend on the configured stride, instead it is based on the
size registers, writing beyond the length of a single row. The data written
for the pixels which lie outside the EFB bounds does not wrap around instead
returning different colors based on the pixel format of the EFB.
This suggests it's not based on coordinates, but instead on memory addresses.
The effect of a within-bounds size but out-of-bounds offset
(e.g. offset 320,0, size 640,480) are the same.
As it would be difficult to emulate the exact behavior of out-of-bounds reads,
instead of writing the junk data, we don't write anything to RAM at all for
over-sized copies, and clamp to the EFB borders for over-offset copies.
2019-03-31 22:05:53 +10:00
spycrab
039b1baa3a
Qt/TAS: Implement turbo mode
2019-03-31 05:27:34 +02:00
Connor McLaughlin
39139a52e7
Merge pull request #7939 from Techjar/no-more-disabled-gfx-features
...
Qt/HacksWidget: Fix backend feature support checks
2019-03-31 11:59:34 +10:00
spycrab
0866ec3fb0
Merge pull request #7948 from spycrab/open_failed_warn
...
Qt/GameConfigEdit: Show warning if opening in an external editor fails
2019-03-31 03:37:54 +02:00
spycrab
74c1e92640
Qt/GameConfigEdit: Show warning if opening in an external editor fails
2019-03-31 03:30:41 +02:00
JMC47
735a705e4d
Merge pull request #7776 from jordan-woyak/wm_devicechange
...
Add hotplug support to DInput and XInput controller backends
2019-03-30 18:41:46 -04:00
spycrab
3d84dbe649
Qt/GCMemcardManager: Don't bold the header
2019-03-30 20:22:04 +01:00
spycrab
0279d12055
Core/NetPlayServer: Integrate NetPlayIndex
2019-03-30 17:13:57 +01:00
spycrab
622ba68595
Core/Config: Add index entries to NetPlaySettings
2019-03-30 17:13:57 +01:00
spycrab
827e40d78a
UICommon: Add NetPlayIndex helper
2019-03-30 17:13:57 +01:00
spycrab
3dbf44417a
Common/HttpRequest: Implement EscapeComponent
2019-03-30 17:13:57 +01:00
JosJuice
c885fed9da
DiscIO: Make Korean GC checks in Enums.cpp less fragile
2019-03-30 12:45:28 +01:00
JosJuice
c028a84531
Volume: Add a GetCertificateChain function
2019-03-30 12:45:28 +01:00
JosJuice
abb3c5bccd
VolumeWad: Implement GetTicket
2019-03-30 12:45:17 +01:00
JosJuice
cf9ab6ddcc
DiscExtractor: Make P prefix for partition names optional
...
Also added constants for common partition types.
2019-03-30 12:45:17 +01:00
JosJuice
3014dadfa8
DiscIO: Add way of checking whether blob data size is accurate
2019-03-30 12:45:17 +01:00
JMC47
0bce1c509d
Merge pull request #7942 from jordan-woyak/gc-adapter-calib-fix
...
HW/SI: GCAdapter calibration fix.
2019-03-30 06:37:23 -04:00
Stenzek
3c455de799
FramebufferManager: Fix broken EFB peeks in GL with MSAA on
2019-03-30 03:14:29 +10:00
spycrab
963370d7e6
Merge pull request #7941 from 8times9/contextmenu
...
Qt/GameList: Set consistent capitalization for context menu
2019-03-29 21:09:49 +01:00
Jordan Woyak
4ee999723e
DolphinQt: Make MD5 result text box read only.
2019-03-29 12:31:09 -05:00
Stenzek
b685a66753
Vulkan: Fix crash when checking subgroup support on Mesa
2019-03-30 00:18:26 +10:00
Jordan Woyak
eadbdd6bc3
ControllerInterface/Win32: Prevent devcies from losing their "id" on a hotplug event.
2019-03-29 09:04:16 -05:00
Stenzek
a6bb06174f
Vulkan: Fix library load failure on Android
2019-03-29 23:36:53 +10:00
Michael M
d26c1ce24d
Add hotplug support to DInput and XInput controller backends
2019-03-29 08:01:40 -05:00
Michael M
92ca6e124e
Add ControllerInterface::Win32 to wrap XInput and DInput
2019-03-29 08:01:39 -05:00
Techjar
5d37b2b951
Qt/HacksWidget: Fix backend feature support checks
2019-03-29 08:45:21 -04:00
Jordan Woyak
a015851b02
HW/SI: GCAdapter calibration fix.
2019-03-29 06:15:58 -05:00
Stenzek
604ab67c7f
Vulkan: Simplify perf queries using vkGetQueryPoolResults
2019-03-29 20:54:44 +10:00
Stenzek
6d40ea8553
Vulkan: Fix barrier validation layer errors for bounding box
2019-03-29 20:54:44 +10:00
Stenzek
23a655217c
Vulkan: Fix validation layer error for unbound texture layouts
2019-03-29 20:54:44 +10:00
Stenzek
087b11e780
TextureCacheBase: Fix possible crash on shutdown with deferred EFB copies
2019-03-29 20:54:44 +10:00
Stenzek
427dd45151
Vulkan: Simplify command buffer fence tracking
2019-03-29 20:54:44 +10:00
Connor McLaughlin
f3fadd7302
Merge pull request #7869 from stenzek/d3dcommon
...
D3D: Move sharable D3D11/D3D12 code to common library
2019-03-29 20:40:06 +10:00
Connor McLaughlin
78cf615a9b
Merge pull request #7937 from Techjar/netplay-defer-efb-invalidation
...
NetPlay: Synchronize EFB access cache options
2019-03-29 20:31:15 +10:00
Stenzek
d66d778bae
PixelShaderGen: Use subgroup reduction operations for bounding box
2019-03-29 20:06:56 +10:00
Stenzek
6561850f2b
Vulkan: Support subgroup reduction operations via GL_KHR_shader_subgroup
2019-03-29 20:06:56 +10:00
Stenzek
86da282570
OGL: Support subgroup reduction operations via GL_NV_shader_thread_shuffle
2019-03-29 20:06:56 +10:00
Connor McLaughlin
1304e963ad
Merge pull request #7895 from stenzek/framebuffer-corruption
...
FramebufferManager: Don't discard in ReinterpretPixelData
2019-03-29 20:03:13 +10:00
Connor McLaughlin
154eeae8ae
Merge pull request #7915 from stenzek/bbox-scaled-update
...
VideoBackends: Scale bounding box rectangle in the pixel shader
2019-03-29 19:59:25 +10:00
Stenzek
d0d010f854
D3D11: Make stateman a unique_ptr
2019-03-29 19:55:00 +10:00
Stenzek
3b86c93285
VertexManagerBase: Increase vertex/uniform buffer sizes
...
ZTP was uploading 10MB+ of uniforms per frame, reducing paralellism by
forcing GPU waits.
2019-03-29 19:52:38 +10:00
Stenzek
2a4bca8b4a
VideoBackends: Verify validity before doing full renderer init
...
Prevents attempting to create invalid MSAA configurations, for example.
2019-03-29 19:52:38 +10:00
Stenzek
1151a1238f
D3D11: Use ComPtr smart pointer where possible
2019-03-29 19:52:38 +10:00
Stenzek
3d8014beb5
D3D11: Use D3DCommon where appropriate
2019-03-29 19:52:38 +10:00
Stenzek
ea15080d8f
Add D3DCommon (shared code between D3D11 and D3D12)
2019-03-29 19:52:38 +10:00
Stenzek
f6641b7e4f
Vulkan: Use Common::DynamicLibrary
2019-03-29 19:52:38 +10:00
Stenzek
a4f7c04470
Common: Add DynamicLibrary helper class
2019-03-29 19:52:33 +10:00
8times9
8c37214bee
Qt/GameList: Set consistent capitalization for context menu
2019-03-28 21:22:46 -05:00
Stenzek
e9cfcf4632
ShaderCache: Don't create invalid logic op pipelines
...
uint_output will never be set unless logic ops are enabled. Also clears
the bits so we're not compiling unused pixel shaders on the other
backends.
2019-03-28 20:35:02 +10:00
Stenzek
5732769a3c
ShaderCache: Set correct primitive in dummy ubershader pipelines
2019-03-28 20:35:02 +10:00
Stenzek
7dd9d74eec
RenderBase: Add EFBHasAlphaChannel() helper
2019-03-28 20:35:02 +10:00
Techjar
6e5d92e3c3
NetPlay: Synchronize EFB access cache options
2019-03-28 00:53:07 -04:00
spycrab
9b6c9252e4
Merge pull request #7932 from spycrab/qt_tas_fixes
...
Qt/TAS: Some fixes
2019-03-27 18:37:35 +01:00
JosJuice
6a18bf4d2e
Merge pull request #7935 from JosJuice/cli-arg-movie
...
DolphinQt: Add support for the --movie parameter
2019-03-27 18:34:24 +01:00
JMC47
b4b0ebae27
Merge pull request #7934 from stenzek/stretched-efb-peeks
...
FramebufferManager: Fix EFB peek cache stretching last tile
2019-03-27 10:53:47 -04:00
Stenzek
92fa6c34cd
FramebufferManager: Fix EFB pokes being offset by 1 in D3D
2019-03-27 23:28:34 +10:00
JosJuice
6451496776
DolphinQt: Add support for the --movie parameter
...
Regression from DolphinWX.
2019-03-27 14:26:17 +01:00
Stenzek
c28393d6f9
FramebufferManager: Fix EFB peek cache stretching last tile
2019-03-27 22:12:40 +10:00
JMC47
a1f53716dc
Merge pull request #7893 from jordan-woyak/mapping-ui-cleanup
...
DolphinQ: Mapping UI cleanups.
2019-03-26 20:30:30 -04:00
spycrab
e222b91953
Merge pull request #7929 from spycrab/np_chat_toggle
...
NetPlayChatUI: Add activate chat hotkey
2019-03-26 22:35:26 +01:00
spycrab
f7897778ff
NetPlayChatUI: Add activate chat hotkey
2019-03-26 18:13:32 +01:00
spycrab
4ad67f471c
Qt/TAS: Improve layout
2019-03-26 01:18:11 +01:00
spycrab
04583b17da
Qt/TAS: Fix issue #11620
2019-03-26 00:38:25 +01:00
JMC47
e636b3e712
Merge pull request #7871 from jordan-woyak/wm-real-cleanup
...
WiimoteReal: Improve state changes and code cleanups.
2019-03-25 19:28:22 -04:00
spycrab
fdb8b4af13
Qt/NetPlayDialog: Change buffer size message color
2019-03-25 10:09:21 +01:00
Stenzek
16294acd2a
VideoBackends: Scale bounding box rectangle in the pixel shader
2019-03-25 18:47:58 +10:00
Mat M
20999db93c
Merge pull request #7928 from JosJuice/ipl-hashes
...
Remove invalid IPL hashes (NTSC-U and NTSC-J use same IPL)
2019-03-24 14:12:17 -04:00
JosJuice
d42fa8f80e
Remove invalid IPL hashes (NTSC-U and NTSC-J use same IPL)
...
See https://bugs.dolphin-emu.org/issues/11467 . We now only have
the hashes that have been confirmed on Redump.
For the reference, MAME's list of bad GameCube IPL dumps:
80b2ca6088/src/mame/drivers/gamecube.cpp (L152-L158)
2019-03-24 14:19:23 +01:00
Stenzek
cff60f5ba0
FramebufferManager: Only clear tile array when valid
...
When looking into the Faron Woods fifolog, I noticed this code was quite
high in the profile (~10%). Clearing 4096 entries from the vector isn't
needed every draw, we only need to do this when the cache was actually
valid in the first place.
Should provide a slight general performance boost.
2019-03-24 15:03:04 +10:00
Jordan Woyak
d106169a83
DolphinQt: Fix unused widgets in InfoWidget from being visible.
2019-03-23 20:20:09 -05:00
spycrab
c89139d75d
Merge pull request #7903 from spycrab/imgui_np_chat
...
Add imgui-based Netplay Chat
2019-03-23 21:11:33 +01:00
spycrab
7cfb626a83
Add imgui-based Netplay Chat
2019-03-23 20:13:24 +01:00
zackhow
f6225e9694
Android: update IR defaults
2019-03-23 08:54:12 -04:00
zackhow
dc51b95313
Android: fix touch ir from pr7829 changes
2019-03-23 08:40:28 -04:00
spycrab
672b582bec
Merge pull request #7918 from spycrab/iokit_refactor
...
InputCommon/OSX: Refactor IOKit controller interface
2019-03-22 21:18:27 +01:00
JosJuice
0b3385ac1f
Merge pull request #7919 from JosJuice/disc-extractor-cert-h3
...
DiscExtractor: Fix extracting certificate chain and H3 hashes
2019-03-22 17:44:47 +01:00
spycrab
80fd01c3c3
InputCommon/OSX: Refactor IOKit controller interface
2019-03-22 14:04:30 +01:00
Tilka
0a1aacb5d0
Merge pull request #7906 from jordan-woyak/leak-fix
...
DolphinQt/InputCommon: Fix a few memory leaks.
2019-03-21 23:26:54 +00:00
Tilka
87cf94ec86
Merge pull request #7914 from stenzek/partial-update-infinite-loop
...
TextureCacheBase: Fix infinite loop in DoPartialTextureUpdates
2019-03-21 23:22:17 +00:00
Tilka
b016417106
Merge pull request #7907 from jordan-woyak/search-close-with-esc
...
DolphinQt: Make Ctrl+F show the game list search and escape close it.
2019-03-21 23:20:48 +00:00
spycrab
094c852158
Merge pull request #7916 from spycrab/issue_11623
...
MacUpdater: Fix updater not closing after update is completed
2019-03-21 23:42:06 +01:00
JosJuice
c558803cbd
DiscExtractor: Fix extracting certificate chain and H3 hashes
...
Dolphin is currently not using this data, but still,
the way it was being extracted was not at all correct.
2019-03-21 23:07:24 +01:00
Jordan Woyak
94c4975b5d
DolphinQt: Make Ctrl+F show the game list search and select the search text if already open. Escape closes.
2019-03-21 17:06:16 -05:00
spycrab
d1f7f0fcc0
Qt/AudioPane: Fix volume box not keeping consistent width
2019-03-21 14:38:12 +01:00
spycrab
544f6d547d
MacUpdater: Fix updater not closing after update is completed
2019-03-21 13:47:23 +01:00
spycrab
8cfbbbe9dc
VideoCommon/RenderBase: Disable backculling for ImGui
2019-03-21 13:16:21 +01:00
spycrab
61350b3d98
Core/Host: Allow frontends to block inputs
2019-03-21 13:16:21 +01:00
spycrab
0a3279ae6b
Fix ImGui key mapping Enter to the numpad
2019-03-21 13:16:21 +01:00
spycrab
fcd0dbef2c
Merge pull request #7901 from spycrab/issue_11585
...
Qt/Mapping: Use QGridLayout in a few more places
2019-03-20 23:53:01 +01:00
spycrab
e8b3c6cb3e
Qt/Mapping: Use QGridLayout in a few more places
2019-03-20 23:46:45 +01:00
Stenzek
bf0b52efc6
TextureCacheBase: Fix infinite loop in DoPartialTextureUpdates
2019-03-20 20:05:51 +10:00
Jordan Woyak
b53636827b
ControllerInterface: Unbreak DirectInput POV Hats having bad values on init.
2019-03-19 16:05:49 -05:00
LAGonauta
99a35568ca
Allow XAudio2 to be selected as a surround backend.
2019-03-18 09:21:40 -03:00
LAGonauta
f37ff190e4
Added DPL2 decoder to XAudio2 and XAudio2_7 backends.
2019-03-18 09:06:41 -03:00
Jordan Woyak
725d34b2f0
DolphinQt/InputCommon: Fix a few memory leaks.
2019-03-17 18:31:41 -05:00
Jordan Woyak
0bdfa19650
ControllerInterface: SDL: Replace unclear bool parameter with enum class.
2019-03-17 08:53:53 -05:00
Jordan Woyak
4fb68c530b
ControllerInterface: SDL cleanup and FF effect fixes.
2019-03-17 08:53:13 -05:00
spycrab
c4036d2d6a
Qt/MD5Dialog: Make dialog modal
2019-03-16 18:54:15 +01:00