JMC47
7b994d9654
Merge pull request #14019 from JosJuice/android-ndk-29
...
Android: Update NDK version to 29.0.14206865
2025-10-17 18:47:20 -04:00
JMC47
0755218617
Merge pull request #14012 from jordan-woyak/wmreal-name-check
...
WiimoteReal: Check just the start of Bluetooth device names to match the test performed by Wii software.
2025-10-17 18:46:42 -04:00
JMC47
2e490cefa0
Merge pull request #13978 from JoshuaVandaele/libiconv-1.18
...
Externals: Update libiconv to 1.18
2025-10-17 18:45:48 -04:00
TryTwo
2bc944e1a3
Settings BalloonTip: Wrapped tips were not using the maximum width, resulting in a much smaller width than they should have.
2025-10-16 15:58:32 -07:00
JMC47
e8d9c124e5
Merge pull request #13953 from TryTwo/add_osd_tab
...
Qt Settings: Transfer OSD settings to a new OSD pane.
2025-10-15 16:35:26 -04:00
JosJuice
f05f89e6b4
Android: Update NDK version to 29.0.14206865
2025-10-15 19:57:53 +02:00
Jordan Woyak
a49514eb7b
HLE_VarArgs: Replace enable_if with concepts.
2025-10-13 23:42:31 -05:00
Jordan Woyak
c2b5a1a35c
WiimoteReal: Check just the start of Bluetooth device names to match the test performed by Wii software.
2025-10-13 21:13:37 -05:00
Dentomologist
5b4df5ae98
VideoBackend: Rename GetName to GetConfigName
...
Make the function name more explicit and a better match for
GetDisplayName.
Change NAME to CONFIG_NAME while I'm at it.
2025-10-13 17:38:20 -07:00
Jordan Woyak
94be0e466e
WiimoteReal/IOLinux: Reopen Bluetooth device if it was unplugged between scans.
2025-10-13 18:39:47 -05:00
Dentomologist
4e359cf1c5
WindowsDevice: Silence missing property log spam
...
Don't log a warning in GetPropertyHelper when the property isn't
present. The function returns an optional, so any callers that want to
log a warning when nullopt is returned can do so themselves.
This prevents plugged-in devices (an Xbox One controller in my case)
from spamming the message "W[COMMON]: CM_Get_DevNode_Property returned:
37" twice per second (that value being CR_NO_SUCH_VALUE).
2025-10-13 11:55:12 -07:00
JosJuice
1067754d21
Merge pull request #13983 from jordan-woyak/wmreal-android-fix
...
WiimoteReal: Use GetEnvForThread within IORead/IOWrite calls to fix real Wii remotes on Android.
2025-10-13 19:52:05 +02:00
JMC47
8edef722ce
Merge pull request #14008 from jordan-woyak/qt6.10-buildfix
...
CMakeLists: Fix build with Qt6.10.
2025-10-13 13:51:19 -04:00
Jordan Woyak
b3bdad416c
CMakeLists: Fix build with Qt6.10. GuiPrivate component is needed to #include qplatformnativeinterface.h in MainWindow.cpp.
2025-10-12 23:53:05 -05:00
Jordan Woyak
801f38d4e5
DolphinQt: Add buttons to create and reset Wii remote pairings on Windows.
2025-10-12 12:37:04 -05:00
Jordan Woyak
8845fbdb7e
WiimoteReal: Detect already connected Wii remotes on Windows without having to use the Refresh button.
2025-10-12 12:37:04 -05:00
Jordan Woyak
e0c40025a9
WiimoteReal/IOWin: Major cleanups and improvements.
2025-10-12 12:37:04 -05:00
Jordan Woyak
3978e1eb2c
WindowsDevice: Add some utility functions for getting device properties using CfgMgr32.
2025-10-12 12:33:13 -05:00
Jordan Woyak
e8d22923c6
WiimoteReal: Send periodic writes to test for disconnect.
2025-10-12 12:33:13 -05:00
Jordan Woyak
94ecf4df39
WiimoteReal: Add function to test specifically for a wii remote name.
2025-10-12 12:33:13 -05:00
TryTwo
fcb3d2fb05
Qt Setting Panes: Remove original location of options transferred to the OSD pane.
2025-10-10 17:02:00 -07:00
TryTwo
3b11280c20
Movie Window: Move customization options from Menu Bar to OSD pane, but add options to toggle the window and to open the OSD pane.
...
Add new setting to show/hide the Movie Window.
2025-10-10 16:59:16 -07:00
TryTwo
13ac387197
Qt: Add OnScreenDisplayPane to settings window. Transfer OSD options to pane.
2025-10-10 02:47:27 -07:00
JMC47
d8bcd6d82e
Merge pull request #13996 from SuperSamus/jit64-dynamic-known-jmp-len
...
Jit64: Dynamic length of regular jump instruction (for known addresses)
2025-10-09 14:07:13 -04:00
JMC47
f43b78efb6
Merge pull request #13989 from jordan-woyak/wmreal-hidapi-cleanup
...
WiimoteReal/IOhidapi: Minor changes / cleanups.
2025-10-09 14:06:57 -04:00
JMC47
39944a61d1
Merge pull request #13979 from mbc07/RealtekFirmwareLoader_newIDs
...
RealtekFirmwareLoader: more RTL8761B device IDs
2025-10-09 14:06:17 -04:00
JMC47
4f7a910e92
Merge pull request #13964 from ryanmcgrath/macos/qos
...
macoS: update QoSSession with SO_NET_SERVICE_TYPE.
2025-10-09 14:05:42 -04:00
JMC47
efa9245565
Merge pull request #13963 from jordan-woyak/point-passthru-needs-bound-inputs
...
WiimoteEmu: Require IRPassthrough has any bound inputs to operate.
2025-10-09 14:05:16 -04:00
JMC47
1aae1ecbaa
Merge pull request #13712 from SuperSamus/cheat-search-improvements
...
CheatSearchWidget: New feature, writing a value to all selected addresses
2025-10-09 13:58:00 -04:00
Martino Fontana
f8d30e796c
CheatSearchWidget: New feature, writing a value to all selected addresses
2025-10-08 11:33:44 +02:00
Martino Fontana
c002861041
CheatSearchWidget: "Add to watch" to all selected items
...
Instead of just the right-clicked item.
2025-10-08 11:27:06 +02:00
Martino Fontana
8a97ce9124
MMU: Use templates for Read/Write functions
2025-10-08 11:27:06 +02:00
fizzlepicklepop
3cb8f234a7
fixed the lint error
2025-10-07 23:57:53 -04:00
fizzlepicklepop
7ed61c50a1
Add toggles for Speedrun timer + Achievement badges visibility
...
Added some new visibility toggles so players can choose what to show (or hide) during their RetroAchievements runs:
Toggle for the Speedrun Leaderboards timer
Toggle for Achievement Challenge badges
2025-10-07 22:45:04 -04:00
Martino Fontana
f6e5448b43
Jit64: Dynamic length of regular jump instruction (for known addresses)
...
Conditional jumps already do that, so let's be consistent.
2025-10-08 00:15:57 +02:00
JosJuice
03ef9b4995
Merge pull request #13995 from Dentomologist/deletedirrecursively_dont_report_error_if_directory_is_absent
...
DeleteDirRecursively: Don't report error for absent directory
2025-10-06 20:04:32 +02:00
Dentomologist
f64e57442c
DeleteDirRecursively: Don't report error for absent directory
...
Check if the return value of std::filesystem::remove_all is -1 rather
than 0; the former is the specified return value if there's an error
while 0 just means the directory already didn't exist (which is the end
result we want).
Previously error messages such as the following were possible:
E[COMMON]: DeleteDirRecursively: [path]/User/RedirectSession/ failed The
operation completed successfully.
Also adds a period in the error string to make it look nicer.
2025-10-05 16:29:41 -07:00
Jordan Woyak
b3b4020095
Merge pull request #13994 from Dentomologist/visual_studio_fix_dolphinnogui_build
...
Visual Studio: Fix DolphinNoGUI build
2025-10-05 17:53:37 -05:00
Dentomologist
ff45bfbcdc
Visual Studio: Fix DolphinNoGUI build
2025-10-05 15:38:43 -07:00
Admiral H. Curtiss
70bd0943a7
Merge pull request #13871 from Dentomologist/cheatsearchwidget_small_refactoring
...
CheatSearchWidget: Minor refactoring
2025-10-05 00:32:30 +02:00
Admiral H. Curtiss
e1fd8c8e8c
Merge pull request #13957 from jordan-woyak/wmreal-iolinux-fixes
...
WiimoteReal/IOLinux: Improvements, fixes, and code cleanups.
2025-10-05 00:06:08 +02:00
Dentomologist
3235f3f58f
CheatSearchWidget: Rename member variable
...
Rename m_session to m_last_value_session to better reflect its meaning
and distinguish it from m_current_value_session which will be introduced
in another commit.
2025-10-04 14:27:15 -07:00
Dentomologist
d364a244d7
CheatSearchWidget: Add GetTableRowCount function
2025-10-04 14:27:14 -07:00
Jordan Woyak
38dc8ae3b6
WiimoteReal/IOLinux: Improvements, fixes, and code cleanups.
2025-10-04 14:51:27 -05:00
Jordan Woyak
b2fef6ee1f
Common/Network: Add BluetoothAddress struct and string conversion functions.
2025-10-04 14:51:17 -05:00
Jordan Woyak
b1e8de82a6
Common: Add some utilities to a new UnixUtil header.
2025-10-04 14:51:17 -05:00
Jordan Woyak
504ea99cfa
CommonFuncs: Add StrerrorString version of LastStrerrorString that accepts an error number.
2025-10-04 14:51:17 -05:00
Jordan Woyak
eec7f65e33
WiimoteReal/IOLinux: Increase inquiry length to 3.84 seconds. This is what Wii games use and it seems to work better.
2025-10-04 14:50:58 -05:00
Jordan Woyak
4d53de5d84
WiimoteReal/IOhidapi: Log the currently attached hid driver on Linux.
2025-10-04 14:43:28 -05:00
Jordan Woyak
572459bc25
WiimoteEmu: Require IRPassthrough has any bound inputs to operate. Users get confused and mistakenly enable it.
2025-10-04 14:34:49 -05:00
Admiral H. Curtiss
c9c57f8ba4
Merge pull request #13752 from jordan-woyak/xlib-duplicate-key-names
...
ControllerInterface/Xlib: Combine keycodes with the same name to fix non-working inputs.
2025-10-04 17:18:16 +02:00
Admiral H. Curtiss
14ce952519
Merge pull request #13946 from JosJuice/i18n-2025-09-17
...
i18n: Add comments
2025-10-04 16:24:14 +02:00
Jordan Woyak
7609220e61
WiimoteReal/IOhidapi: Minor warning fixes and cleanups.
2025-10-03 18:10:11 -05:00
Jordan Woyak
4a39ca249c
WiimoteReal/IOhidapi: Move VID/PID check to a helper function that other backends can use in the future.
2025-10-03 04:45:19 -05:00
Jordan Woyak
6c91e30a0d
WiimoteReal/IOhidapi: Remove accidentally included HID Profile byte from write test.
2025-10-03 04:36:16 -05:00
JMC47
70f9ae2432
Merge pull request #13907 from TryTwo/PR_Cheat_Refresh
...
Cheats: Refresh active code after editing it.
2025-10-02 17:48:00 -04:00
Jordan Woyak
dbb5a8eb0e
Merge pull request #13926 from Dentomologist/settings_open_file_dialog_at_user_path
...
Settings: Open file dialogs at user path instead of custom path
2025-10-02 15:13:31 -05:00
JosJuice
d669f8c3c8
Merge pull request #13986 from SuperSamus/dcbz-avx-fix
...
dcbz: Fix AVX path
2025-10-02 19:18:59 +02:00
Jordan Woyak
cd84d58a1a
Merge pull request #13982 from jordan-woyak/sdl-disable-dinput
...
SDL: Disable DirectInput handling to work around hangs on shutdown.
2025-10-02 03:21:33 -05:00
Martino Fontana
4f737b7aaf
dcbz: Fix AVX path
2025-10-01 21:09:18 +02:00
Dentomologist
d311724750
Jit64: Fix dcbz regression
...
Fix a regression from d1ba84987 that caused freezes and/or
graphical/audio glitches in various games.
2025-09-30 22:15:36 -07:00
Jordan Woyak
ecb6dbbfd3
WiimoteReal: Use GetEnvForThread within IORead/IOWrite calls to fix real Wii remotes on Android.
2025-09-30 18:03:05 -05:00
JosJuice
0c89c00d8b
Merge pull request #13929 from SuperSamus/dcbz-jit-improvements
...
Jit: Small `dcbz` improvements
2025-09-30 18:52:09 +02:00
Jordan Woyak
c11132d2a6
SDL: Disable DirectInput handling to work around hangs with the "8BitDo Ultimate 2" controller.
2025-09-30 03:13:52 -05:00
Jordan Woyak
956f6cfbd2
SDL: Name the hotplug thread.
2025-09-30 03:04:58 -05:00
Joshua Vandaële
a8b40a218c
Externals: Update libiconv to 1.18
...
I also excluded libiconv from the Windows CMake builds since it's never used there
2025-09-29 21:52:58 +02:00
Mateus B. Cassiano
9bf6906432
RealtekFirmwareLoader: more RTL8761B device IDs
2025-09-28 22:04:06 -04:00
JMC47
7cf6e7258c
Merge pull request #13974 from JoshuaVandaele/system-glslang
...
Externals: Update glslang to 16.0.0 and allow using system glslang
2025-09-28 18:21:54 -04:00
JMC47
e5fbc74156
Merge pull request #13082 from Dentomologist/generalpane_hardcore_mode_tooltip_clarifications
...
GeneralPane: Add Hardcore Mode tooltip clarifications
2025-09-28 14:10:06 -04:00
JMC47
e1c7734ee4
Merge pull request #13260 from JosJuice/android-gcadapter-hotplug-callback
...
Android: Detect GCAdapter hotplug using BroadcastReceiver
2025-09-28 14:03:50 -04:00
JMC47
cbdb7ac38e
Merge pull request #12329 from Dentomologist/balloontip_fix_premature_close_on_balloontip_hover
...
BalloonTip: Don't hide when the BalloonTip blocks the cursor
2025-09-28 14:03:16 -04:00
JMC47
79a98b8235
Merge pull request #13161 from oltolm/fix_qt6_warnings
...
dolphinQt: fix Qt6 deprecation warnings
2025-09-28 14:02:56 -04:00
JMC47
a93754cb71
Merge pull request #13245 from JosJuice/mbp-condition-flush
...
Jit: Flush registers used in memory breakpoint conditions
2025-09-28 14:02:29 -04:00
JMC47
72397ccd87
Merge pull request #13909 from Dentomologist/codewidgets_show_code_approval_in_hardcore_mode
...
CodeWidgets: Show code approval in Hardcore mode
2025-09-28 14:01:59 -04:00
Joshua Vandaële
cdfb389509
Externals: Update glslang to 16.0.0 and allow using system glslang
2025-09-27 08:56:10 +02:00
JMC47
3b4fd0bc4f
Merge pull request #13961 from Sam-Belliveau/sdl-gamepad-profile
...
Add SDL Gamepad Profile
2025-09-26 17:27:58 -04:00
JMC47
a7d61dd2a5
Merge pull request #13969 from mspeder/ugreen
...
RealtekFirmwareLoader: Alternate USB PID for Ugreen CM390
2025-09-26 17:18:42 -04:00
JMC47
593d386496
Merge pull request #13968 from dwilliams27/remove-logs-mail
...
Logging: Remove unused Logs/Mail/ dir
2025-09-26 17:16:54 -04:00
JMC47
8f9c335633
Merge pull request #13954 from TryTwo/debug_crash_fix
...
Crash fix: Add debug check to JIT Profiling bool.
2025-09-26 17:15:02 -04:00
JMC47
a175985871
Merge pull request #13951 from TellowKrinkle/InterpreterOpt
...
Cached Interpreter: Speculative devirtualization
2025-09-26 17:14:24 -04:00
JMC47
ff9e0eb2c3
Merge pull request #13945 from iwubcode/math_transpose_function
...
Common: add transpose function to Matrix class
2025-09-26 17:14:09 -04:00
JMC47
f96837a321
Merge pull request #13940 from iwubcode/glslang_update
...
Externals / VideoCommon: update glslang to latest, turn into submodule
2025-09-26 17:13:54 -04:00
JMC47
70d5c85acd
Merge pull request #13897 from TryTwo/Imgui_Font_Size
...
Qt/Imgui: Add SpinBox to adjust imgui font size.
2025-09-26 17:13:40 -04:00
JMC47
d33c6346f0
Merge pull request #13884 from jordan-woyak/wiimote-report-timing
...
WiimoteReal: Send reports with proper timing for theoretically better speaker data.
2025-09-26 16:16:21 -04:00
JMC47
fa74c40e78
Merge pull request #13882 from jordan-woyak/sdl-win32-msg
...
SDL: Remove old Windows joystick bug workarounds.
2025-09-26 16:13:49 -04:00
JMC47
a8fe5c0303
Merge pull request #13634 from jordan-woyak/enum-concepts
...
Common: Replace enable_if with concepts and other minor modernizations.
2025-09-26 16:13:20 -04:00
TryTwo
f8a8ddeddf
OSD / Imgui: Add font size spinbox to Interface Pane.
...
Adjust some imgui windows to work better with different font sizes.
2025-09-25 16:34:04 -07:00
Matthieu Speder
9d0b3e0e39
RealtekFirmwareLoader: Alternate USB PID for Ugreen CM390
2025-09-25 12:04:54 +02:00
Sam Belliveau
52071f3943
Prevent profiles with no device specification from resetting device
2025-09-24 21:38:02 -04:00
Farmerbilly27
8cbfee2136
chore: remove unused Logs/Mail/ dir
2025-09-24 17:42:59 -05:00
iwubcode
491e3390be
Externals / VideoCommon: update glslang to latest, turn into submodule
2025-09-23 23:45:38 -05:00
Ryan McGrath
5a6730ab4e
macoS: update QoSSession with SO_NET_SERVICE_TYPE.
...
macOS does not support `SO_PRIORITY` on sockets, but it does apparently
support configuring sockets with a priority flag via a parameter called
`SO_NET_SERVICE_TYPE`. It doesn't appear to be especially well
documented, but it seems to exist as far back as 10.11 (El Capitan).
This patch sets QoSSession to treat connections as
"responsive multimedia audio/video", which some docs appear to describe
as "low delay tolerant, low-medium, loss tolerant, elastic flow,
variable packet interval, rate and size".
2025-09-22 17:30:18 -04:00
Jordan Woyak
ed93e9481a
WiimoteReal: Send reports with proper timing for theoretically better speaker data.
2025-09-19 22:11:48 -05:00
Jordan Woyak
1e415c8646
Main: Add SA_RESTART to signal handler sigaction sa_flags.
2025-09-19 19:09:54 -05:00
Dentomologist
2d48043b61
Logging: Don't overwrite LDEBUG verbosity in Release builds
...
Preserve the configured logging verbosity unless the user actually
changes it, rather than capping it to LINFO on release builds.
Rename LogManager::m_level to m_effective_level and distinguish between
the config and effective level in various function/variable names.
Make m_effective_level atomic to prevent data races when setting the
effective log level from the config changed callback.
2025-09-19 13:25:42 -07:00
TellowKrinkle
0cde7ae79b
Cached Interpreter: Speculative devirtualization
2025-09-18 21:07:09 -05:00
TryTwo
31ba2af9cb
Crash fix: Add check to see if debugging is enabled in Jit's IsProfilingEnabled().
...
Enable JIT Block Profiling = On, with Enable Debugging UI = Off, will crash dolphin when starting a game.
2025-09-18 17:46:02 -07:00
JosJuice
e38fd1d26a
i18n: Add comments
2025-09-17 19:50:31 +02:00
JosJuice
8c03702b9c
i18n: Improve EditSymbolDialog's symbol vs note handling for translators
2025-09-17 19:50:08 +02:00
iwubcode
9a37c8081d
Common: add transpose function to Matrix class
2025-09-17 11:14:09 -05:00
JMC47
fce5f7c74e
Merge pull request #13874 from sepalani/bitcast-ptr
...
Common/BitUtils: Add operator[] to BitCastPtrType
2025-09-17 04:42:22 -04:00
JMC47
1109dfb001
Merge pull request #13848 from JoshuaVandaele/USBDevicePicker
...
USBDevicePicker: Modify USBDeviceAddToWhitelistDialog to be more generic, and use it for a new "More Options..." selection in Bluetooth Passthrough adapters
2025-09-16 15:26:41 -04:00
JMC47
d9404e0274
Merge pull request #13941 from jordan-woyak/opcode-concepts
...
VideoCommon/OpcodeDecoding: Replace enable_if with concepts.
2025-09-16 14:55:16 -04:00
JMC47
1e3952c801
Merge pull request #13935 from iwubcode/matrix_inverted
...
Core: support inverting a 4x4 matrix
2025-09-16 14:51:42 -04:00
JMC47
5248471527
Merge pull request #13934 from jordan-woyak/stacked-settings-style-cleanup
...
DolphinQt: Clean up some of the style sheet hacks in StackedSettingsWindow.
2025-09-16 14:51:30 -04:00
JMC47
67b455007c
Merge pull request #13917 from cristian64/center_dialogs
...
DolphinQt: Center dialogs on top-level parent window.
2025-09-16 14:50:46 -04:00
JMC47
a8a6cfebc7
Merge pull request #13895 from iwubcode/update_shader_asset
...
VideoCommon: update shader asset to support additional features in custom pipelines
2025-09-16 14:49:33 -04:00
JMC47
5a153c3d41
Merge pull request #13892 from JosJuice/retroachievements-hookableevent
...
AchievementManager: Use HookableEvent instead of std::function callbacks
2025-09-16 14:48:43 -04:00
JMC47
8b0498f5f2
Merge pull request #13889 from iwubcode/texture_and_sampler_asset
...
VideoCommon: add TextureAndSamplerAsset for use in custom materials
2025-09-16 14:48:24 -04:00
JMC47
9845aa1541
Merge pull request #13864 from Dentomologist/branchwatch_extract_shared_function_logic
...
BranchWatch: Extract shared function logic
2025-09-16 14:46:03 -04:00
JMC47
e980927bce
Merge pull request #13863 from Dentomologist/enhancements_tab_fix_selection_of_disabled_postprocessing_option
...
EnhancementsWidget: Fix selection of disabled postprocessing option
2025-09-16 14:45:40 -04:00
JosJuice
770c74cc95
Merge pull request #13852 from Sintendo/jitarm64-subfcx
...
JitArm64_Integer: subfcx optimizations
2025-09-16 20:16:42 +02:00
JosJuice
ae3be169e1
Merge pull request #13908 from Marocco2/patch-1
...
Android: Set Dolphin documents as Local only
2025-09-16 20:13:09 +02:00
JosJuice
36f49d140f
Merge pull request #13905 from JosJuice/arm64emitter-shift-4
...
Arm64Emitter: Replace shifting size by 4 with IntLog2 minus 3
2025-09-16 20:08:59 +02:00
Jordan Woyak
071dedd492
VideoCommon/OpcodeDecoding: Replace enable_if with concepts.
2025-09-13 19:05:33 -05:00
JMC47
695e06ca98
Merge pull request #13930 from Dentomologist/retroachievements_avoid_leaderboard_list_crash
...
RetroAchievements: Avoid crash due to uninitialized memory read
2025-09-13 03:36:56 -04:00
Jordan Woyak
ecb568c45a
DolphinQt: Clean up some of the style sheet hacks in StackedSettingsWindow.
2025-09-09 16:47:30 -05:00
TryTwo
38cef5a3fc
Fix broken imgui text in Metal backend.
2025-09-08 12:49:31 -07:00
cristian64
8a639bd13d
DolphinQt: Center dialogs on top-level parent window.
...
The `QtUtils::AdjustSizeWithinScreen()` function now centers the
widget on their parent window after the widget's size is adjusted. This
is required in some desktop environments (generally on Linux systems) to
ensure that the just-resized widget remains aligned with its parent
window.
The creation of the **Cheats Manager** dialog is now deferred to first
show, as creating it within the main window's constructor prevents the
dialog from knowing the real position of its parent window, which is
only properly calculated on first show.
For the same reasons, the analytics prompt is now shown only when the
application is ready (i.e. when the main window has been shown).
| Before | After |
| ------ | ----- |
| <img width="1920" height="1080" alt="[Dolphin Emulator] Misplaced analytics prompt" title="[Dolphin Emulator] Misplaced analytics prompt" src="https://github.com/user-attachments/assets/c3e43b3b-cf79-4398-b531-7de6068c583e " /> | <img width="1920" height="1080" alt="[Dolphin Emulator] Centered analytics prompt" title="[Dolphin Emulator] Centered analytics prompt" src="https://github.com/user-attachments/assets/a10d06d9-7438-4032-b96c-dfcb48826349 " /> |
| <img width="1920" height="1080" alt="[Dolphin Emulator] Misplaced Settings dialog" title="[Dolphin Emulator] Misplaced Settings dialog" src="https://github.com/user-attachments/assets/f35b10ee-4f07-48d4-86f9-2537ad5ca7ca " /> | <img width="1920" height="1080" alt="[Dolphin Emulator] Centered Settings dialog" title="[Dolphin Emulator] Centered Settings dialog" src="https://github.com/user-attachments/assets/33e37237-77a4-44f6-a0e2-b709f65b672b " /> |
| <img width="1920" height="1080" alt="[Dolphin Emulator] Misplaced Cheats Manager dialog" title="[Dolphin Emulator] Misplaced Cheats Manager dialog" src="https://github.com/user-attachments/assets/1fbd3836-5639-4d5a-b57e-e2e21f21c9db " /> | <img width="1920" height="1080" alt="[Dolphin Emulator] Centered Cheats Manager dialog" title="[Dolphin Emulator] Centered Cheats Manager dialog" src="https://github.com/user-attachments/assets/3f2b1b50-de16-49b7-bac4-c444c6cab0bc " /> |
2025-09-07 21:28:05 +01:00
iwubcode
d403bc3985
Core: support inverting a 4x4 matrix
2025-09-07 11:41:09 -05:00
Joshua Vandaële
83cbedd609
RealtekFirmwareLoader: Fix shadowed variable warning
2025-09-07 16:54:11 +02:00
Dentomologist
85a89eb420
RetroAchievements: Avoid uninitialized memory access
...
Avoid creating and then destroying a leaderboard list when game is null,
as doing so causes an access to uninitialized memory due to a bug in
rcheevos.
This can be triggered by starting a game with an invalid or expired
login token.
2025-09-05 17:23:39 -07:00
Martino Fontana
667c523755
Jit: Use dcbz() emitter for dcbz_l instead of interpreter fallback
...
Without cache emulation, these instructions are functionally identical.
In the interpreter, their only difference is related to HID registers checks, which the JIT already doesn't do for `dcbz`.
A loop with `dcbz_l` is used in the SDK function `LCEnable`, which is called frequently in some games.
2025-09-02 23:15:28 +02:00
Martino Fontana
d1ba849876
Jit64: dcbz, use VMOVAPS with YMM registers on AVX CPUs
...
LLVM does this, so let's do it as well.
2025-09-02 23:15:27 +02:00
Martino Fontana
5e69da7eba
x64Emitter: Support YMM registers
...
This is accomplished by adding a 0x100 bit the the register.
Made sure that, on AVX instructions, that bit is trucated.
2025-09-02 22:15:16 +02:00
Dentomologist
e44c99cb59
Settings: Open file dialogs at user path
...
When opening a file dialog to set the location of a custom path, use the
corresponding user path as the starting location instead of the current
custom path.
When no custom path was set the dialog would be opened with a blank path
which causes Windows (not sure about other platforms) to open the dialog
at the same location where the last dialog was closed, or at the current
working directory if no previous dialog had been opened.
If a nonempty custom path has been set then it has also set the
corresponding user path, so the behavior in that case is unchanged.
2025-09-01 14:51:29 -07:00
Admiral H. Curtiss
c7ff0bf475
DolphinQt/Styles/Dark: Adjust progress bar
2025-08-31 22:02:00 +02:00
Admiral H. Curtiss
88ef583c0e
DolphinQt/Styles/Dark: Fix inconsistent formatting
2025-08-31 21:41:42 +02:00
Tilka
033a0540f7
Merge pull request #13899 from SuperSamus/patch-cheats-osd
...
PatchEngine: OSD message showing number of enabled patches and cheats
2025-08-31 00:27:23 +01:00
Martino Fontana
64a20c74fc
PatchEngine: OSD message showing number of enabled patches and cheats
2025-08-30 16:51:51 +02:00
Tilka
76c114a02b
Merge pull request #13910 from Tilka/ub
...
Fix some undefined behavior
2025-08-30 06:17:45 +01:00
Tillmann Karras
c248f1afa4
IOS/WD: fix wrong BitSet ctor being called
...
We don't want list initialization here.
Thank you, UB-san.
2025-08-30 03:05:35 +01:00
Tillmann Karras
63257d1ee9
CoreTiming: set default overclock factors to 1.0
...
I'm not aware of any issue here but let's set meaningful defaults
anyway.
2025-08-30 03:05:35 +01:00
Tillmann Karras
18f0bd1d4b
VI: set default overclock factor to 1.0
...
GetTicksPerHalfLine() gets called via Preset() before RefreshConfig()
has a chance to replace the dummy value 0.0.
Thank you, UB-san.
2025-08-30 03:03:21 +01:00
Tilka
2ff3a7215b
Merge pull request #13902 from Tilka/fix_color_clamp
...
VideoSW: fix clamping after vertex color interpolation
2025-08-30 03:02:42 +01:00
Tilka
b47a75fa2d
Merge pull request #13912 from jordan-woyak/simplify-saturating-cast
...
MathUtil: Simplify SaturatingCast implementation and fix edge case.
2025-08-30 03:00:15 +01:00
Tilka
25be1cfe97
Merge pull request #13911 from Dentomologist/gamelist_gridview_sorting
...
GameList: Use List View's sorting for Grid View
2025-08-30 02:56:18 +01:00
JMC47
e0c72cd963
Merge pull request #13825 from jordan-woyak/dont-count-playtime-while-suspended
...
Common/Timer: Add a SteadyAwakeClock class to make play time tracking ignore time while suspended.
2025-08-28 13:58:26 -04:00
Jordan Woyak
da546bebb8
MathUtil: Simplify SaturatingCast implementation with std::cmp_less/cmp_greater and fix a floating point edge case.
...
Thanks to Dentomologist for catching the edge case.
2025-08-27 21:24:46 -05:00
Dentomologist
489fd643d3
GameList: Use List View's sorting for Grid View
...
Since Grid View doesn't have a header for users to change sorting
options with, use List View's sorting in Grid View too.
2025-08-27 15:35:38 -07:00
Marocco2
008c292b4e
Android: Set Dolphin documents' root supports testing parent child relationships.
...
Adds `DocumentsContract.Root.FLAG_SUPPORTS_IS_CHILD` to the list of the flags in order to show up for third-party apps for easier file syncing with local/cloud file server providers
2025-08-26 15:40:32 +02:00
Dentomologist
44f6743a5b
CodeWidgets: Show code approval in Hardcore mode
...
When Hardcore mode is enabled, show an icon for each code in
ARCodeWidget and GeckoCodeWidget indicating whether it's an approved
code or not.
2025-08-25 12:31:38 -07:00
Marocco2
834f3634a8
Android: Set Dolphin documents as Local only
...
Adds `DocumentsContract.Root.FLAG_LOCAL_ONLY` to the list of the flags in order to show up for third-party apps for easier file syncing with local/cloud file server providers
2025-08-25 19:52:36 +02:00
JosJuice
de98c3b96f
AchievementManager: Use HookableEvent instead of std::function callbacks
...
The callback mechanism AchievementManager had until now only supported
one caller registering a callback, and it didn't have any
synchronization. This isn't a problem for DolphinQt, but the PR to add
Android support for RetroAchievements exposes these problems. Let's
replace it with HookableEvent, which can handle all of this.
2025-08-24 14:47:13 +02:00
TryTwo
ca056611ac
Cheats: Refresh active code after editing it.
2025-08-24 04:55:12 -07:00
JosJuice
9716148203
Arm64Emitter: Replace shifting size by 4 with IntLog2 minus 3
...
The instruction implementations that were shifting the size by 4 would
emit an incorrect instruction when given a size of 64. The correct
implementation is to count the number of leading or trailing zeroes in
the size parameter, which is what IntLog2 does.
No callers are affected by this, as they all use sizes other than 64.
Actually, some of these instructions are even invalid with a size of 64,
but I'm changing them anyway for consistency with the others.
2025-08-24 10:48:21 +02:00
Tillmann Karras
bc417bdcee
VideoSW: fix clamping after vertex color interpolation
2025-08-24 02:47:56 +01:00
iwubcode
440999d778
VideoCommon: update material asset to support render state properties, support multi-pass, and textures are now split out (as well as supporting a way to calculate sampler origin)
2025-08-23 15:17:49 -05:00
iwubcode
14459bcc1b
VideoBackends / VideoCommon: rename member variables in RenderState to be consistent
2025-08-23 13:50:22 -05:00
Tilka
ab8a02566d
Merge pull request #13893 from TryTwo/PR_Slider_Fixes
...
Qt: Prevent QSlider's QLabels from resizing.
2025-08-23 12:44:17 +01:00
Martino Fontana
8026289775
ActionReplay: Fixup #13764
2025-08-23 12:04:04 +02:00
Tillmann Karras
10d0bc66b3
VideoCommon: fix -Wmismatched-tags warning
2025-08-23 03:05:04 +01:00
JMC47
b9affd5bc8
Merge pull request #13869 from TryTwo/ImGui_Updates
...
Externals: Update ImGui to 1.92.2 and ImPlot. Update code to use new features.
2025-08-22 21:24:27 -04:00
iwubcode
f0098eee13
VideoCommon: further remove 'CustomPipeline' details, so we can fully remove it in the very near future
2025-08-22 19:53:17 -05:00
iwubcode
6ec8e0ed8a
VideoCommon: update shader asset to support both vertex and pixel shaders; rename to 'RasterSurfaceShader'
2025-08-22 19:48:22 -05:00
JMC47
8bfe9ec595
Merge pull request #13886 from Tilka/drag_lag
...
FIFOAnalyzer: fix command description updates
2025-08-22 20:27:15 -04:00
JMC47
95781c9ac9
Merge pull request #13764 from SuperSamus/patch-invalidate-cache
...
ActionReplay/PatchEngine: Make writes invalidate cache
2025-08-22 19:16:47 -04:00
TryTwo
d69056aab4
Qt: Prevent Sliders from resizing due to text changing in their label.
2025-08-22 14:46:33 -07:00
Tillmann Karras
30017632dd
FIFOAnalyzer: fix command description updates
...
When dragging the selection, the mismatch between signal
(itemSelectionChanged) and data consumed (currentRow) seemed to cause
the description to lag behind by one row.
2025-08-22 02:02:28 +01:00
JosJuice
c553344282
JitArm64: Add early exit in MOVI2RImpl ORR loop
...
Just for performance.
2025-08-21 20:56:06 +02:00
JosJuice
596b290177
JitArm64: Add missing ORR pattern in MOVI2RImpl
...
We should attempt to use not only mirrored versions of the immediate as
an ORR base, but also the immediate itself. This lets us emit certain
64-bit constants using fewer instructions.
2025-08-21 20:56:06 +02:00
iwubcode
4489ea0ec2
VideoCommon: add TextureAndSamplerAsset, this asset contains both the raw texture data and data about how the texture should be sampled
2025-08-20 19:41:22 -05:00
Tilka
90a137ffdc
Merge pull request #13888 from Sintendo/unused-psg
...
VideoCommon: Remove unused EnumMaps from PixelShaderGen
2025-08-20 23:03:54 +01:00
JosJuice
09e68e707e
Merge pull request #13836 from Sintendo/jitarm64-subfe
...
JitArm64_Integer: Minor subfe optimizations
2025-08-20 22:40:14 +02:00
Sintendo
aa085a76bc
VideoCommon: Remove unused EnumMaps from PixelShaderGen
...
They appear to have been unused since #13432 .
2025-08-20 21:22:53 +02:00
JMC47
5aaf522a6f
Merge pull request #13877 from iwubcode/vertex_shader_custom_uniforms
...
VideoBackends: allow custom pixel uniforms to be passed to the vertex shader as well
2025-08-20 13:16:00 -04:00
Tilka
be6a6bce9f
Merge pull request #13873 from Dentomologist/dolphinanalytics_use_pascal_case_for_gamequirk_enum
...
DolphinAnalytics: Use Pascal case for GameQuirk enum
2025-08-19 21:57:34 +01:00
Tilka
2696e053ea
Merge pull request #13887 from Tilka/unused_sign_bit
...
Jit64: drop unused constant
2025-08-19 19:40:49 +01:00
JMC47
37f5ae4209
Merge pull request #13868 from Geotale/master
...
Fix Single-Precision-Only Inputs to FMAs Instructions in Interpreter
2025-08-18 18:25:38 -04:00
Tillmann Karras
84b5a73b2a
Jit64: drop unused constant
...
Unused since c4799e5977 .
2025-08-18 23:09:37 +01:00
Tilka
8701944dd1
Merge pull request #13883 from Dentomologist/fifoplayerwindow_geometry_fixes
...
FIFOPlayerWindow geometry fixes
2025-08-18 20:23:24 +01:00
TryTwo
affc22f17d
Update code to work with new version of ImGui.
...
UpdateImGuiTexture now handles creating font textures and modifying them.
2025-08-18 05:38:14 -07:00
Sepalani
e9f58193a7
Common/BitUtils: Add operator[] to BitCastPtrType
2025-08-18 13:06:12 +04:00
Geotale
07443e2d41
Improve Interpreted FMADDS Precision
...
Improves the accuracy of FMADDS and other single precision FMA operations
This is accomplished by using an error-free transformation
It also thoroughly explains the quirks and difficulty of these operations
This fixes Mario Strikers and is necessary for fully fixing 1080 Avalanche
For single precision inputs it should be equivalent to a 32-bit FMA
2025-08-17 21:15:55 -05:00
Tillmann Karras
37758fa290
OpcodeDecoder: provide default GetVertexSize() implementation
2025-08-18 01:41:14 +01:00
iwubcode
0e73a01279
VideoBackends: allow custom pixel uniforms to be passed to the vertex shader as well
2025-08-17 18:55:40 -05:00
Dentomologist
1841c151c4
FIFOPlayerWindow: Save and restore window geometry
...
Aside from allowing users to persistently set the window to their
desired size, this is also necessary to allow saving of the splitter
positions in FIFOAnalyzer to work correctly.
2025-08-17 14:39:40 -07:00
Dentomologist
99be30c0e1
FIFOPlayerWindow: Trigger destructor on Dolphin shutdown
...
Make MainWindow::m_fifo_window a unique_ptr to ensure its destructor is
triggered when MainWindow is destroyed.
FIFOPlayerWindow doesn't set MainWindow as its parent in order to
prevent raising MainWindow when focusing FIFOPlayerWindow. This avoids
MainWindow covering up RenderWidget when, e.g., trying to use the object
range feature to pinpoint the index of a particular object.
As a consequence, unlike most QObjects FIFOPlayerWindow wasn't destroyed
when its parent widget was since it didn't have one.
2025-08-17 14:39:40 -07:00
Dentomologist
6f43f8eef5
FIFOPlayerWindow: Add stretch to Play/Record tab
2025-08-17 14:39:40 -07:00
Jordan Woyak
cee9360e4b
ControllerInterface/SDL: Remove manual window message pumping on Windows.
...
The mentioned SDL hotplug issue seems to have been fixed.
2025-08-17 12:53:09 -05:00
Jordan Woyak
cec41b2448
ControllerInterface/SDL: Don't force SDL_HINT_JOYSTICK_THREAD.
...
SDL3 enables it by default now and things seem to work properly even when it's off these days.
2025-08-17 12:49:19 -05:00
OatmealDome
221d396b3a
FloatUtils: Replace quieting SNaNs via 0.0 + x with MakeQuiet
2025-08-17 11:24:38 -04:00
OatmealDome
cfb78dc816
FloatUtils: Move MakeQuiet function here from Interpreter_FPUtils
2025-08-17 11:23:12 -04:00
Tilka
ab1f75b4d6
Merge pull request #13853 from LillyJadeKatrin/retroachievements-patch-fix
...
Fixed Patch Allowlist Check
2025-08-17 10:25:30 +01:00
Pokechu22
b8352eeeb9
Merge pull request #13865 from Pokechu22/dsi-mention-mmu
...
Mention enable MMU in the DSI Exception message (Invalid read from ###/Invalid write to ###)
2025-08-15 10:11:47 -07:00
Dentomologist
3cc00c0676
DolphinAnalytics: Use Pascal case for GameQuirk enum
2025-08-14 13:54:23 -07:00
JMC47
aa45b7fe61
Merge pull request #13867 from TryTwo/gfx_bug_fix
...
GFX: Fix bugs for AbstractStagingTextures that perform an Upload.
2025-08-13 19:09:07 -04:00
Pokechu22
dfbf39c768
Mention enable MMU in the DSI Exception message (Invalid read from ###/Invalid write to ###)
...
This has been possible for a long time now (see https://dolphin-emu.org/blog/2016/09/06/booting-the-final-gc-game/#side-effects-of-a-hardcode-rewrite ), but it seems like people still aren't aware of it.
2025-08-13 11:55:40 -07:00
TryTwo
6b683517dc
Fix bugs related to AbstractStagingTextures that perform an Upload (write to existing texture). This code path had probably never been used before.
2025-08-12 23:43:55 -07:00
Dentomologist
bd79bc47cc
BranchWatch: Extract shared function logic
...
IsolateWasOverwritten and IsolateNotOverwritten share the same basic
logic and have almost exactly the same code, with the only difference
being the comparison function used to keep or discard branches. To avoid
unnecessary code duplication and ensure that the functions stay in sync
after any future changes, create a helper function that takes the
comparison function as a parameter and have IsolateWasOverwritten and
IsolateNotOverwritten call that helper.
2025-08-12 12:15:22 -07:00
Dentomologist
4303e086bf
EnhancementsWidget: Fix display of default post-processing effect
...
Show "(off)" instead of "" when the default post-processing effect is
selected. This also indirectly fixes issues with keyboard navigation of
the post-processing effect combobox when the default is selected,
resolving https://bugs.dolphin-emu.org/issues/13863 .
m_post_processing_effect was previously using the ConfigStringChoice
constructor that assumes the text and data of each option are identical.
This is true for all the other effects, but since "(off)" has the config
value of "" this assumption was failing for it, causing the combobox to
be blank.
2025-08-11 18:01:14 -07:00
Dentomologist
61d9002ab4
EnhancementsWidget: Unabbreviate function and member names
2025-08-11 17:59:55 -07:00
Tillmann Karras
f04c2799dd
VideoSW: fix comment
2025-08-10 19:37:21 +01:00
Tillmann Karras
df3dc80190
DolphinQt: fix two -Wunused-lambda-capture warnings
2025-08-10 19:37:21 +01:00
Tilka
ba656e641e
Merge pull request #13854 from dreamsyntax/fix-regression-callers-broken
...
PPCSymbolDB: Fix callers not updating
2025-08-10 19:13:29 +01:00
Jordan Woyak
292f7401b3
HW/VideoInterface: Don't affect aspect ratio with VBI Frequency Override
2025-08-10 15:45:15 +02:00
LillyJadeKatrin
39ea49fc39
Fixed Patch Allowlist Check
...
Previous changes to the patch allowlist format were not reflected in AchievementManager; this corrects that and re-enables patches and codes in hardcore mode.
2025-08-10 07:47:19 -04:00
Tilka
e099a9c180
Merge pull request #13838 from Tilka/videosw2
...
VideoSW: reuse Common::Vec2/3/4
2025-08-10 08:26:02 +01:00
Tilka
4fc3106761
Merge pull request #13859 from Tilka/root_path_assert
...
IOS/FS: add safety assert
2025-08-10 05:29:05 +01:00
Tillmann Karras
fa4127b145
VideoSW: reuse Common::Vec2/3/4
2025-08-10 05:17:26 +01:00