JMC47
9de3717c50
Merge pull request #8340 from stenzek/max-res
...
DolphinQt: Don't overwrite >8x IR scale in ini, add maximum internal res option
2020-04-16 21:01:14 -04:00
JMC47
935b12d785
Merge pull request #8730 from JosJuice/frame-advance-duplicate-frame
...
Core: Skip duplicate frames when using frame advance
2020-04-16 18:29:16 -04:00
JMC47
85a8325701
Merge pull request #8733 from JosJuice/di-baten-kaitos
...
Adjust s_DIMAR/s_DILENGTH behavior (fixes Baten Kaitos music)
2020-04-16 18:28:09 -04:00
JMC47
19fc43f190
Merge pull request #8708 from Ebola16/Wii
...
Android: Add Insert SD Card and update the description
2020-04-16 18:27:51 -04:00
JMC47
55ed980620
Merge pull request #8711 from Ebola16/SDDE
...
Set Insert SD Card default value to true
2020-04-16 18:25:47 -04:00
JosJuice
3629e75dd2
Merge pull request #8716 from Pokechu22/properties-leak
...
Delete properties dialog on close
2020-04-16 13:53:37 +02:00
JosJuice
19e9a9c945
DiscIO: Clean up decompression size calculation
...
We can use subtraction and std::min instead of
modulo and explicit if statements.
This commit does not change the behavior.
2020-04-15 22:15:40 +02:00
Admiral H. Curtiss
330c80055d
Qt/Debugger: Refresh windows on savestate load.
2020-04-15 00:12:35 +02:00
JMC47
744abab478
Merge pull request #8741 from cristian64/add_checkbox_to_filter_ingame_netplay_sessions
...
DolphinQt: Added checkbox to filter out NetPlay sessions that are already in-game.
2020-04-13 08:52:23 -04:00
JMC47
c0ae9cbc45
Merge pull request #8584 from jordan-woyak/widescreen-heuristic-fix
...
VideoCommon: Tweak widescreen heuristic.
2020-04-13 05:57:19 -04:00
Techjar
bb99062f18
IOS/USBHost: Skip starting threads when determinism is enabled
...
The threads can't actually be started when determinism is enabled, as
the behavior would not be deterministic, but Open() still tries to
start the threads and wait, resulting in a deadlock when booting
certain games and homebrew in NetPlay.
2020-04-12 23:44:53 -04:00
Christian Aguilera
dab4f8b36e
DolphinQt: Added checkbox to filter out NetPlay sessions that are already in-game.
2020-04-13 00:42:03 +02:00
JosJuice
3aa463cdae
DiscIO: Fix decompressing writing too much sometimes
...
This issue cannot happen with good dumps due to their size,
but it can happen with trimmed dumps.
2020-04-12 21:47:10 +02:00
JosJuice
26b21e3186
DiscIO: Fix decompressing writing too little sometimes
...
This issue cannot happen with good dumps due to their size,
but it can happen with trimmed dumps.
2020-04-12 21:45:55 +02:00
Pokechu22
d3dc81ba74
Fix bug 11920
...
DSP LLE Interpreter does not have a DSP thread, so trying to wait would hang. (DSP LLE recompiler also has no thread when in determinism mode).
2020-04-10 12:15:06 -07:00
JosJuice
b2c9149cf8
Remove outdated comment from Movie::FrameUpdate
...
9c5c3c0
made this function be called on the CPU thread.
2020-04-10 00:18:53 +02:00
JosJuice
94f83db2b5
Adjust s_DIMAR/s_DILENGTH behavior (fixes Baten Kaitos music)
...
https://bugs.dolphin-emu.org/issues/11997
The problem seemed to be that s_DILENGTH would get set to 0
at times when it shouldn't. Simply not changing it in case
of NoReply or DTK seems to fix the problem. However, we can
actually go one step further in accuracy and use data.size()
to change s_DIMAR and s_DILENGTH as partial reads (NoReply
commands) complete, instead of jumping directly to 0 when
the whole read completes.
2020-04-09 22:13:45 +02:00
JosJuice
812ad4257c
Core: Skip duplicate frames when using frame advance
...
It used to be the case that frame advance skipped duplicate frames
(i.e. it would take 30 frame advances to get through one second
of emulated time in a 30 fps game), but this broke in 9c5c3c0
.
Skipping duplicate frames making TASing less annoying.
2020-04-09 11:39:29 +02:00
JosJuice
1a42355f96
Core: Clarify Callback_VideoCopiedToXFB and FrameUpdate
2020-04-09 00:21:04 +02:00
Mat M
9a2d8a9623
Merge pull request #8715 from JosJuice/panic-alert-deadlock
...
DolphinQt: Fix the panic alert deadlock (a.k.a. "Question" issue)
2020-04-08 17:20:32 -04:00
Stenzek
a2f4fafe86
Vulkan: Switch from vkCreateMacOSSurfaceMVK() to vkCreateMetalSurfaceEXT()
...
Since we are calling this off the UI thread, we can't use anything which
accesses the underlying NSView object. We create and set the Metal layer
on the UI thread before the video backend is initialized. This extension
is both compatible with MoltenVK and gfx-portability for accepting a
layer at surface creation.
2020-04-07 18:56:55 +10:00
xperia64
b4e49dc656
Respect Core::WantsDeterminism for DNS on Linux
...
Previously Core::WantsDeterminism was only checked for setting the DNS on WIN32.
Same check should apply to Linux too.
2020-04-06 15:45:43 -04:00
Sean Yeh
74d8697ea3
Qt/GameList: Use KeyPress instead of KeyRelease
...
This fixes a bug where pressing Enter in the "Do you want to stop the
current emulation?" confirmation popup also triggers a KeyRelease in
GameList, which starts a new game.
2020-04-03 23:01:21 -05:00
JosJuice
55f787b898
Remove unused function Host_UpdateProgressDialog
2020-04-03 12:53:38 +02:00
JosJuice
c6ee767851
DolphinQt: Run tasks that use progress dialogs on separate threads
2020-04-03 12:53:38 +02:00
Pokechu22
e11a2bda56
Delete properties dialog on close
...
Fixes the game file being locked until Dolphin closes.
2020-04-02 16:14:37 -07:00
Stenzek
ff7180cac4
Analytics: Add quirk for mismatched xf/bp texgens/colors
2020-04-02 12:52:16 +10:00
Stenzek
a9c1dcf656
VertexManagerBase: Skip drawing objects with mismatched xf/bp stages
...
Hardware tests have shown that if the number of texgens/channels do not
match, you get garbage rendering. Presumably because the output
registers from the XF stage are fed into the incorrect input registers
for TEV/BP.
Currently, this causes Dolphin to crash/generate invalid shaders with an
assertion failure in the hardware backends. Instead, we log an error.
Perhaps in the future we should just spit out all texgens/colors anyway
from both stages, and let cross-stage optimization take care of DCE'ing
it away. But doing so would require changing the UIDs and invalidating
everyone's shader caches.
2020-04-02 12:51:41 +10:00
Silent
bb27da06ae
AudioPane: Do not enable DPL II quality slider with HLE audio on init
2020-04-01 22:40:45 +02:00
JosJuice
ef778723a2
DolphinQt: Fix the panic alert deadlock (a.k.a. "Question" issue)
2020-03-31 21:00:32 +02:00
Ryan Meredith
a3ff20a5f9
Android: Add Insert SD Card and update description
2020-03-31 14:58:00 -04:00
Sepalani
85cd59c585
HLE: Add more debug functions
2020-03-30 17:46:50 +04:00
Ryan Meredith
fdc9ea6ca0
Set Insert SD Card default value to true
2020-03-30 06:15:17 -04:00
Ryan Meredith
999e651ed5
Qt: Display default Paths
2020-03-30 06:06:38 -04:00
JosJuice
5988d20917
Merge pull request #8698 from howard0su/warning_capture
...
Cleanup warnings of -Wunused-lambda-capture
2020-03-26 10:37:33 +01:00
Jun Su
81f8099cc6
Remove warnings of -Wsign-compare
...
Cast the variable to the coresponding type.
2020-03-25 07:57:14 +08:00
JosJuice
5d6f23e424
SettingsHandler: Don't output null bytes
...
https://bugs.dolphin-emu.org/issues/12019 , take two.
2020-03-24 17:01:15 +01:00
Connor McLaughlin
651595c521
Merge pull request #8701 from howard0su/static_wiimote
...
Wiimote: Cleanup warnings of -Wmissing-variable-declarations
2020-03-24 23:14:46 +10:00
Jun Su
7885fdb1ae
Remove warning of -Wstringop-truncation
...
Fix the right length when strncpy. And use specific version of copy
to copy GameID.
2020-03-24 20:26:20 +08:00
Jun Su
b6ff15c130
Cleanup warnings of -Wmissing-declarations
...
Add static to the functions which is not intentionally
export to big scope.
2020-03-24 20:16:10 +08:00
Jun Su
da223a2271
Cleanup warnings of -Wunused-lambda-capture
...
Remove unused lambda captures.
2020-03-24 20:14:10 +08:00
Jun Su
9dec1e9998
use s_ prefix for local variables
2020-03-24 20:13:20 +08:00
Léo Lam
5b10f4b71e
Merge pull request #8673 from JosJuice/preserve-setting-txt
...
Boot: Do a better job of preserving certain parts of settings.txt
2020-03-24 10:16:17 +01:00
Léo Lam
b3ad3c3b07
Merge pull request #8683 from AlexApps99/cmdl
...
Parse arguments before Qt
2020-03-24 10:02:24 +01:00
Connor McLaughlin
323bffed01
Merge pull request #8700 from howard0su/add_override
...
NoGUI: missing override in PlatformX11
2020-03-24 18:34:48 +10:00
Jun Su
3f72bc3e7e
HW: cleanup warnings of -Wtype-limits
...
ROM_BASE is 0, and address is unsigned. It is always
true that address >= 0. So just compare with ROM_SIZE
and don't use IN_RANGE macro to avoid the warning.
2020-03-24 09:11:24 +08:00
JosJuice
76b97a4183
Merge pull request #8680 from Leseratte10/master
...
SettingsHandler: Always decode the whole settings.txt file
2020-03-24 00:21:29 +01:00
JosJuice
aee9c7390d
Merge pull request #8699 from howard0su/cleanup_move
...
Cleanup warnings of -Wpessimizing-move
2020-03-23 19:58:13 +01:00
JosJuice
a6d1fe59a3
Merge pull request #8693 from howard0su/warning_xinpu
...
InputCommon: cleanup warnings of -Wclass-memaccess
2020-03-23 19:18:08 +01:00
JosJuice
6fab09951b
Merge pull request #8692 from howard0su/warning_unused
...
Cleanup warnings of -Wunused-[const]-variable
2020-03-23 19:10:52 +01:00
JosJuice
623a50786d
Merge pull request #8702 from sl1pkn07/Qt5.15
...
Fix build with Qt 5.15+
2020-03-23 18:35:09 +01:00
sL1pKn07
4f7ea79ae4
Fix build with Qt 5.15+
2020-03-23 17:58:39 +01:00
Jun Su
0bd6016ad0
Wiimote: Cleanup warnings of -Wmissing-variable-declarations
...
While I am here, make g_wiimote_scanner as static as well.
2020-03-23 16:43:21 +08:00
Jun Su
fb7fbb4a7b
NoGUI: missing override keyword GetWindowSystemInfo
2020-03-23 16:35:45 +08:00
Jun Su
964a2e1e70
Cleanup warnings of -Wpessimizing-move
...
moving a temporary object prevents copy elision. Remove std::move.
2020-03-23 16:31:15 +08:00
Jun Su
500820b352
Cleanup warnings of -Wunused-const-variable
2020-03-23 16:28:25 +08:00
Jun Su
997cfa49fc
InputCommon: cleanup warnings of -Wclass-memaccess
...
Initialize m_state with the default constructor.
2020-03-23 14:26:36 +08:00
Jun Su
7c7a41ecd8
Cleanup warnings of -Wunused-variable
...
remove unused variables.
2020-03-23 14:24:27 +08:00
Jun Su
d44c51b30c
DiscIO: cleanup warnings of -Wmaybe-uninitialized
...
replace {} with std::nullopt.
2020-03-23 14:14:00 +08:00
AlexApps99
d6fb0b44d7
Parse arguments before Qt
2020-03-22 17:49:32 +13:00
Sepalani
9ec5391bfb
Improve "Generate Symbols From > RSO Modules"
...
Add auto-detection option
2020-03-21 12:03:12 +04:00
Admiral H. Curtiss
303b18ddaf
Qt/CodeWidget: Typo in settings key.
2020-03-20 20:51:26 +01:00
Florian Bach
cba4acc54b
SettingsHandler: Always decode the whole settings.txt file
2020-03-20 16:08:25 +01:00
Mat M
9ac28054df
Merge pull request #8678 from JosJuice/setting-txt-code-default
...
Boot: Change pre-defined setting.txt CODE values
2020-03-20 02:06:07 -04:00
Silent
4a438db2c9
Qt/GameListModel: Use native separators in File Path column
2020-03-19 18:03:35 +01:00
JosJuice
21d6c0a11a
Boot: Change pre-defined setting.txt CODE values
...
As suggested by
https://github.com/dolphin-emu/dolphin/pull/8673#discussion_r394945753
2020-03-19 13:05:44 +01:00
Léo Lam
53c34d962d
Merge pull request #8665 from AdmiralCurtiss/debugger_columns
...
Qt/CodeViewWidget: Make columns resizable by the user and set sensible defaults.
2020-03-19 01:40:30 +01:00
Admiral H. Curtiss
e8dfb8f78d
Qt/CodeViewWidget: Make columns resizable by the user and set sensible defaults.
2020-03-18 22:27:53 +01:00
Léo Lam
4711b76cc4
Merge pull request #8655 from Techjar/fix-hotkey-groups
...
Core/HotkeyManager: Fix group names in config
2020-03-18 12:03:07 +01:00
Léo Lam
bb430fb5a5
Merge pull request #8675 from Pokechu22/disc-update
...
Fix Load Wii System Menu not updating after performing a disc update
2020-03-18 11:54:07 +01:00
Léo Lam
d1e8e3e903
Merge pull request #8671 from leoetlino/bt-passthrough-error
...
BTReal: Improve error handling for device opening
2020-03-18 11:52:22 +01:00
Pokechu22
c59120f089
Fix Load Wii System Menu not updating after performing a disc update
...
For a fresh install, the button was completely disabled even after the disc update; otherwise, the text on it was just out of date.
2020-03-17 19:59:48 -07:00
Jordan Woyak
099e6bfab9
DolphinQt: Fix gyro mapping indicator's "jitter" drawing.
2020-03-17 19:19:58 -05:00
Techjar
ae0c91805c
Core/HotkeyManager: Fix group names in config
...
For some reason every button group was shoved into the same config
group called "Keys" which caused buggy behavior once someone tried to
have hotkeys with the same name in different groups. This fixes that,
and converts existing configs to the new group names so they don't get
reset.
2020-03-17 05:42:26 -04:00
JosJuice
1b844067aa
Back up Wii setting.txt and SYSCONF while emulating
...
When booting a Wii game, Dolphin can overwrite certain settings
in the SYSCONF file, such as turning off PAL60 for NTSC games.
Normally, these settings get reverted at the end of emulation, but
this does not happen if Dolphin crashes or force quits in some other
way. (Personally, I have a tendency to use Visual Studio's Stop
Debugging button, which kills the process...)
Dolphin also overwrites certain values in setting.txt when booting
a Wii game. Unlike with SYSCONF, we currently make no effort to
preserve the original values in this file.
This change fixes both of these problems by copying SYSCONF and
setting.txt to the Backup folder when booting a Wii game, and then
copying them back either when launching Dolphin (in case the
previous run of Dolphin crashed) or when ending emulation.
2020-03-16 21:04:19 +01:00
JosJuice
5f6598f9e9
StringUtil: Add PathToFileName function
2020-03-16 21:03:34 +01:00
Sepalani
e06bdaf426
AddressSpace: Fix constness
2020-03-16 23:48:03 +04:00
JosJuice
3614e9fcc2
Boot: Preserve MODEL value in setting.txt
...
It doesn't necessarily start with RVL-001.
2020-03-16 20:38:07 +01:00
JosJuice
36c92294df
Boot: Preserve CODE value in setting.txt if it already matches the region
...
This is a part of fixing https://bugs.dolphin-emu.org/issues/11930 .
2020-03-16 20:34:40 +01:00
Léo Lam
c86832849a
Merge pull request #8535 from JosJuice/movie-save-detection
...
Movie: Make checking for existing GC saves more reliable
2020-03-16 00:19:14 +01:00
JosJuice
cb0fe3fc30
Movie: Make checking for existing GC saves more reliable
...
The old code only handled a raw memory card in slot A, not taking
GCI folders into account at all.
2020-03-15 23:56:34 +01:00
Léo Lam
57274cbf91
Merge pull request #8565 from Pokechu22/log-scroll-bar
...
Always display the horizontal scroll bar when log word wrap is off
2020-03-15 23:14:23 +01:00
Léo Lam
a66ee4ea42
Merge pull request #8597 from SirMangler/master
...
Hotkeys: Toggle Freelook Hotkey
2020-03-15 22:40:51 +01:00
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
JosJuice
da59f97278
Merge pull request #8549 from leoetlino/clang-format-9
...
Require clang-format 9 and reformat source code
2020-01-13 23:30:26 +01:00
Jordan Woyak
f0534cabc6
ControllerInterface: Exposse DSU client battery level as an input.
2020-01-13 16:29:24 -06:00
JMC47
48fd27cdab
Merge pull request #8451 from rlnilsen/motion-input-nunchuk
...
Add motion input support to nunchuk
2020-01-13 17:08:03 -05:00
JosJuice
966e1b31ba
Merge pull request #8394 from Pokechu22/misc-di-gpio
...
Various DI improvements
2020-01-13 17:17:24 +01:00
Connor McLaughlin
ae6d3be449
Merge pull request #8530 from s-daveb/master
...
MacOS: Fixes configuration hang; bump MacOS SDK.
2020-01-13 20:21:08 +10:00
Sintendo
bdcdd763fe
x64Emitter: Remove unused macros
...
No users, and one them seems to do the same as stddef.h's offsetof()
already used elsewhere.
2020-01-13 08:43:42 +01:00
Sintendo
f82c38e156
X64Emitter: Remove obsolete TODO
...
TODO was already taken care of in PR #941 .
2020-01-13 08:43:42 +01:00
Sintendo
bdfc472751
x64Emitter: Refactor OpArg::WriteRest
...
Shorter, displacement is now handled in one location.
2020-01-13 08:43:42 +01:00
Sintendo
cde3a3b448
x64Emitter: Avoid 8-bit displacement when possible
...
Due to the way the ModRM encoding works on x86, memory addressing
combinations involving RBP or R13 need an additional byte for an 8-bit
displacement of zero.
However, this was also applied in cases where it is unnecessary,
effectively wasting a byte.
- MatR with RSP or R12
8B 44 24 00 mov eax,dword ptr [rsp]
8B 04 24 mov eax,dword ptr [rsp]
- MRegSum with base != RBP or R13
46 8D 7C 37 00 lea r15d,[rdi+r14]
46 8D 3C 37 lea r15d,[rdi+r14]
- MComplex without offset
8B 4C CA 00 mov ecx,dword ptr [rdx+rcx*8]
8B 0C CA mov ecx,dword ptr [rdx+rcx*8]
2020-01-13 08:43:42 +01:00
Jordan Woyak
d9bd714143
WiimoteEmu: Nunchuk and Classic Controller calibration accuracy improvements.
2020-01-12 09:48:37 -06:00
Stenzek
d8b2be9d06
DolphinQt: Support compiling on ARM64
2020-01-12 15:23:42 +10:00
Jordan Woyak
0aacf3a627
WiimoteEmu: Make the "Total Yaw" setting work again.
2020-01-09 13:11:13 -06:00
Léo Lam
4cc2d97294
Require clang-format 9 and reformat source code
...
This updates the lint script to require clang-format 9 and reformats
existing source code. Since VS2019 ships with clang-format 9 this
should make auto reformats less painful.
This also updates the clang-format configuration to set
BraceWrapping.AfterCaseLabel to true to ensure consistent brace
style; otherwise clang-format 9+ defaults to putting braces on
the same line as switch case labels.
2020-01-08 22:18:15 +01:00
Scott Mansell
a8c33f4ef6
Fix trailing whitespace
2020-01-07 12:52:05 +13:00
Scott Mansell
21528c3e72
Document the evdev "interesting" heuristic
...
Was checking over this old code, and saw a comment calling me out for a lack of documentation.
It might be half a decade late, but better late then never.
2020-01-07 12:46:24 +13:00
Tilka
98f645daac
Merge pull request #8158 from Sintendo/jitopts
...
x64 micro-optimizations
2020-01-06 14:09:43 +01:00
Tilka
f17f03ea3c
Merge pull request #8551 from Sintendo/jit64addx
...
Jit64: addx optimizations
2020-01-06 13:15:17 +01:00