Léo Lam
d9eec2ef04
Merge pull request #8609 from jordan-woyak/separate-hotkey-background-input
...
DolphinQt: Give hotkeys their own "background input" setting.
2020-03-15 22:35:49 +01:00
Léo Lam
466c079bf4
Merge pull request #8604 from Techjar/netplay-index-direct
...
Core/NetPlayServer: Fix session not being added to index on direct connection type
2020-03-15 22:22:00 +01:00
Léo Lam
73e7f2a839
BTReal: Improve error handling for device opening
...
This commit attempts to improve error handling for device opening by
reducing panic alert spam when opening one or several devices fails.
Currently, Dolphin shows a panic alert for every device that we fail
to open, and another panic alert at the end if no usable device was
found. That is certainly a bit excessive -- we should only keep the
very last panic alert (the one that is shown if everything fails)
and we can just put the error for the last device open operation there.
This also changes the PanicAlert to a CriticalAlert to ensure the
message is visible even if the user has disabled regular panic alerts.
The message has also been reworded and should hopefully be clearer.
2020-03-15 22:10:24 +01:00
Léo Lam
d297080f52
Merge pull request #8669 from container1234/mbp
...
Breakpoints: Fix crash after clearing all memory breakpoints
2020-03-15 18:40:05 +01:00
Léo Lam
3c1f5c675d
Merge pull request #8628 from iwubcode/texturepack_game_id_file
...
VideoCommon: Allow texture folders to be determined by a <gameid>.txt
2020-03-15 18:37:46 +01:00
iwubcode
bba92019dc
VideoCommon: Allow texture folders to be determined by a <gameid>.txt file
2020-03-15 12:34:04 -05:00
Léo Lam
24a01642e0
Merge pull request #8642 from AdmiralCurtiss/debugger_branch_arrows
...
Qt/CodeViewWidget: Implement branch arrows.
2020-03-15 16:45:36 +01:00
Admiral H. Curtiss
9c98b659f1
Qt/CodeViewWidget: Indent branch arrows based on free space rather than reserving a full column for each.
2020-03-15 16:14:35 +01:00
Léo Lam
19a46dd67b
Merge pull request #8652 from sonic2kk/qtshortcuts
...
Qt: Use Builtin QKeySequence Shortcuts
2020-03-15 15:07:47 +01:00
Léo Lam
4944e4b429
Merge pull request #8647 from jordan-woyak/minor-input-cleanups
...
InputCommon: Minor ReshapableInput related cleanups.
2020-03-15 15:06:54 +01:00
Léo Lam
0bf05009d0
Merge pull request #8650 from jordan-woyak/ir-cleanup
...
HW/WiimoteEmu: Camera logic cleanups.
2020-03-15 15:04:48 +01:00
Eamonn Rea
cd2cf137ba
Use ZoomIn/ZoomOut QKeySequence in GameList
2020-03-15 14:58:33 +01:00
Eamonn Rea
eda31c782e
Qt: Add Configuration shortcut
2020-03-15 14:58:31 +01:00
Eamonn Rea
b82f54762b
Qt: Use builtin Find and Quit key sequences
2020-03-15 14:58:24 +01:00
Florian Bach
3487e5037e
Fix settings.txt parsing in case of weird line endings
2020-03-15 00:12:19 +01:00
container1234
75a69b1145
Breakpoints: Fix crash after clearing all memory breakpoints
2020-03-14 21:57:09 +09:00
Stenzek
cdb0aa850d
Qt/RenderWidget: Remove fill background functionality
...
We no longer need this since the video backend handles clearing the
window, and it fixes MoltenVK with Qt 5.14.
2020-03-11 23:13:45 +10:00
Stenzek
2f016295a6
Core: Render a blank UI frame before booting
...
This is related to https://bugs.dolphin-emu.org/issues/10958 which
uses Qt to clear out the window so the game list isn't displayed
while the core is booting. Instead, we use the video backend to
render a black screen, which means Qt doesn't have to flip between
paint engines.
2020-03-11 23:13:18 +10:00
Stenzek
fb947296b0
Vulkan: Pass CAMetalLayer to MoltenVK instead of NSView
...
Gets rid of the warning for calling [NSView layer] off the main thread.
2020-03-11 23:11:26 +10:00
Stenzek
a545344268
VideoBackends: Make it possible for PrepareWindow to change the surface
...
Again, needed for MoltenVK.
2020-03-11 23:10:30 +10:00
Stenzek
86db015c23
Common: Add a render_window field to WindowSystemInfo
...
We need this because we need to pass the layer to MoltenVK, not
the view handle. But the input subsystem still needs the window.
2020-03-11 23:09:30 +10:00
Admiral H. Curtiss
18127e2554
Qt/CodeViewWidget: Implement branch arrows.
2020-03-07 01:52:53 +01:00
Silent
d1f6f12f78
AudioPane: Do not enable Dolby Pro Logic II quality slider if DPLII is disabled
2020-03-06 21:13:45 +01:00
spycrab
dcaabcac03
Merge pull request #8580 from AlexApps99/master
...
DolphinQt: Add "File Path" column to Game Grid
2020-03-06 08:22:44 +01:00
Sergei Trofimovich
879e8364af
Source/Core/Core/DSP/DSPTables.cpp: include <cstdio> for sprintf
...
Without included header build fails on gcc-10 as:
```
[ 52%] Building CXX object Source/Core/Core/CMakeFiles/core.dir/DSP/DSPTables.cpp.o
../../../../Source/Core/Core/DSP/DSPTables.cpp: In function 'const char* DSP::pdname(u16)':
../../../../Source/Core/Core/DSP/DSPTables.cpp:492:3: error: 'sprintf' was not declared in this scope
492 | sprintf(tmpstr, "0x%04x", val);
| ^~~~~~~
```
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
2020-03-05 21:20:34 +00:00
Sergei Trofimovich
0478ce72f5
Source/Core/Common/StringUtil.h: include <limits> for std::numeric_limits
...
Without included header build fails on gcc-10 as:
```
[ 13%] Building CXX object Source/Core/AudioCommon/CMakeFiles/audiocommon.dir/CubebUtils.cpp.o
In file included from ../../../../Source/Core/AudioCommon/CubebUtils.cpp:13:
../../../../Source/Core/Common/StringUtil.h: In function 'bool TryParse(const string&, T*)':
../../../../Source/Core/Common/StringUtil.h:84:20: error: 'numeric_limits' is not a member of 'std'
84 | if (value < std::numeric_limits<LimitsType>::min() ||
| ^~~~~~~~~~~~~~
```
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
2020-03-05 21:20:34 +00:00
AlexApps99
465e7c2521
Used whole path instead of relative path
2020-03-03 11:58:59 +13:00
AlexApps99
7408c388d6
Add path to File Name column of game grid
...
Fixes https://bugs.dolphin-emu.org/issues/10567
2020-03-02 17:38:28 +13:00
Techjar
08c95883e9
Common/IniFile: Add Exists function for section name only
2020-02-29 01:39:36 -05:00
Jordan Woyak
ccdfa43a3e
HW/WiimoteEmu: Fix Classic Controller triggers.
2020-02-26 15:40:58 -06:00
Jordan Woyak
2451a41a48
DolphinQt: Fix calibration cancel behavior.
2020-02-25 18:36:56 -06:00
Jordan Woyak
2c843ae06b
DolphinQt: Clean up calibration drawing a bit.
2020-02-25 17:58:32 -06:00
Jordan Woyak
ed24f32c5b
InputCommon: Specify ini value default when saving calibration "center".
2020-02-25 17:19:48 -06:00
Jordan Woyak
bd43e084f4
InputCommon: Clamp calibration values within square shape.
2020-02-25 17:19:48 -06:00
Jordan Woyak
f8cca9fe5d
InputCommon: RoundStickGate's ideal sample count can be 1.
2020-02-25 17:19:48 -06:00
spycrab
8233255b11
Qt: Re-enable Dark Mode support
2020-02-25 23:27:44 +01:00
Jordan Woyak
ef777c4186
HW/WiimoteEmu: Fill IR data with 0xFF on failed bus read.
2020-02-24 19:45:02 -06:00
Jordan Woyak
5361e66459
HW/WiimoteEmu: Camera logic cleanups.
2020-02-24 19:44:15 -06:00
Jordan Woyak
6b109bd2a6
DolphinQt: Tweak indicator raw-input/input-shape color for better contrast in some dark themes.
2020-02-24 16:26:28 -06:00
Jordan Woyak
122984b46e
DolphinQt: Eliminiate redundant swing indicator logic.
2020-02-24 16:26:28 -06:00
Jordan Woyak
d80fd13b17
DolphinQt: Clean up mapping indicator code and draw lines on "pixel centers".
2020-02-24 16:26:26 -06:00
Jordan Woyak
f79ca680cb
DolphinQt: Eliminate redundant cursor indicator logic.
2020-02-24 16:25:06 -06:00
Jordan Woyak
38f36be9ae
DolphinQt: Break mapping indicators into separate classes. Ensure "state lock" is held on redraw.
2020-02-24 16:25:06 -06:00
Jordan Woyak
7accd9825f
InputCommon: Remove racy UpdateInput call in DetectInput.
2020-02-24 16:25:06 -06:00
Jordan Woyak
1a3b4d91bf
InputCommon: Mark GetStateLock with [[nodiscard]] and fix discarding calls.
2020-02-24 16:25:06 -06:00
spycrab
25d5f0d9ef
Merge pull request #8633 from spycrab/tas_window_fixes
...
Qt/TAS: Improve TAS windows
2020-02-24 07:26:49 +01:00
Admiral H. Curtiss
c70e004f53
Qt/CodeViewWidget: Use named constants for column IDs.
2020-02-23 18:49:27 +01:00
Jordan Woyak
da12f3eebc
InputCommon: Constify Device::Input::IsDetectable function.
2020-02-22 10:27:43 -06:00
spycrab
29c7c12016
Qt/TAS: Improve TAS windows
...
- Use the Dolphin Icon in TAS Windows
- Prevent deformation of the stick widget (#11988 )
- Improve visual appearance
- Set a reasonable minimum size
2020-02-18 16:13:31 +01:00
Techjar
06a9f6ef82
Core/NetPlayServer: Fix session not being added to index on direct connection type
2020-02-17 21:05:32 -05:00
Jordan Woyak
70ac9ad2e6
InputCommon: Remove Wii Remote real-time calibration of M+ in favor of functionality provided by ControllerEmu.
2020-02-17 16:14:03 -06:00
Jordan Woyak
58448d74c5
InputCommon: Add real Wii Remote support to ControllerInterface. Add option to connect additional Wii Remotes.
2020-02-17 16:14:01 -06:00
Jordan Woyak
4176cc77e1
InputCommon/ControllerInterface: Make devices mutex recursive so RemoveDevice can be used within UpdateInput.
2020-02-17 15:58:06 -06:00
Jordan Woyak
5af2081c75
Core/WiimoteEmu: Add functions to Nunchuk, Classic Controller, and MotionPlus extensions to get/set data without duplicate bithacks everywhere.
2020-02-17 15:57:58 -06:00
Jordan Woyak
8343dadd58
InputCommon: Add types to ControllerEmu that represent raw controller inputs and calibration data to calculate normalized input values.
2020-02-17 15:57:43 -06:00
Jordan Woyak
259a7191d2
Common: Add additional Vector operations.
2020-02-17 15:57:43 -06:00
Jordan Woyak
1e652d7d34
InputCommon: Add calibration functionality to IMUGyroscope.
2020-02-17 15:57:43 -06:00
Jordan Woyak
9efcd08ea3
MathUtil: Add RunningMean/RunningVariance classes.
2020-02-17 15:57:43 -06:00
Jordan Woyak
82a3aa5ff6
InputCommon: Add "Dead Zone" setting to raw gyro inputs.
2020-02-17 15:57:43 -06:00
spycrab
2d6a72e941
Merge pull request #8632 from jimbo1qaz/windows-menu-font
...
Windows GUI: Use QMenu font (Segoe UI) for entire application
2020-02-17 15:04:37 +01:00
nyanpasu64
44f602fe51
Windows GUI: Use QMenu font (Segoe UI) for entire application
...
On Windows, Qt's default system font (MS Shell Dlg 2) is outdated.
Dolphin previously used over 15 lines of code to compute a font
closer to the proper font, but with an approximately correct font size.
Using the QMenu font directly is both more concise and more elegant
(in my opinion).
2020-02-17 05:37:54 -08:00
Léo Lam
44b4c2db49
Common: Avoid std::function overhead in ScopeGuard
...
So far in all our uses of ScopeGuard, the type of the callable is
usually just a lambda or a function pointer, so there is no need
to rely on std::function's type erasure.
While the cost of using std::function is probably negligible, it still
causes some unnecessary overhead that can be avoided by making
ScopeGuard a templated class. Thanks to class template argument
deduction in C++17 most existing usages do not even need to be changed.
See https://godbolt.org/z/KcoPni for a comparison between
a ScopeGuard that uses std::function and one that doesn't
2020-02-15 21:33:31 +01:00
JosJuice
62046d93ce
Merge pull request #8542 from Itrimel/fix-gecko-loading
...
Fix Gecko codes loading
2020-02-15 16:28:32 +01:00
Itrimel
fe900e057b
Core/GeckoCodeConfig : Fix Gecko codes formatting
...
Some locales (e.g. fr_FR.UTF-8 on ArchLinux) don't split the string stream on a space. As such, when extracted formatted data from te stream, it will return the two numbers as one for the first call, effectively overflowing the u32 variable, then will do an out-of-bounds read for the second call. Forcing the use of the C locale on the streams where it would cause a problem allows to workaround this behavior.
2020-02-14 11:51:36 +01:00
spycrab
213a9adcff
CMake: Fix building ARM64 on Windows
2020-02-12 12:29:31 +01:00
Jordan Woyak
903db48280
DolphinQt: Give hotkeys their own "background input" setting.
2020-02-10 20:06:29 -06:00
Tilka
a9dc4ac3f0
Merge pull request #8603 from jordan-woyak/deadzone-too-dark
...
DolphinQt/Mapping: Tweak "Dead Zone" and "Gate" colors.
2020-02-10 23:28:56 +00:00
Tilka
103b3abf66
Merge pull request #8621 from JosJuice/volumeverifier-invalid-partition
...
Fix VolumeVerifier not showing a problem for invalid partitions
2020-02-10 09:33:29 +00:00
Jordan Woyak
47877ecf2c
InputCommon: Clean up creation of inputs.
2020-02-09 19:08:26 -06:00
Tilka
01d69ba81a
Merge pull request #8624 from jordan-woyak/setting-expression-input-gate
...
InputCommon: Only update setting expressions when the input gate is enabled.
2020-02-10 00:47:30 +00:00
Jordan Woyak
53f2e275af
InputCommon: Only update setting expressions when the input gate is enabled.
2020-02-09 18:42:42 -06:00
Tilka
c598772052
Merge pull request #8622 from JosJuice/volumeverifier-invalid-partition-biggest-offset
...
VolumeVerifier: Ignore invalid partitions in GetBiggestReferencedOffset
2020-02-10 00:31:49 +00:00
Tilka
d129fae8fc
Merge pull request #8623 from spycrab/qt_5.14.1
...
Update to Qt 5.14.1
2020-02-10 00:06:11 +00:00
Tilka
db65b9a766
Merge pull request #8616 from jordan-woyak/threshold-cleanup
...
InputCommon: Eliminate some duplicated button threshold logic.
2020-02-10 00:05:10 +00:00
spycrab
6a3bd259a7
Update to Qt 5.14.1
2020-02-09 22:30:57 +01:00
Jordan Woyak
7cbb9822c1
VideoCommon: Remove widescreen heuristic debug logs.
2020-02-09 13:22:27 -06:00
Jordan Woyak
10223da6a8
VideoCommon: Tweak widescreen heuristic and clean up some related Renderer logic.
2020-02-09 13:22:25 -06:00
JosJuice
829f3cff6f
VolumeVerifier: Ignore invalid partitions in GetBiggestReferencedOffset
...
Otherwise GetBiggestReferencedOffset might treat garbage data as a valid
large offset, making Dolphin incorrectly say that the disc is too small.
2020-02-09 19:05:44 +01:00
JosJuice
07df6597a5
Fix VolumeVerifier not showing a problem for invalid partitions
2020-02-09 18:58:15 +01:00
Jordan Woyak
f07457b6cc
InputCommon: Eliminate some duplicated button threshold logic.
2020-02-09 10:37:18 -06:00
magiblot
55e8601192
Fix another implicit false-to-nullptr conversion
2020-02-09 15:51:30 +01:00
Léo Lam
aa21fe17b8
Merge pull request #8618 from encounter/debugger-floating-fix
...
DolphinQt/Debugger: Fix crash with floating debugger windows
2020-02-09 15:50:47 +01:00
Léo Lam
166e86b97f
Merge pull request #8619 from JosJuice/directoryblob-check-seek
...
DiscIO: Check for DirectoryBlob seek failure
2020-02-09 15:49:37 +01:00
Léo Lam
fb0f543777
Merge pull request #8574 from JosJuice/volumeverifier-assert-small-file
...
VolumeVerifier: Improve the messages shown for files that are too small
2020-02-09 15:48:57 +01:00
JMC47
5ab846ad12
Merge pull request #8614 from jordan-woyak/xinput-battery
...
InputCommon/XInput: Expose battery as input and cleanups.
2020-02-09 09:29:00 -05:00
JosJuice
9a348ae654
DiscIO: Check for DirectoryBlob seek failure
...
Someone reported a problem with DirectoryBlob at
https://forums.dolphin-emu.org/Thread-feature-request-thread?pid=502820#pid502820 .
I'm not sure if the change in this commit actually fixes that problem,
but it's something I found that should be changed regardless.
2020-02-09 11:21:10 +01:00
Luke Street
3e94366fe0
DolphinQt/Debugger: Fix crash with floating debugger windows
2020-02-09 02:32:04 -05:00
Tilka
3cec5443cd
Merge pull request #8605 from Techjar/netplay-hostpoll-doc
...
Core/NetPlayClient: Add documentation for SendPadHostPoll
2020-02-09 02:32:50 +00:00
Tilka
2e2540317e
Merge pull request #8417 from jordan-woyak/setting-expressions
...
InputCommon: Allow controller settings specified with input expresions.
2020-02-09 01:37:30 +00:00
Tilka
0043a2cf3c
Merge pull request #8615 from jordan-woyak/std-abs
...
Cleanup: Use std::abs instead of abs.
2020-02-09 00:39:30 +00:00
Jordan Woyak
4f47cccd9f
Cleanup: Use std::abs instead of abs.
2020-02-08 18:21:14 -06:00
Jordan Woyak
0a1634bedf
InputCommon: Allow Wii remote extension to be set with an input expression.
2020-02-08 16:03:13 -06:00
Jordan Woyak
e7400cafd2
InputCommon: XInput cleanups.
2020-02-08 15:51:02 -06:00
Jordan Woyak
86e8745169
InputCommon: Expose XInput battery level as an input.
2020-02-08 15:03:56 -06:00
Jordan Woyak
e8152b700f
InputCommon: Allow controller settings specified with input expresions.
2020-02-08 14:01:55 -06:00
JMC47
6a857df219
Merge pull request #8606 from jordan-woyak/tab-key-navigation
...
DolphinQt: setTabKeyNavigation(false) on QTableWidget and QTableView.
2020-02-08 14:18:09 -05:00
JMC47
3b0b264c84
Merge pull request #8608 from jordan-woyak/stereoscopy-hotkeys
...
DolphinQt: Fix stereoscopy hotkeys.
2020-02-08 14:17:42 -05:00
JMC47
dc5447fb30
Merge pull request #8612 from jordan-woyak/unused-members
...
DolphinQt: Kill some unused member variables.
2020-02-08 14:17:15 -05:00
Jordan Woyak
f94726068d
DolphinQt: Kill some unused member variables.
2020-02-08 10:52:06 -06:00
Tilka
e323f47ceb
Merge pull request #8472 from degasus/jitsetting
...
Core/Jits: Adds an option to disable the register cache.
2020-02-08 13:49:33 +00:00
Jordan Woyak
9a34091b8b
DolphinQt: Fix stereoscopy hotkeys.
2020-02-07 15:47:40 -06:00
Jordan Woyak
b9f34bc822
DolphinQt: setTabKeyNavigation(false) on QTableWidget and QTableView.
2020-02-06 20:48:45 -06:00
Techjar
e8e41d8529
Core/NetPlayClient: Add documentation for SendPadHostPoll
2020-02-06 07:24:00 -05:00
Jordan Woyak
b1a71b959b
DolphinQt/Mapping: Change "Dead Zone" color from shadow color of palette to a transparent black or white depending on theme. Tweak order of "shake" indicator axis colors so red is more often shown.
2020-02-04 16:08:51 -06:00
Pierre Bourdon
a205ecb446
Merge pull request #8602 from lioncash/fmt
...
Externals: Update fmt to 6.1.2
2020-02-04 21:59:22 +01:00
Lioncash
91deb40a22
Common: Amend includes to handle the upgrade to fmt
2020-02-04 15:03:51 -05:00
Lioncash
aea76c7901
Core: Amend includes to handle the upgrade to fmt
2020-02-04 15:03:48 -05:00
Lioncash
abd2897377
VideoCommon: Amend formatting code to handle the upgrade to fmt
...
It seems that the newer version of fmt gets tripped up by bitfields
within structs. However, we can just specify the intended type where
necessary to get around this.
2020-02-04 14:55:20 -05:00
JosJuice
f8355d0f82
VolumeVerifier: Don't return early when file is too small
...
Not sure why that was there.
2020-02-02 17:09:58 +01:00
JosJuice
e449d23929
VolumeVerifier: Don't show an assert for files that are too small
2020-02-02 17:09:58 +01:00
Léo Lam
0491831483
Merge pull request #8592 from phcoder/devid
...
ButtonManager: Fix handling of empty device id.
2020-02-02 16:52:12 +01:00
Léo Lam
06d0b1ad48
Merge pull request #8594 from leoetlino/fs-createfullpath-fix
...
IOS/FS: Fix CreateFullPath to not create directories that already exist
2020-02-02 16:50:02 +01:00
Léo Lam
4c9b1f3e0b
Merge pull request #8599 from Pokechu22/di-interrupt-mask-ioctls
...
Fix DI interrupt mask ioctl names
2020-02-02 16:49:27 +01:00
Pokechu22
f527f382e8
Report use of DI interrupt mask commands as a game quirk
2020-02-02 00:44:12 -08:00
Jordan Woyak
d6515eee41
WiimoteEmu: Fix default IMU accelerometer mappings.
2020-02-01 23:32:09 -06:00
Pokechu22
bb5e5fd8f2
Fix assignment of DI interrupt mask ioctls
...
0x85 is actually DVDLowMaskCoverInterrupt, while 0x89 is DVDLowUnmaskCoverInterrupt. I'm also fairly sure that 0x87 is DVDLowUnmaskStatusInterrupts.
2020-02-01 16:56:48 -08:00
Connor McLaughlin
69ee15e5ef
Merge pull request #8478 from jordan-woyak/dsu-client-cleanup
...
ControllerInterface/DSUClient: Minor cleanup.
2020-02-01 11:29:29 +10:00
SirMangler
ac34911f32
Added Toggle Freelook Hotkey
2020-01-31 20:45:08 +00:00
Stenzek
08cc73108a
Vulkan: Treat VK_SUBOPTIMAL_KHR as VK_SUCCESS on Android
...
Android 10 seems to expect a prerotated/transformed swap chain for optimal
presentation. For now, until we implement that, just ignore the hint.
2020-01-31 19:16:06 +10:00
Stenzek
ead65b0d8c
Vulkan: Log when a swap chain resize is occurring
...
This may help us debug performance problems in the future.
2020-01-31 19:11:43 +10:00
Léo Lam
bbc8631357
IOS/FS: Fix CreateFullPath to not create directories that already exist
...
This fixes CreateFullPath to not create directories when it is known
that they already exist, instead of calling CreateDirectory anyway
and checking if the error is AlreadyExists. (That doesn't work
now that we have an accurate implementation of CreateDirectory
that performs permission checks before checking for existence.)
I'm not sure what I was thinking when I wrote that function.
Also adds some tests for CreateFullPath.
2020-01-30 18:07:03 +01:00
Léo Lam
f1f293bd49
WiiRoot: Fix CopySysmenuFilesToFS directory creation
...
Fixes a regression from #8539 .
CreateDirectory was the correct function to use for creating
directories since parent directories already exist and are
not owned by the system menu.
2020-01-30 13:53:39 +01:00
Vladimir Serbinenko
02c5d292fa
ButtonManager: Fix handling of empty device id.
...
Device id is "" on ChromeOS when using gamepad
2020-01-29 02:47:18 +01:00
Léo Lam
57f4837e4d
Merge pull request #8589 from lioncash/translatable
...
DolphinQt/GCMemcardManager: Mark string as translatable within GetErrorMessagesForErrorCode()
2020-01-27 23:20:03 +01:00
Lioncash
7eaa769527
DolphinQt/GCMemcardManager: Make use of QLatin1Char within GetErrorMessagesForErrorCode()
...
Same behavior, but eliminates the use of a program lifetime Qt string
literal.
2020-01-27 15:59:33 -05:00
Lioncash
585ae8aedf
DolphinQt/GCMemcardManager: Mark string as translatable within GetErrorMessagesForErrorCode()
...
This is a string that can potentially be seen by a user, so it should be
marked as translatable, like the other strings are.
2020-01-27 15:57:36 -05:00
Lioncash
dca201d5f3
DolphinQt/GameConfigWidget: Remove unimplemented EditUserConfig() member function
...
This isn't implemented anywhere, so we can remove the member function
prototype.
2020-01-27 15:46:52 -05:00
Lioncash
2fd628d017
DolphinQt/GameConfigEdit: Remove unimplemented SetReadOnly() member function
...
This isn't implemented anywhere, so we can remove this prototype.
2020-01-27 15:44:52 -05:00
Lioncash
c69cbceb59
DolphinQt/MainWindow: Surround prototype of OnSignal() with relevant ifdef
...
This is only used on Apple and Unix-like machines, so we can enclose the
prototype with an ifdef like the implementation is. This prevents
false-positives about an unimplemented function prototype.
2020-01-27 15:26:41 -05:00
Lioncash
e8ee4e835e
DolphinQt/NetPlayDialog: Remove unimplemented SetGame() prototype
...
This isn't implemented anywhere, so the prototype can be removed.
2020-01-27 15:25:04 -05:00
Tilka
f36c735856
Merge pull request #8586 from Techjar/d2s-no-pext
...
Avoid using PDEP and PEXT on AMD Zen
2020-01-27 03:15:43 +00:00
Techjar
3a3dc28d54
VertexLoaderX64: Don't use PDEP on AMD Zen
2020-01-26 22:12:00 -05:00
Techjar
a106c99826
Jit64: Don't use PEXT in DoubleToSingle on AMD Zen
...
This was causing severe slowdown in some games.
2020-01-26 22:10:46 -05:00
Techjar
185e49d2a9
x64CPUDetect: Add flag for slow PDEP/PEXT on AMD Zen
...
For some unknown reason PDEP and PEXT are ridiculously slow on AMD Zen
architecture.
2020-01-26 22:09:46 -05:00
Techjar
52b52631c2
x64CPUDetect: Add detection for AMD Zen architecture
2020-01-26 22:09:13 -05:00
Connor McLaughlin
47239ddaac
Merge pull request #8587 from lioncash/const-qual
...
DolphinQt/TASCheckBox: Mark GetValue() as const
2020-01-27 12:52:10 +10:00
Lioncash
b493bdb912
DolphinQt/TASCheckBox: Mark GetValue() as const
...
This doesn't actually modify the checkbox's state, so this can be marked
as a const-qualified member function.
2020-01-26 21:41:31 -05:00
Tilka
5dfc9196ab
Merge pull request #8548 from jordan-woyak/wiimote-source-cleanup
...
Core/WiimoteReal: Wii remote connection pool and source change cleanup.
2020-01-25 23:04:50 +00:00
Tilka
9ac77dc91f
Merge pull request #8552 from jordan-woyak/extension-calibration-data
...
WiimoteEmu: Nunchuk and Classic Controller calibration accuracy improvements.
2020-01-25 23:01:57 +00:00
Tilka
73aea8af6b
Merge pull request #8539 from leoetlino/fs-accuracy
...
IOS/FS: Reimplement many functions in a more accurate way
2020-01-25 23:00:10 +00:00
Tilka
2edcb29706
Merge pull request #8582 from jordan-woyak/osd-disabled-fix
...
VideoCommon/OSD: Process OSD messages even when they are disabled.
2020-01-25 21:11:37 +00:00
Tilka
a632bc7324
Merge pull request #8579 from jordan-woyak/rvalue-cleanups
...
Common/Core: Minor rvalue reference related cleanups.
2020-01-25 21:09:22 +00:00
Tilka
14ebdf0e9d
Merge pull request #8585 from JosJuice/volumeverifier-read-error
...
VolumeVerifier: Report read errors to the user
2020-01-25 21:07:01 +00:00
Tilka
b0e040431a
Merge pull request #8581 from jordan-woyak/ciface-ar-aware
...
InputCommon: Make "Cursor" inputs aware of the rendered aspect ratio.
2020-01-25 20:28:01 +00:00
Tilka
9827aa7a37
Merge pull request #8577 from jordan-woyak/shared_mutex
...
Common/Analytics: Replace mutex with shared_mutex and minor cleanups.
2020-01-25 20:08:22 +00:00
Jordan Woyak
5e3472eba9
Common/Analytics: Replace mutex with shared_mutex and minor cleanups.
2020-01-25 14:04:00 -06:00
JosJuice
de26fec0af
VolumeVerifier: Report read errors to the user
2020-01-25 20:21:12 +01:00
Tilka
119ccc5e4f
Merge pull request #8556 from Sintendo/bestrest
...
x64Emitter: Avoid 8-bit displacement when possible
2020-01-25 19:10:47 +00:00
Tilka
709862b818
Merge pull request #8120 from MerryMage/cdts
...
Jit64: Make DoubleToSingle a common asm routine
2020-01-25 19:10:37 +00:00
Léo Lam
c02e7de55a
IOS/ES: Remove now unnecessary title sorting hack
...
ES now uses FS to access the filesystem and FS's ReadDirectory now
returns file lists that are correctly ordered.
2020-01-25 17:54:58 +01:00
Léo Lam
d4ba0acb3a
UnitTests/FS: Add path validity and splitting tests
2020-01-25 17:54:57 +01:00
Léo Lam
484cfb9328
UnitTests/FS: Add metadata tests
2020-01-25 17:53:39 +01:00
Léo Lam
142b7e048b
IOS/FS: Actually implement SetMetadata
2020-01-25 17:53:35 +01:00
Léo Lam
e4dd582d1d
IOS/FS: Implement GetMetadata properly and remove GID hack
...
Now that all FS functions that create new inodes are properly
implemented, we can make GetMetadata actually return correct file
metadata rather than giving fixed information. The hack for the DQX
installer can also be removed now since our ES and FS keep track of
caller UID/GIDs now.
2020-01-25 17:53:34 +01:00
Léo Lam
396429d582
IOS/FS: Implement ReadDirectory properly and remove sorting hack
...
With the CreateFile/CreateDirectory fix and this commit, we can
finally return correct results in ReadDirectory and the sorting
hack -- whose purpose was to prevent certain versions of the
System Menu from crashing -- can be removed too.
2020-01-25 17:53:19 +01:00
Léo Lam
a40f297d1d
IOS/FS: Implement Rename properly
2020-01-25 17:53:18 +01:00
Léo Lam
53ceb6c693
IOS/FS: Implement Delete properly
2020-01-25 17:53:05 +01:00
Léo Lam
8517528f8c
IOS/FS: Implement CreateFile and CreateDir properly
2020-01-25 17:52:45 +01:00
Léo Lam
8f74d02659
Core: Fix a few misuses of FS::CreateDirectory
...
CreateDirectory does not create missing parent directories. If that
behaviour is desired, CreateFullPath should be used instead.
(These small misuses went unnoticed since the previous implementation
of CreateDirectory automatically created parent directories.)
2020-01-25 17:52:07 +01:00
Léo Lam
36676d2628
IOS/FS: Implement Format properly
2020-01-25 17:52:03 +01:00
Léo Lam
a83d9e5600
IOS/FS: Make sure FS root directory exists
...
Previously, the FS root directory would get created as a side
effect of calling CreateDirectory during boot (since the
implementation was sloppy and used File::CreateFullDir).
Since CreateDirectory no longer does that, it is necessary to ensure
that the FS root directory does exist by creating it explicitly.
2020-01-25 17:51:52 +01:00
Léo Lam
0543598574
IOS/FS: Move /tmp clearing back to the IPC interface
...
Prevents /tmp from being cleared unnecessarily; clearing /tmp is
normally only done once every time IOS is reloaded.
2020-01-25 17:51:43 +01:00
Léo Lam
f743f100b1
IOS/FS: Add base FST functions
...
Some official titles rely on implementation details of Nintendo's
FS sysmodule and will not work properly if those are changed.
Notably, some games and older versions of the System Menu appear
to be relying on the order of files returned by FS::ReadDirectory
and will either fail to find their save data (for Bolt) or
outright crash (for the System Menu).
Some titles also actually expect filesystem metadata to be correct.
One title that has been confirmed to do this is DQX, which generates
paths based on the GID of files within its own title directory.
While it is easy to make workarounds for these issues -- and in fact
we already do have some for the sysmenu and DQX, having hacks
is obviously nonideal and adding yet another hack would be required
to fix Bolt -- one that would be even uglier.
Furthermore, while it is currently unknown whether any official
title cares about permissions, the lack of FS metadata means that
we are unable to implement them if that turns out to be desirable
or necessary.
By adding a FST, we can implement things correctly and solve all
those problems without hacks.
Apart from DQX, the sysmenu and Bolt, this changeset also fixes
the Photo Channel complaining about corrupted system files
on the initial launch.
This first commit adds the basic structures and functions that
are necessary to load, save, query and update our version of the FST.
For simplicity, a binary format that is inspired from Nintendo's FST
structure was chosen for serialization. It is not expected to ever
receive an update.
PS: an update on the NAND image backend:
A long time ago I had planned to add another FS backend which would
be using a NAND image/blob as the storage. While I have already
written an implementation that has been tested, solves all the
aforementioned issues and more, produces images that are fully
compatible with IOS's FS driver, I feel like NAND images raise too
many issues: savestate sizes, code complexity and maintenance cost.
Since many fixes and additions that are part of that implementation
(e.g. FS timings, utility structures, FST) have already been merged
or will be submitted as part of this changeset, I will likely not
submit the branch.
2020-01-25 17:51:37 +01:00
Léo Lam
d185bc6f09
IOS/FS: Move path validity check functions
...
They will be used in more places than just HostBackend/FS.cpp.
Also fix the check and make it accurate while we're at it.
2020-01-25 17:47:42 +01:00
Connor McLaughlin
e3a7922e12
Merge pull request #8336 from Ebola16/PS
...
Add Dolphin version and current video backend to shader compilation logs
2020-01-25 11:52:14 +10:00
Jordan Woyak
c08671c4ce
VideoCommon/OSD: Process OSD messages even when they are disabled.
2020-01-24 11:00:58 -06:00
Jordan Woyak
b92f6480a0
InputCommon: Make "Cursor" inputs aware of the rendered aspect ratio.
2020-01-24 09:20:41 -06:00
Ryan Meredith
e5f6d9320f
Add Dolphin version and current video backend to shader compilation logs
2020-01-24 03:29:38 -05:00
Jordan Woyak
732032cdb2
Common/Core: Minor rvalue reference related cleanups.
2020-01-23 22:58:23 -06:00
Connor McLaughlin
42c03c4dad
Merge pull request #8576 from lioncash/texture-cvt-shader-fmt
...
VideoCommon/TextureConversionShader: Convert over to using ShaderCode
2020-01-24 11:53:51 +10:00
Connor McLaughlin
a0b7c1beae
Merge pull request #8366 from Techjar/high-dpi-auto-adjust
...
Qt/RenderWidget: Account for devicePixelRatio when auto-adjusting window size
2020-01-24 11:31:09 +10:00
Lioncash
687f1f0330
VideoCommon/TextureConversionShader: Make use of fmt where applicable
...
Now that we've converted the shader generation over to ShaderCode, we
can now make use of the fmt-capable WriteFmt function.
2020-01-23 14:19:40 -05:00
Lioncash
aa77dff3a2
VideoCommon/TextureConversionShader: Convert over to using ShaderCode
...
Migrates the shader generator off the use of a global array, eliminating
the use of some global state. This also allows us to move the shader
generation over to using fmt in a subsequent change.
2020-01-23 14:19:36 -05:00
Pierre Bourdon
ea9b96370d
Merge pull request #8573 from JosJuice/ciso-size
...
DiscIO: Fix CISOFileReader::GetDataSize()
2020-01-22 19:20:36 +01:00
JosJuice
956c63ef9b
DiscIO: Fix CISOFileReader::GetDataSize()
...
Fixes being unable to run CISO games after the merge of PR 8558.
2020-01-22 18:57:50 +01:00
JMC47
f0669f5aa6
Merge pull request #8570 from Techjar/always-sync-sram
...
Core/NetPlayServer: Sync SRAM on every game start
2020-01-21 20:55:52 -05:00
Connor McLaughlin
a63510a55a
Merge pull request #8554 from stenzek/present-duplicate-frames
...
Add an option to present duplicate frames
2020-01-20 12:04:26 +10:00
JMC47
f61d77a5e2
Merge pull request #8568 from jordan-woyak/imu-accel-ordering
...
InputCommon: List IMUAccelerometer's Up/Down inputs first for consistency.
2020-01-19 16:05:53 -05:00
Techjar
de27dcebf6
Core/NetPlayServer: Sync SRAM on every game start
...
This solves the issue of booting games locally while connected to
NetPlay causing desync.
2020-01-19 03:57:41 -05:00
Jordan Woyak
a61dff67da
InputCommon: List IMUAccelerometer's Up/Down inputs first for consistency.
2020-01-18 13:56:11 -06:00
tinyredpanda
8b1051abb9
Update Qt5_DIR path for ARM64 in CMake project
2020-01-18 11:28:42 +00:00
Léo Lam
89b0ab2d22
StringUtil: Add IsPrintableCharacter and use it
...
Add a function that safely returns whether a character is printable
i.e. whether 0x20 <= c <= 0x7e is true.
This is done in several places in our codebase and it's easy to run
into undefined behaviour if the C version defined in <cctype>
is used instead of this one, since its behaviour is undefined
if the character is not representable as an unsigned char.
This fixes MemoryViewWidget.
2020-01-16 00:22:26 +01:00
Pokechu22
0a6a53e301
Always display the horizontal scroll bar when log word wrap is off
...
Otherwise, a line that's too wide for the log widget will cause the horizontal scroll bar to appear, which reduces the vertical height, and causes the most recent line to be off screen. Since that line is off screen, the log widget no longer scrolls as new lines appear, unless it's manually scrolled to the very bottom again.
2020-01-15 13:59:09 -08:00
Tilka
1cc7ef356b
Merge pull request #8558 from JosJuice/volume-oob
...
DiscIO: Add out of bounds checks for blob reading
2020-01-15 13:48:00 +00:00
Pierre Bourdon
1ac3264d5d
Merge pull request #8545 from jordan-woyak/imu-cursor-centering
...
WiimoteEmu: IMU pointing behavior improvements and code cleanup.
2020-01-15 12:10:57 +01:00
Léo Lam
d2efad58af
Merge pull request #8562 from jordan-woyak/sens-slider
...
Core/DolphinQt: Fix IR Sensitivity slider.
2020-01-15 00:29:24 +01:00
Jordan Woyak
b416389248
Core/DolphinQt: Fix IR Sensitivity slider.
2020-01-14 17:08:21 -06:00
JosJuice
297b790e4f
DiscIO: Add out of bounds checks for blob reading
2020-01-14 18:59:31 +01:00
JosJuice
21c152f51f
Fix Error #001 (alternative solution)
...
This is an alternative to PR 8557 and PR 8558. The way this PR solves
the problem is essentially the same as what we had before PR 8394
(except the code we had back then only worked because it was broken).
2020-01-14 16:47:14 +01:00
Pokechu22
ddba80133a
Fix launching DTK games with MIOS
2020-01-13 20:07:59 -08:00
Pokechu22
d67c4f34d1
Fix crash when launching gamecube games with MIOS (from the Wii menu)
2020-01-13 19:48:19 -08:00
Stenzek
11ba623f26
Add an option to present/skip presenting duplicate frames
...
Currently, we do not display every second frame in 25fps/30fps games
which run to vsync. This improves performance as there's less rendering
for the GPU to perform, but when combined with vsync, could cause frame
pacing issues.
This commit adds an option to force every frame generated by the console
to be displayed to the host, which may improve pacing for these games.
2020-01-14 10:57:35 +10:00
Jordan Woyak
f5d9b78a3c
DolphinQt: Properly hide Wii remote extension motion tabs when no extension is selected.
2020-01-13 18:34:04 -06:00
Connor McLaughlin
efc1ee8e6a
Merge pull request #8537 from degasus/fastmem
...
Core/HW -> PowerPC/JIT: Fastmem arena construction
2020-01-14 09:38:15 +10:00
Jordan Woyak
6106f780a7
ControllerInterface/DSUClient: Eliminate m_accl/m_gyro state by accessing the pad data directly like every other input.
2020-01-13 17:35:33 -06:00
JMC47
eacbff76dd
Merge pull request #8474 from jordan-woyak/dsu-battery
...
ControllerInterface: Exposse DSU client battery level as an input.
2020-01-13 18:30:53 -05:00
Jordan Woyak
e2d5c92c76
ControllerInterface: Remove and re-add device when combining nodes.
2020-01-13 16:50:58 -06:00
Jordan Woyak
aabe8d2ccd
ControllerInterface: Don't consider the empty string a valid unique ID.
2020-01-13 16:50:58 -06:00
Jordan Woyak
ac907ef977
ControllerInterface: Combine evdev devices with the same unique ID.
...
This works around Linux drivers for DS4 (Playstation 4) controllers splitting the device into three separate event nodes which makes configuration difficult.
To prevent collisions of input names in combined devices more descriptive names are now used when possible.
2020-01-13 16:50:56 -06:00
Jordan Woyak
2b9fa0597a
ControllerInterface: Minor DSU client device cleanups.
2020-01-13 16:32:02 -06:00