Commit Graph

26482 Commits

Author SHA1 Message Date
Jordan Woyak 77bda63627 DolphinQt: Don't refresh devices on open of mapping UI. 2019-05-01 19:30:02 -05:00
Jordan Woyak 99f537d499 WiimoteEmu/DolphinQt: Better extension display names. 2019-05-01 17:25:48 -05:00
Léo Lam 98b670dd29
Merge pull request #7966 from Techjar/fix-netplay-full-wii-save
Core/WiiRoot: Fix NetPlay full Wii save sync not copying all the saves back to main NAND
2019-05-01 19:29:38 +02:00
Léo Lam f4d7b537cc
Merge pull request #7958 from Craftyawesome/cpu-emulation-order
Re-order cpu emulation options from fastest to slowest
2019-05-01 17:56:19 +02:00
JosJuice 8fd6f8f6e9 Call Host_NotifyMapLoaded when clearing g_symbolDB
Otherwise DolphinQt will have a stale symbol list and
you can get nullptr dereferences when trying to use it.
2019-05-01 17:48:27 +02:00
Léo Lam bec85a0962
Merge pull request #8013 from JosJuice/titledatabase-japanese-gc
Show Japanese GC games in Japanese when using TitleDatabase
2019-05-01 17:37:31 +02:00
Léo Lam ef88dd73b3
Merge pull request #8014 from JosJuice/getuniqueidentifier-language-independent
Make GameFile::GetUniqueIdentifier independent of language setting
2019-05-01 17:34:01 +02:00
z0z0z 5bacb2e4c6 Disable Vulkan overrides for RADV driver 2019-05-01 07:59:54 -04:00
Léo Lam 5ce8d97c68
Merge pull request #7163 from lioncash/pointer
BTEmu: Get rid of a few pointer casts
2019-05-01 13:13:58 +02:00
Jordan Woyak 0c81af74e1 WiimoteEmu: Drum extension accuracy improvements. 2019-04-30 20:14:12 -05:00
JMC47 e39aa5b026
Merge pull request #7880 from jordan-woyak/udraw-tablet-emu
WiimoteEmu: Implement 3rd-Party extension encryption and uDraw GameTablet.
2019-04-30 19:45:33 -04:00
Jordan Woyak 2babbd76d0 WiimoteEmu: Implement uDraw GameTablet. 2019-04-30 18:36:37 -05:00
Jordan Woyak 57a23cc4a0 InputCommon: Remove unused "sign" macro. 2019-04-29 18:28:56 -05:00
Filip Gawin c110ffcdaa Remove redundant initialization 2019-04-30 01:22:24 +02:00
JMC47 360f2b4a2f
Merge pull request #8042 from jordan-woyak/mapping-ui-clear-fix
DolphinQt: Fix "Default" and "Clear" buttons not updating the displayed extension.
2019-04-29 06:14:27 -04:00
JMC47 0f483e7d61
Merge pull request #8050 from Techjar/memorywatcher-determinism
Core: Remove MemoryWatcher
2019-04-28 22:36:11 -04:00
spycrab 6e6f833bb3
Merge pull request #8044 from jordan-woyak/indicators-on-top
DolphinQt: Move mapping indicators to top of UI.
2019-04-29 02:48:23 +02:00
Connor McLaughlin aee1551a55
Merge pull request #8043 from jordan-woyak/mapping-ui-event-block-fix
DolphinQt: Fix mapping of space, return, and mouse-clicks.
2019-04-28 23:49:23 +10:00
Connor McLaughlin 1b1662773e
Merge pull request #8048 from stenzek/vulkan-negative-scissor-rect
Vulkan: Don't set a negative offset in scissor rect
2019-04-28 23:37:51 +10:00
Jordan Woyak 4e39d833ae DolphinQt: Fix mapping of space, return, and mouse-clicks from immediately re-activating detection. 2019-04-28 08:34:47 -05:00
Connor McLaughlin d2d8d7ce90
Merge pull request #8051 from JosJuice/efb-constexpr
Turn EFB_WIDTH/EFB_HEIGHT into constexpr
2019-04-28 20:37:25 +10:00
Techjar 0c02e77eee Core: Remove MemoryWatcher
MemoryWatcher only works on Linux and affects emulation determinism due
to scheduling additional events, which causes NetPlay to desync.
Considering that this interface is a rather specialized use case, the
communication with it is kinda crappy *and* it's affecting emulation, I
think it's best to just axe it and come up with a better implementation
of the functionality.
2019-04-28 06:22:27 -04:00
JosJuice ced2306fc5 Turn EFB_WIDTH/EFB_HEIGHT into constexpr
https://bugs.dolphin-emu.org/issues/11692#note-5

Also change const into constexpr while we're at it.
2019-04-28 11:50:17 +02:00
Connor McLaughlin e17bb8cfdf
Merge pull request #8025 from chargeflux/PathPaneAddBtn
Qt: Fix add button not releasing
2019-04-28 17:15:42 +10:00
Connor McLaughlin f7199397a0
Merge pull request #8047 from stenzek/d3d-feature-level-10
D3D11: Fix Dolphin crashing on feature level 10.0 devices
2019-04-28 17:07:37 +10:00
Pokechu22 0cb27cc42c Fix the screen going black on pause after changing windows
More info: https://zeduckmaster.frama.io/2016/how-to-create-a-custom-rendering-in-a-qt5-widget/
2019-04-27 23:26:44 -07:00
Stenzek 53af27b133 FramebufferManager: Fix invalid transitions for 1xIR in EFB cache 2019-04-28 16:13:49 +10:00
Stenzek 5399995c61 Vulkan: Don't set a negative offset in scissor rect
The spec/validation layers say this is invalid.
2019-04-28 16:01:09 +10:00
Stenzek 025767c929 D3D: Set optional features after creating the device
Fixes feature level 10.0 devices crashing during runtime.
2019-04-28 15:26:49 +10:00
Stenzek 51154d6907 FramebufferShaderGen: Don't emit SV_SampleIndex when not using SSAA 2019-04-28 15:26:21 +10:00
Stenzek d5b3595314 TextureCache: Fix incorrect format string in GetXFBTexture() 2019-04-28 14:32:37 +10:00
spycrab 906ccdb1b4
Merge pull request #8030 from spycrab/qt_patch_preview
Qt/Debugger: Implement patch instruction preview
2019-04-28 00:32:36 +02:00
spycrab f6e73a0aec Qt/Debugger: Implement patch instruction preview 2019-04-27 23:31:19 +02:00
Jordan Woyak af8b14f452 DolphinQt: Move mapping indicators to top of UI. 2019-04-27 14:23:29 -05:00
Jordan Woyak 74a997da65 DolphinQt: Fix "Default" and "Clear" buttons not updating the displayed extension. 2019-04-27 10:51:57 -05:00
Mat M 687907e44d
Merge pull request #8035 from jordan-woyak/si-enum-constexpr
SI: Replace some unnamed enums with constexpr.
2019-04-27 08:40:41 -04:00
Mat M 621ede1268
Merge pull request #8040 from phire/fix_unintilized_xer
Fix uninitialized powerpc.xer_* variables
2019-04-27 08:36:09 -04:00
Jordan Woyak 9f0dc402f4 InputCommon: Make sure setting values are initialized in case they are used before config load. 2019-04-27 07:01:24 -05:00
JosJuice 3bef561e5d Make GameFile::GetUniqueIdentifier independent of language setting
My bad.

We need this in the situation where two users are using different
languages and the game has a different name in each language.
2019-04-27 14:00:58 +02:00
MerryMage e06111e86f EmuCodeBlock: Prefer MOVAPS to MOVSD in ConvertDoubleToSingle
* The high half of the register is immediately masked so the value in it is irrelevant.
* MOVSD produces an unnecessary dependency on the high half of regOp.
* MOVAPS is implemented as a register rename on modern microarchitectures.
2019-04-27 12:57:03 +01:00
MerryMage 1baa8ee970 x64Emitter: Prefer MOVAPS to MOVSD
* The high half of regOp is immediately overwritten so the value in it is irrelevant.
* MOVSD produces an unnecessary dependency on the high half of regOp.
* MOVAPS is implemented as a register rename on modern microarchitectures.
2019-04-27 12:56:05 +01:00
MerryMage 2d4dd8cdc1 x64Emitter: Prefer MOVAPS to MOVAPD
There is no reason to use MOVAPD over MOVAPS, for two reasons:
* There has never been a microarchitecture with separate single and double domains.
* MOVAPD is one byte longer than MOVAPS
2019-04-27 12:54:43 +01:00
Scott Mansell 033f1d725f Fix un-initialized powerpc.xer_* variables 2019-04-27 15:38:02 +12:00
Techjar 20530c2a96 Core/WiiRoot: Fix NetPlay full Wii save sync not copying all the saves back to main NAND 2019-04-26 23:33:35 -04:00
Connor McLaughlin 664cfb2ca5
Merge pull request #7970 from Techjar/netplay-mii-sync
NetPlay: Synchronize Mii data
2019-04-27 13:26:55 +10:00
Connor McLaughlin b5c3542cb5
Merge pull request #8039 from iwubcode/monster_lab_fix
CommandProcessor: Don't reset gather pipe on write the high distance bit (fixes monster lab)
2019-04-27 13:26:29 +10:00
iwubcode c2abf092e9 VideoCommon: Do not reset the gather pipe (WPAR buffer) as this does not reflect what actually happens on real hardware. On hardware, there's no way for the GPU to signal to reset the WPAR buffer. Instead, the WPAR buffer will be reset automatically upon receiving 32 bytes or when spr[WPAR] is written 2019-04-26 22:20:53 -05:00
JMC47 664376dae1
Merge pull request #7861 from jordan-woyak/mplus-emu
WiimoteEmu: Emulated MotionPlus and improved emulated swing.
2019-04-26 05:50:18 -04:00
spycrab 057fa6c092
Merge pull request #8032 from spycrab/netplay_md5
Qt/NetPlayDialog: Move MD5 button into menubar
2019-04-26 03:19:41 +02:00
spycrab ea0846463f
Merge pull request #8031 from spycrab/qt_remove_iterative_input
Qt/Mapping: Remove iterative input
2019-04-24 14:03:17 +02:00
spycrab 8feacce783
Merge pull request #8028 from spycrab/issue_11690
Qt/NewPatchDialog: Fix crashes on entry removal
2019-04-24 02:49:09 +02:00
Jordan Woyak ba1b335118 WiimoteEmu: Improve emulated swing. 2019-04-23 19:02:41 -05:00
Jordan Woyak 4374600367 WiimoteEmu: Implement MotionPlus parameter y0 and other cleanups. 2019-04-23 18:38:00 -05:00
Jordan Woyak 59e1c83445 WiimoteEmu/MotionPlus: Build non-hardcoded calibration data and other cleanups. 2019-04-23 18:38:00 -05:00
Jordan Woyak 9554ece874 WiimoteEmu: MotionPlus is now working. 2019-04-23 18:38:00 -05:00
Jordan Woyak d97349af0d SI: Replace some unnamed enums with constexpr. 2019-04-23 16:25:09 -05:00
spycrab e97c61c196 Qt/NetPlayBrowser: Connect to session on double-click 2019-04-23 23:22:12 +02:00
spycrab 127b4e77ec
Merge pull request #8029 from spycrab/issue_11680
Qt/NetPlayBrowser: Prevent word wrap
2019-04-23 23:08:41 +02:00
spycrab 7f861f095a Qt/Mapping: Remove iterative input 2019-04-23 22:59:34 +02:00
spycrab 8e3d1200da
Merge pull request #7833 from chargeflux/CodeWidgetHiding-macOS
Debugger: Apply hiding logic earlier (macOS)
2019-04-23 22:40:17 +02:00
spycrab f7dcd191e3 Qt/NetPlayDialog: Move MD5 button into menubar 2019-04-23 22:37:22 +02:00
chargeflux 290275e8ea Debugger: Move hiding logic via setHidden() to before setFloating() 2019-04-23 16:20:42 -04:00
spycrab 0ef3eced78 Qt/NetPlayBrowser: Prevent word wrap 2019-04-23 18:55:40 +02:00
spycrab a6e7a90a4a Qt/NewPatchDialog: Fix crashes on entry removal 2019-04-23 18:46:38 +02:00
chargeflux cd5f42cee0 Qt: Fix add button not releasing 2019-04-22 20:32:01 -04:00
Markus Wick 2abe333ce9
Merge pull request #7287 from degasus/idle_skipping
Jit64 / JitArm64: Optimized idle skipping detection.
2019-04-22 23:08:03 +02:00
spycrab e575fa92d7
Merge pull request #8005 from JosJuice/issue-11679
DolphinQt: Fix verify tab hash box sizes on macOS
2019-04-22 14:39:56 +02:00
spycrab b4dfda0774
Merge pull request #8021 from spycrab/cm_overhaul
Qt/CheatManager: Fix a bunch of issues
2019-04-22 14:16:53 +02:00
spycrab a154c56815 Qt/CheatsManager: Use ActionReplay constants 2019-04-22 14:09:47 +02:00
Connor McLaughlin 59c0e51f5b
Merge pull request #8000 from stenzek/more-videocommon-cleanup
Additional cleanup/fixes from VideoCommon merge
2019-04-22 12:50:22 +10:00
Connor McLaughlin 93be178f28
Merge pull request #7857 from stenzek/opengl-stereo
OGL: Fix stereoscopy
2019-04-22 12:41:12 +10:00
spycrab fb841c75cb
Merge pull request #8022 from spycrab/issue_11676
Qt/GameConfigWidget: Show revision specific INIs
2019-04-21 21:38:56 +02:00
spycrab e2abda0c9b Qt/GameConfigWidget: Show revision specific INIs 2019-04-21 20:56:44 +02:00
spycrab 6c938cc070 Qt/VerifyWidget: Fix layout warnings 2019-04-21 20:28:55 +02:00
spycrab 4f7ff76801 Qt/CheatsManager: Fix locking defaulting to the value zero 2019-04-21 19:45:58 +02:00
spycrab 05eb91691c Qt/CheatsManager: Fix value setting 2019-04-21 17:34:31 +02:00
Connor McLaughlin 44d5a71e27
Merge pull request #7965 from jordan-woyak/condvar-fixes
Minor changes to usages of std::condition_variable.
2019-04-21 23:50:53 +10:00
spycrab 0b56d49d97 Qt/CheatsManager: Deduplicate code 2019-04-21 15:38:59 +02:00
Jordan Woyak a9ef110349 DolphinQt: Query mapping indicator colors using QPalette for better behavior with alternative themes. 2019-04-21 08:20:45 -05:00
spycrab a6ed1b644b Qt/CheatSearch: Fix locking being permanently disabled 2019-04-21 13:51:25 +02:00
Stenzek 356ebdf509 OGL: Set shared context state up to match main context
Has a better chance of avoiding recompiling if so.
2019-04-21 14:28:14 +10:00
Stenzek 6553cf8bb1 OGL: Only set GL_PROGRAM_POINT_SIZE on desktop GL
It is always enabled in GLES.
2019-04-21 14:28:14 +10:00
Stenzek f2a594fad5 OGL: Fix binding error on shutdown
This was occurring if the imgui vertex format was bound on shutdown,
which is destroyed before the vertex buffers
2019-04-21 14:28:14 +10:00
Stenzek 9577d0641b ShaderCache: Fix crash at shutdown on shared shader compilation fail 2019-04-21 14:28:14 +10:00
Stenzek 5c95dc61fc OGL: Store shader source in OGLShader
So it can be dumped with info log when linking fails.
2019-04-21 14:28:14 +10:00
Stenzek bbd1ae16db OGL: Remove unused ProgramShaderCache::CompileShader() 2019-04-21 14:28:14 +10:00
Stenzek f8c1ba409c Replace EFBRectangle/TargetRectangle with MathUtil::Rectangle 2019-04-21 14:28:14 +10:00
JMC47 6ea43235d5
Merge pull request #7841 from iwubcode/config-mgr-onion
Config: Move the 'Display' settings from ConfigManager to the layered config system
2019-04-21 00:01:47 -04:00
Connor McLaughlin ca55375d01
Merge pull request #8015 from jordan-woyak/dinput-cursor-optimize
ControllerInterface/DInput: Optimize cursor position updating.
2019-04-21 13:56:50 +10:00
Connor McLaughlin 5b4ebccf6b
Merge pull request #8012 from stenzek/bounding-box-shaders
PixelShaderGen: Don't emit bounding box shader code for old UIDs when disabled
2019-04-21 13:27:05 +10:00
Stenzek b09a0e1a60 TextureCache: Check for out-of-range partial copy rect after scaling 2019-04-21 12:54:32 +10:00
Stenzek 3791262d96 TextureCache: Use linear filtering on y-scaled and >1xIR VRAM copies 2019-04-21 12:41:15 +10:00
Stenzek 708bd3d9f7 TextureCache: Simplify XFB reconstruction
This also better handles in-memory interlaced XFB data placed by the CPU
by considering the stride from the VI.
2019-04-21 12:41:15 +10:00
Stenzek dbaba0062a TextureDecoder: Move XFB decoding to Common
This was previously missing for generic (which is used on ARM).
2019-04-21 12:41:15 +10:00
degasus 6ec4ade3b6 Interpreter: Drop idle skipping in interpreter.
And reimplement it in the cached interpreter based on the idle loop detection.
2019-04-20 20:52:39 +02:00
degasus 55abe1a085 Jit64: Refactor WriteIdleExit helper. 2019-04-20 20:52:39 +02:00
degasus b8b4b4a383 PowerPC: More idle loop detections. 2019-04-20 20:52:39 +02:00
degasus 55db7c7a05 Jit64: Optimized idle skipping detection. 2019-04-20 20:52:39 +02:00
Jordan Woyak 8c1310d1d1 ControllerInterface/DInput: Optimize cursor position updating. 2019-04-20 09:25:11 -05:00
Stenzek eddde3e6c8 ShaderGen: Use interface blocks when geometry shaders are supported
We don't use explicit locations in OpenGL currently, so this breaks
when we use alternative names in the geometry shaders.
2019-04-20 23:44:33 +10:00
Stenzek c6b45c5ca9 ShaderCache: Fix crash if pipeline from uid cache fails creation 2019-04-20 23:16:29 +10:00
Stenzek 96aa762d1e PixelShaderGen: Don't emit bounding box shader code for old UIDs when disabled
If bounding box is enabled when a UID cache is created, then later disabled,
we shouldn't emit the bounding box portion of the shader.

Fixes pipeline creation errors on D3D12 backend for this case.
2019-04-20 23:16:14 +10:00
JosJuice fbe7892bd2 ConfigManager: Remove TitleDatabase.h include
Made unnecessary by 8842a0f.
2019-04-20 12:30:46 +02:00
JosJuice e98f5fe665 Show Japanese GC games in Japanese when using TitleDatabase
Because the GC language setting cannot be set to Japanese, we
need a special condition for Japanese GC games. I accidentally
removed it in PR 7816, but here it is again in a new form.

We could do the same thing with Korean GC games if we want to
(which we couldn't do before PR 7816), but due to how spotty
GameTDB is with having Korean names for Korean GC releases,
things will be more consistent if we just use English for them.
2019-04-20 12:12:35 +02:00
Connor McLaughlin c26f53bf84
Merge pull request #7999 from stenzek/pipeline-cache-data
Implement pipeline data cache for OpenGL and D3D12
2019-04-20 12:56:02 +10:00
JosJuice f0323a59c3 DolphinQt: Fix verify tab hash box sizes on macOS
https://bugs.dolphin-emu.org/issues/11679
2019-04-19 19:15:04 +02:00
Jordan Woyak 779e618046 VideoCommon: Change free-look's middle-mouse action to roll the camera. 2019-04-17 05:10:11 -05:00
Jordan Woyak 1d024c8add Fix u8 string literal C++20 compile error. 2019-04-16 16:31:12 -05:00
Markus Wick f1620f25f4
Merge pull request #7981 from degasus/interpreter_psq_l
Interpreter: Fix psq_l with QUANTIZE_FLOAT.
2019-04-16 22:27:07 +02:00
Markus Wick dbfdb16fbb
Merge pull request #7990 from MerryMage/fprf
EmuCodeBlock: Correct zero handling in SetFPRF for SSE4.1
2019-04-16 22:13:05 +02:00
JMC47 80d21b8ffb
Merge pull request #8002 from JMC47/CursorSlowdown
Slow down relative input cursor
2019-04-15 20:43:31 -04:00
JMC47 f3aaf5deaa Reduce Relative Input Cursor Speed Dramatically
This makes it about 1/4th the speed which may be a bit slow, but should
work for most controllers.
2019-04-15 17:23:17 -04:00
Stenzek 00b83b4196 ShaderCache: Utilize pipeline cache data where possible 2019-04-16 00:39:43 +10:00
Stenzek 616ad378b7 OGL: Support returning pipeline cache data 2019-04-16 00:39:43 +10:00
Stenzek 5cef09e383 D3D12: Support returning pipeline cache data 2019-04-16 00:34:34 +10:00
Stenzek 61a656570e AbstractPipeline: Support returning "cache data"
"Cache data" can be used to assist a driver with creating pipelines by
using previously-compiled shader ISA.
2019-04-16 00:09:47 +10:00
JosJuice d7b5270348
Merge pull request #7988 from JosJuice/fix-wii-save-import
Fix importing Wii save files with sizes not divisible by 64
2019-04-14 17:17:00 +02:00
spycrab 0f8e5ab207
Merge pull request #7968 from Techjar/fix-netplay-browser-search-hang
Qt/NetPlayBrowser: Refresh session list asynchronously
2019-04-14 03:11:31 +02:00
JMC47 1cedbd5b82
Merge pull request #7923 from jordan-woyak/full-surface-rename
ControllerInterface: Rename full surface analog inputs.
2019-04-13 17:43:29 -04:00
JMC47 a891115ea3
Merge pull request #7952 from jordan-woyak/emu-shake-params
WiimoteEmu: Allow shake frequency and intensity to be configured.
2019-04-13 12:13:13 -04:00
Jordan Woyak be897b41a7 ControllerInterface: Rename full surface analog inputs to be more visually dissimilar from their underlying inputs. e.g. "Full Axis X+". 2019-04-13 08:45:19 -05:00
spycrab 241166a1a5
Merge pull request #7991 from spycrab/npi_retcode
UICommon/NetPlayIndex: Handle non 200 HTTP return codes
2019-04-13 15:24:10 +02:00
spycrab 336edbef1e UICommon/NetPlayIndex: Handle non 200 HTTP return codes 2019-04-13 12:58:23 +02:00
spycrab eddcb70b84 Common/HttpRequest: Add option to allow non 200 response codes 2019-04-13 12:58:23 +02:00
Techjar 6d01f34d78 Core/NetPlayClient: Reset GCAdapter device type in UpdateDevices
This will ensure an origin reset is triggered on next boot.
2019-04-13 06:32:45 -04:00
Jordan Woyak c89ddf8cba WiimoteEmu: Allow shake frequency and intensity to be configured. Other minor cleanups. 2019-04-12 16:50:59 -05:00
JosJuice 635fd8c22c
Merge pull request #7984 from JosJuice/root-path-savestate
IOS/FS: Don't savestate m_root_path
2019-04-12 22:37:21 +02:00
MerryMage e4d83a56a5 EmuCodeBlock: Correct zero handling in SetFPRF for SSE4.1 2019-04-12 20:03:42 +01:00
spycrab 2a1dee4dce
Merge pull request #7976 from spycrab/netplay_index_feedback
Qt/NetPlay: Show feedback for index adding
2019-04-12 14:21:42 +02:00
JosJuice 4f915760e8 Fix importing Wii save files with sizes not divisible by 64 2019-04-12 11:34:32 +02:00
Techjar c7c4196c38 Qt/NetPlayBrowser: Refresh session list asynchronously 2019-04-11 22:02:13 -04:00
spycrab f2e3f69d34
Merge pull request #7979 from Techjar/netplay-browser-possible-crash
UICommon/NetPlayIndex: Fix possible crash when Add is called again
2019-04-11 21:49:58 +02:00
spycrab 8b6bb39e82 Qt/NetPlay: Show feedback for index adding 2019-04-11 21:26:00 +02:00
spycrab b9d110ed66 WinUpdater: Restore original executable name 2019-04-11 20:21:50 +02:00
JosJuice 822acf9ab9 IOS/FS: Don't savestate m_root_path
The NAND root path can be different on different systems,
so we must not savestate it.
2019-04-11 18:50:15 +02:00
JosJuice d5ed3cbd88
Merge pull request #7922 from JosJuice/verify-disc
Add a Verify tab to game properties
2019-04-11 16:39:49 +02:00
spycrab 372b8552ce
Merge pull request #7974 from spycrab/winupdater
Move Updater to WinUpdater
2019-04-11 12:04:31 +02:00
degasus 399768c91b Interpreter: Fix psq_l with QUANTIZE_FLOAT.
psq_l with QUANTIZE_FLOAT does not use the FPU, so it does not trim the precision of the u32 input data.
We already have the helper ConvertToDouble for floating point u32->u64 convertion used in lfs, so let's use it here as well.
2019-04-11 10:12:59 +02:00
Markus Wick 849ede9d0a
Merge pull request #7639 from CrystalGamma/pr-quantize
PowerPC: Thread state through PS (de)quantize helpers
2019-04-11 10:11:08 +02:00
CrystalGamma e5c8b889ef PowerPC: Thread state through PS quantize helper 2019-04-11 10:03:36 +02:00
CrystalGamma e12cdbefa5 PowerPC: Thread state through PS dequantize helper 2019-04-11 10:03:36 +02:00
Techjar f1e06b89da UICommon/NetPlayIndex: Fix possible crash when Add is called again 2019-04-10 22:39:16 -04:00
Jordan Woyak a9a4b53072 WiimoteEmu: Fix Data Report 0x32. 2019-04-10 20:17:34 -05:00
Markus Wick d90d641ec7
Merge pull request #7889 from CrystalGamma/pr-floathelpers
PowerPC: Thread state through float helpers
2019-04-10 23:14:39 +02:00
Markus Wick 5a4700f589
Merge pull request #7638 from CrystalGamma/pr-addresshelpers
PowerPC: Thread state through the address helpers
2019-04-10 23:05:43 +02:00
spycrab d73987e466 Move Updater to WinUpdater 2019-04-10 10:46:49 +02:00
spycrab 1f6c67a6fb
Merge pull request #7969 from Techjar/fix-browser-radio-spacing
Qt/NetPlayBrowser: Fix radio button spacing
2019-04-10 08:11:42 +02:00
Techjar b8abfba20b Qt/NetPlayBrowser: Fix radio button spacing
The spacing was weird due to widgets in adjacent rows messing with the
column size, so we'll make those widgets span all the columns.
2019-04-09 19:41:58 -04:00
JMC47 e10a472134
Merge pull request #7936 from jordan-woyak/numeric-setting-cleanup
InputCommon: Clean up how numeric settings are handled.
2019-04-09 19:30:26 -04:00
JosJuice 8709b21ac3 VolumeVerifier: Verify WAD contents 2019-04-09 14:18:46 +02:00
JosJuice a469fb3150 VolumeVerifier: Check whether invalid blocks are unused 2019-04-09 14:18:46 +02:00
JosJuice eced9d7c7e VolumeVerifier: Calculate CRC32/MD5/SHA-1 2019-04-09 14:18:46 +02:00
JosJuice 4fd2d8e8c4 VolumeVerifier: Check hashes in Wii partitions 2019-04-09 14:18:45 +02:00
JosJuice 84cbd5150f Add a Verify tab to game properties 2019-04-09 14:18:41 +02:00
spycrab 0b8ac0a22f
Merge pull request #7971 from Techjar/go-away-golf-ui
Qt/NetPlayDialog: Don't create golf UI when host input authority is disabled
2019-04-09 13:14:54 +02:00
spycrab a06c7df927
Merge pull request #7954 from Techjar/netplay-disable-bba
Disable BBA in NetPlay
2019-04-09 13:13:05 +02:00
spycrab 627a1a90c1
Merge pull request #7938 from Techjar/netplay-pending-start-stall
NetPlay: Fix hosting being stuck if player leaves during pending start
2019-04-09 13:07:17 +02:00
spycrab 746849f891
Merge pull request #7964 from Techjar/fix-netplayindex-segfault
UICommon/NetPlayIndex: Fix random segfaults after quitting NetPlay
2019-04-09 12:45:58 +02:00
Techjar cd6c918973 Qt/NetPlayDialog: Don't create golf UI when host input authority is disabled 2019-04-08 07:09:20 -04:00
Techjar 1b8eda827b NetPlay: Synchronize Mii data
It's bundled with the Wii saves for simplicity, since it's quite small.
2019-04-08 07:06:21 -04:00
spycrab 75f1a5d0cc Qt/NetPlayBrowser: Various small fixes 2019-04-08 00:01:23 +02:00
Jordan Woyak 5efb717873 InputCommon: Clean up how numeric settings are handled. Add units of measure to UI. Eliminate hidden magic values of the IR cursor. 2019-04-07 09:32:49 -05:00
Techjar c90df946ba NetPlay: Add cancel button for chunked data transfers 2019-04-07 06:22:33 -04:00
Techjar 7870704087 NetPlay: Fix hosting being stuck if player leaves during pending start
The logic didn't account for the case where a player leaves, so the
host would be left in a dangling state where the UI is disabled but the
game won't start, requiring a full restart of Dolphin to fix.
2019-04-07 06:22:31 -04:00
Jordan Woyak d34a9afe04 Minor changes to usages of std::condition_variable. 2019-04-06 17:39:25 -05:00
Techjar dc552f2cbb UICommon/NetPlayIndex: Fix random segfaults after quitting NetPlay
We can't join a detached thread, so NetPlayIndex gets deleted before
the notification thread exits, creating a race condition. We switch to
using Common::Event because just sleeping leaves the UI hung on the
thread join for a few seconds.
2019-04-06 17:23:37 -04:00
JMC47 75e74315e6
Merge pull request #7689 from jordan-woyak/sdl-improve
ControllerInterface: SDL cleanups/fixes
2019-04-06 14:53:51 -04:00
spycrab ca5eac0c63 Common/HttpRequest: Fix EscapeComponent leaking memory 2019-04-06 13:27:49 +02:00
spycrab 23986d48f7
Merge pull request #7945 from spycrab/np_browser
Qt/NetPlay: Implement session/server browser
2019-04-06 12:36:29 +02:00
spycrab 094bf0d2ff Qt/NetPlay: Integrate NetPlayIndex 2019-04-06 12:27:30 +02:00
JMC47 a7ee00ae25
Merge pull request #7960 from Techjar/netplay-fix-segfault-on-exit
Qt/MainWindow: Fix segfault on exit while NetPlay is open
2019-04-05 11:48:07 -04:00
spycrab e44433c2f6
Merge pull request #7955 from Techjar/netplay-golf-mode
NetPlay golf mode
2019-04-05 17:25:23 +02:00
Techjar 6c393f9ff4 Add imgui golf mode overlay 2019-04-05 07:01:03 -04:00
Techjar 1a12876330 NetPlay: Implement golf mode
This is an extension of host input authority that allows switching the
host (who has zero latency) on the fly, at the further expense of
everyone else's latency. This is useful for turn-based games where the
latency of players not on their turn doesn't matter.

To become the so-called golfer, the player simply presses a hotkey.
When the host is the golfer, latency is identical to normal host input
authority.
2019-04-05 07:01:03 -04:00
Techjar ab6583b430 Qt/MainWindow: Fix segfault on exit while NetPlay is open 2019-04-05 03:12:25 -04:00
Craftyawesome 20cc4508f0 Re-order cpu emulation options from fastest to slowest
Based on https://bugs.dolphin-emu.org/issues/11658

Update arrays.xml
2019-04-04 10:51:12 -04:00
JosJuice bfde5b931e
Merge pull request #7956 from spycrab/fix_np_chat_escape
Qt/NetPlayDialog: Fix messages being html-escaped for NetPlay Chat
2019-04-03 18:50:33 +02:00
spycrab 923151e3e3
Merge pull request #7949 from spycrab/turbo_btn
Qt/TAS: Implement turbo mode
2019-04-03 18:43:11 +02:00
Techjar a318c55cec PixelShaderGen: Fix bounding box coordinates being offset by 1 pixel 2019-04-03 10:09:05 -04:00
JMC47 a2df9beb9f
Merge pull request #7924 from jordan-woyak/info-widget-fix
DolphinQt: Fix unused widgets in InfoWidget from being visible.
2019-04-02 19:59:44 -04:00
spycrab 628d72c67d Qt/NetPlayDialog: Fix messages being html-escaped for NetPlay Chat 2019-04-02 23:23:38 +02:00
CrystalGamma b00a7045aa PowerPC: Thread state through float helpers 2019-04-02 19:59:29 +02:00
CrystalGamma 95b06d183e PowerPC: Thread state through the address helpers 2019-04-02 19:52:59 +02:00
Techjar e2f1da5210 NetPlay: Move host input authority logic to client
This is a prerequisite for golf mode, as the client needs to be in
control of sending pad states.
2019-04-02 08:17:13 -04:00
Techjar 980c076c67 Disable BBA in NetPlay 2019-04-01 09:14:28 -04:00
Stenzek 474500f07e Vulkan: Prevent submission of command buffer with open queries 2019-04-01 20:49:42 +10:00
Stenzek f2d8c8d2a8 D3D12: Fix rare case where command list was executed with open queries 2019-04-01 20:49:24 +10:00
Stenzek 92f1f553d1 D3D12: Fix case where perf queries weren't flushed 2019-04-01 20:13:39 +10:00
JMC47 42964e8531
Merge pull request #7921 from zackhow/fixir
Android: Fix touch IR
2019-03-31 23:15:04 -04:00
Connor McLaughlin 32e330eb35
Merge pull request #7950 from stenzek/out-of-range-efb-copies
BPStructs: Gracefully handle out-of-range EFB copies
2019-04-01 13:08:11 +10:00
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
iwubcode 840afc2ad4 Config: Move the 'Display' settings from ConfigManager to the layered config system 2019-03-30 18:43:02 -05: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