44358 Commits

Author SHA1 Message Date
Jordan Woyak
c5893093fc DolphinQt: Make GameConfigHighlighter better handle large files. 2025-08-08 23:49:24 -05:00
JMC47
e6ed939952 Merge pull request #13839 from Tilka/videosw3
VideoSW: allow disabling the copy filter
2025-08-07 02:18:01 -04:00
Sintendo
6a92a90bce JitArm64_Integer: subfcx - Subtract shifted 12-bit constant
Eliminate an instruction by encoding the constant in the subtraction,
part two.

Before:
0x52900019   mov    w25, #0x8000              ; =32768
0x6b190359   subs   w25, w26, w25

After:
0x71402359   subs   w25, w26, #0x8, lsl #12   ; =0x8000
2025-08-07 07:51:15 +02:00
Sintendo
45a3e35b06 JitArm64_Integer: subfcx - Subtract 12-bit constant
Eliminate an instruction by encoding the constant in the subtraction.

Before:
0x5280037a   mov    w26, #0x1b                ; =27
0x6b1a02bb   subs   w27, w21, w26
0x93407f78   sxtw   x24, w27

After:
0x71006ebb   subs   w27, w21, #0x1b
0x93407f7a   sxtw   x26, w27
2025-08-07 07:51:15 +02:00
Sintendo
fc9f2d9cea JitArm64_Integer: subfcx - Optimize b == 0
Equivalent to a negation, no need to materialize the zero.

Before:
0x52800015   mov    w21, #0x0                 ; =0
0x6b1802b6   subs   w22, w21, w24

After:
0x6b1803f6   negs   w22, w24
2025-08-07 07:51:15 +02:00
Sintendo
e3d889feb1 JitArm64_Integer: subfcx - Optimize a == 0
This case can be handled as a move. It also generates a constant carry
flag.

Before:
0x52800013   mov    w19, #0x0                 ; =0
0x6b1302b3   subs   w19, w21, w19

After:
0x2a1503f3   mov    w19, w21
2025-08-07 07:51:15 +02:00
JMC47
3111a785a1 Merge pull request #13725 from Sam-Belliveau/more-consistent-looping
Fade audio after an entire loop
2025-08-05 20:02:58 -04:00
JMC47
804cf465fc Merge pull request #13819 from jordan-woyak/null-sound-stream-drop-samples
AudioCommon/Mixer: Skip sample processing when NullSoundStream is being used.
2025-08-05 16:46:57 -04:00
JMC47
ab990018f2 Merge pull request #13831 from JoshuaVandaele/dualcore-conf
Config: Change default value for Dual Core from enabled to disabled
2025-08-05 13:45:15 -04:00
Joshua Vandaële
33c9aa714b USBDevicePicker: Modify USBDeviceAddToWhitelistDialog to be more generic, and use it for a new "More Options..." selection in Bluetooth Passthrough adapters 2025-08-05 13:16:50 +02:00
JosJuice
be669c7ce3 Merge pull request #13841 from JosJuice/android-opt-out-back
Android: Opt out of back invoked callback
2025-08-05 08:10:43 +02:00
JMC47
c6d55d1b50 Merge pull request #13791 from jordan-woyak/realtek-firmware-loader
BTReal: Implement Realtek firmware loading.
2025-08-04 19:42:59 -04:00
Jordan Woyak
4494989f78 Externals/SDL: Update submodule to release 3.2.20. 2025-08-04 17:35:46 -05:00
JosJuice
222dda3305 Merge pull request #13845 from Dentomologist/host_remove_unnecessary_functions
Host: Remove unnecessary functions
2025-08-04 19:49:58 +02:00
Joshua Vandaële
f8b85edd0c Qt: Better wayland detection to enforce xcb
In certain cases, the platform can be "wayland-egl", "wayland-xcomposite", and other values for which I haven't found a full list yet. Instead of matching only "wayland", we now look for "wayland" anywhere in the `QT_QPA_PLATFORM` string in a case-insensitive manner.

Acknowledgements:
`CaseInsensitiveContains`' implementation was heavily inspired by GNU's non-standard glibc `strcasestr` function, which can be found here licensed under GPLv2 or later: https://ftp.gnu.org/gnu/libc/
2025-08-04 19:34:31 +02:00
Dentomologist
3b832e84e4 Host: Remove outdated comment
Host_RequestFullscreen and Host_UpdateMainFrame have been removed, and
Host_RequestRenderWindowSize has been used by DolphinQt since 80699096
and by Android since e8739156.
2025-08-03 13:24:50 -07:00
Dentomologist
530ea7528e Host: Remove unnecessary functions
Remove Host_RefreshDSPDebuggerWindow (which hasn't done anything since
DolphinWX was removed in 44b22c90) and DSP::Host::UpdateDebugger (which
only called Host_RefreshDSPDebuggerWindow).
2025-08-03 13:19:30 -07:00
Dentomologist
d0de0a3f47 Host: Remove unnecessary function
Remove Host_UpdateMainFrame(). The only non-empty call happened in
DolphinNoGUI which called s_update_main_frame_event.Set(), but
DolphinNoGUI never waits on that event.
2025-08-03 13:12:01 -07:00
Jordan Woyak
6ca486ffb2 Merge pull request #13843 from Dentomologist/gamelist_fix_games_not_being_displayed
Game List: Fix games not being displayed
2025-08-01 18:28:35 -05:00
Dentomologist
38accd7fc3 GameTracker: Fix games not being displayed 2025-08-01 16:04:53 -07:00
Jordan Woyak
cc3a13d4e4 Merge pull request #13842 from Dentomologist/memorywidget_fix_build_breakage_from_conflicting_prs
MemoryWidget: Fix build breakage from conflicting PRs
2025-08-01 18:03:40 -05:00
Dentomologist
c880210ec1 MemoryWidget: Fix build breakage from conflicting PRs
PRs https://github.com/dolphin-emu/dolphin/pull/13786 and
https://github.com/dolphin-emu/dolphin/pull/13797 had incompatible
changes that resulted in the build being broken when they were both
merged.
2025-08-01 15:31:38 -07:00
Martino Fontana
5d71ac268f ActionReplay/PatchEngine: Replace HostWrite with ApplyMemoryPatch
Compared to the former, the latter invalidates the icache, which is
something that is likely desired for patches (especially if they are
applied while the game is running).
2025-08-01 23:25:06 +02:00
Martino Fontana
aa7b13f353 PPCDebugInterface: Small refactor to ApplyMemoryPatch
Invalidate icache only if target address has a different value. Take separate arguements,
instead of a struct, to allow easier usage elsewhere. Overload with u8,
u16 and u32 values for the same reason.
2025-08-01 23:24:39 +02:00
Admiral H. Curtiss
bec5624287 Merge pull request #13177 from jordan-woyak/remove-nunchuk-hax
ControllerEmu: Remove nunchuk stick data hax.
2025-08-01 22:00:17 +02:00
Admiral H. Curtiss
3fb80bec9b Merge pull request #13780 from jordan-woyak/fix-text-filter-nearest
VideoCommon: Fix "Force Nearest" texture filter setting.
2025-08-01 21:59:04 +02:00
Admiral H. Curtiss
9e271c3f67 Merge pull request #13797 from TryTwo/PR_Memory_Symbols
MemoryWidget: Add Symbols and Notes.
2025-08-01 21:47:43 +02:00
Admiral H. Curtiss
03b709019d Merge pull request #13749 from iwubcode/vertex_shadergen_expand_fix
VideoCommon: fix regression in vertexshadergen for line/point expansion
2025-08-01 21:44:41 +02:00
Admiral H. Curtiss
06e05e0f90 Merge pull request #13794 from Sintendo/doouble-lookup
Avoid map/set double lookups
2025-08-01 21:43:12 +02:00
Dentomologist
7b52555a5f BalloonTip: Don't hide when BalloonTip blocks the cursor
Keep the BalloonTip open when the BalloonTip's arrow prevents the cursor
from being inside the spawning ToolTipWidget, which triggers the
ToolTipWidget's leaveEvent and would previously close the BalloonTip.

When that happens track the cursor until it either leaves the
ToolTipWidget's bounding box or leaves the BalloonTip and goes back to
the ToolTipWidget, and respectively close the BalloonTip or leave it
open.
2025-08-01 12:30:05 -07:00
Admiral H. Curtiss
36aa7b6f3f Merge pull request #13776 from jordan-woyak/win-dark-mode-styles
DolphinQt: Fix Windows dark theme when using external stylesheets.
2025-08-01 21:26:17 +02:00
Admiral H. Curtiss
63064591e8 Merge pull request #13760 from jordan-woyak/allow-skip-ipl
DolphinQt: Always enable the "Skip Main Menu" checkbox when "SkipIPL" is disabled.
2025-08-01 21:24:10 +02:00
Admiral H. Curtiss
5439a345a7 Merge pull request #13829 from JosJuice/android-retroachievements-pause-override
Android: Don't let RetroAchievements override onPause
2025-08-01 21:23:28 +02:00
Admiral H. Curtiss
6b82389f45 Merge pull request #13833 from jordan-woyak/exi-ethernet-atomic-interrupt
HW/EXI_DeviceEthernet: Make interrupt state atomic.
2025-08-01 21:19:17 +02:00
JosJuice
5c7e8db26e Android: Opt out of back invoked callback
When 9d9b6d8 changed our target SDK version to Android 16, it made
Android 16 stop calling onBackPressed and stop delivering KEYCODE_BACK
events. Dolphin's code isn't ready for that yet.

Android lets us opt out of this new behavior for now, so let's do so.
But the opt-out will presumably stop working once we start targeting
Android 17, so we're going to have to update Dolphin's code within the
next one or two years to support the replacement API.
2025-08-01 19:18:09 +02:00
JMC47
c63d74e6c0 Merge pull request #13790 from SuperSamus/retroachivements-update
GameSettings: Minor approved cheats update
2025-07-31 16:34:19 -04:00
Sintendo
e9d28649dc JitArm64_Integer: Clean up includes 2025-07-31 20:18:33 +02:00
Sintendo
ed5cea2635 JitArm64_Integer: subfex - Explicitly handle a == b
Number of instructions stays the same, but we remove the false
dependency on the input registers.

Before:
0x7a1b037a   sbcs   w26, w27, w27

After:
0x5a9f23fa   csetm  w26, lo
2025-07-31 20:18:21 +02:00
Tillmann Karras
9ff5943ac6 VideoSW: allow disabling the copy filter 2025-07-31 15:51:51 +01:00
TryTwo
f7e7b0f6b0 MemoryWidget: Add symbols and Notes.
Add option to hide them.
Add box to search.
Add ability to edit data symbols and notes in MemoryViewWidget.
2025-07-30 17:40:24 -07:00
Tilka
812c6c2ea4 Merge pull request #13830 from CrossVR/broken-depth-clamp-control
DriverDetails: Disable depth_clamp_control on official AMD drivers
2025-07-31 01:06:00 +01:00
Jordan Woyak
9224d2f827 Merge pull request #13821 from AlexanderHarrison/codeview-update-timer
CodeViewWidget: Improve Update performance
2025-07-30 17:42:45 -05:00
JosJuice
f26af63c6d Merge pull request #13828 from JosJuice/retroachievements-ipl
Boot: Fix RetroAchievements for GameCube games launched with IPL
2025-07-30 21:51:03 +02:00
JosJuice
62bc93473f Merge pull request #13781 from Dentomologist/controllerinterface_fix_windows_deadlock
ControllerInterface: Fix Windows deadlock
2025-07-30 21:49:23 +02:00
Alex Harrison
56f04b5406 PPCSymbolDB: Fill in callers after loading map files 2025-07-30 13:43:02 -06:00
Alex Harrison
6cb7868286 CodeViewWidget: Improve performance by removing unnecessary FillInCallers computation during update 2025-07-30 13:41:42 -06:00
Tilka
d6a4421386 Merge pull request #13835 from Tilka/unused_xf_enumerators
VideoCommon: drop unused XF enumerators
2025-07-30 20:31:56 +01:00
Sintendo
854979937c JitArm64_Integer: subfex - Improve codegen for zero with InHostCarry
Another instance where we needlessly materialized constant zero in a
register. We can just write the carry flag directly.

Before:
0x5280001a   mov    w26, #0x0                 ; =0
0x1a1f035a   adc    w26, w26, wzr

After:
0x1a9f37fa   cset   w26, hs
2025-07-30 21:29:10 +02:00
Tillmann Karras
cc71401e29 VideoCommon: drop unused XF enumerators
We handle all six registers (scale/offset * xyz) via the viewport name.
Keeping around unused enumerators only for the z component is confusing.
2025-07-30 19:56:30 +01:00
Tilka
131ca1ba9b Merge pull request #13786 from JosJuice/symboldb-locking
PPCSymbolDB: Improve locking
2025-07-30 17:15:28 +01:00