45651 Commits

Author SHA1 Message Date
Dentomologist
d0d354fbed Merge pull request #14635 from JosJuice/android-panic-log-crash
Android: Move alert message log from Kotlin to C++
2026-05-12 17:14:06 -07:00
Admiral H. Curtiss
34311f5fa2 Merge pull request #14592 from jordan-woyak/memcard-manager-scrolling
DolphinQt/GCMemcardManager: Set ScrollMode::ScrollPerPixel to make scrolling behavior less annoying.
2026-05-11 23:04:22 +02:00
Admiral H. Curtiss
8bf1f8970a Merge pull request #14613 from JosJuice/wad-tmd-checks
DiscIO: Add extra IsValid checks for VolumeWAD::m_tmd
2026-05-11 22:59:40 +02:00
JosJuice
4470534dc5 Android: Move alert message log from Kotlin to C++
For some reason, NativeLibrary.kt calling Log for the alert message text
makes Dolphin die with a JNI error. Supposedly the jstring passed to the
logging function is invalid. I don't understand why, because the dialog
that we show right afterwards is able to read the string just fine. The
error happens even if I pass the string directly to Log without
prepending any extra text.

There's no real downside to having the logging in C++ instead of Kotlin,
so let's move it to C++ to avoid the JNI error.
2026-05-08 10:56:51 +02:00
Dentomologist
d19952cc11 Merge pull request #14634 from JosJuice/jitarm64-msr-dr-bit
JitArm64: Fix DR check in MSRUpdated
2026-05-07 17:21:50 -07:00
Dentomologist
30a20d75d2 Merge pull request #14629 from Simonx22/android/convert-tvutil-to-kotlin
Android: Convert TvUtil to Kotlin
2026-05-07 13:23:48 -07:00
JosJuice
f09a736f14 Merge pull request #14645 from Dentomologist/msghandler_use_more_suitable_log_levels
MsgHandler: Use LogLevel matching MsgType for alerts
2026-05-07 11:07:41 +02:00
Dentomologist
8afc696a1e Merge pull request #14644 from tom-pratt/fix_do_all_players_have_game
DoAllPlayersHaveSameGame returns correct result instead of always true
2026-05-06 15:07:33 -07:00
Dentomologist
cf20cdabd4 Merge pull request #14632 from vladfi1/upstream-pipe-inputs-fix
Unconditionally lock in ControllerInterface::UpdateInput
2026-05-06 13:40:16 -07:00
Vlad Firoiu
20718de37e Unconditionally lock in ControllerInterface::UpdateInput. 2026-05-06 15:57:03 -04:00
Dentomologist
dfda04c4e4 MsgHandler: Use log level matching MsgType for alerts
When calling `ShowMessageAlert` with a given `MsgType`, log the alert
with a `LogLevel` matching the `MsgType` instead of always using
`LogLevel::LERROR`.
2026-05-06 12:44:43 -07:00
Tom Pratt
bedb283d93 DoAllPlayersHaveSameGame returns correct result instead of always true
SendGameStatus() was writing SyncIdentifierComparison as a u32 but the server reads it as a u8 enum, so the server always gets 0 (SameGame). This bug was introduced in commit 66276ac.
2026-05-06 14:06:01 +02:00
Dentomologist
6d5399246e Merge pull request #14532 from Dentomologist/autoupdatechecker_fix_edge_cases
AutoUpdateChecker: Fix Edge Cases
2026-05-05 16:23:16 -07:00
Jordan Woyak
b0eb643c61 Merge pull request #14642 from SuperSamus/cpp-move-fixup-nocubeb
Fixup #14565 (compilation with `-DENABLE_CUBEB=OFF`)
2026-05-05 11:45:55 -05:00
Martino Fontana
3c06541718 Fixup #14565 (compilation with -DENABLE_CUBEB=OFF) 2026-05-05 13:50:05 +02:00
Jordan Woyak
e22551eae1 Merge pull request #14641 from Dentomologist/replace_maybe_unused_annotations_with_commented_names
Replace some [[maybe_unused]] annotations with commented names
2026-05-03 20:20:07 -05:00
Dentomologist
34646cb9a9 Replace some [[maybe_unused]] annotations with commented names
Remove the [[maybe_unused]] annotation from various parameters that are
unconditionally unused and comment out their names instead. This makes
it unambiguous that the variables are unused, while making the remaining
[[maybe_unused]] annotations more reliable indicators that those
variables are in fact used in some contexts.

These parameters are mostly in overridden functions where the override
doesn't need that particular variable.
2026-05-03 17:09:59 -07:00
Jordan Woyak
eb44b64c9e Merge pull request #14628 from JosJuice/android-remove-hostthreadlock
Android: Remove HostThreadLock
2026-05-01 11:39:24 -05:00
JosJuice
058c7021b8 JitArm64: Fix DR check in MSRUpdated
TBZ takes the index of the bit to test, not a LogicalImm.
2026-05-01 10:23:59 +02:00
Jordan Woyak
1907ffa45d Merge pull request #14384 from ethanuppal/editdsuservers
Config: Add Edit button to DSU server menu
2026-04-30 20:50:17 -05:00
Simonx22
a7e98c776d Android: Convert TvUtil to Kotlin 2026-04-30 16:23:32 -04:00
Ethan Uppal
4e55d2518a Config: Add Edit button to DSU server menu
Signed-off-by: Ethan Uppal <113849268+ethanuppal@users.noreply.github.com>
2026-04-30 02:23:41 -04:00
JMC47
ecfaa95e5a Merge pull request #14543 from spaceage64/add-classic-controller-codes
Update/Add cheats for Animal Crossing: City Folk
2026-04-29 19:52:37 -04:00
spaceage64
3944310308 Add Classic Controller support cheats for Animal Crossing (all regions) 2026-04-29 19:44:31 +02:00
JosJuice
c73dde2193 Android: Remove HostThreadLock
Follow-up to 068947e. HostThreadLock no longer serves a purpose.
2026-04-29 18:55:18 +02:00
Dentomologist
2b743639d8 Merge pull request #13505 from tygyh/Replace-find-with-contains
Source/Core: Replace `find(x) != npos` with `contains(x)`
2026-04-28 17:50:51 -07:00
Dentomologist
725a726174 Merge pull request #14602 from jordan-woyak/show-file-in-folder
QtUtils: Add ShowFileInFolder function and make GameList right-click menu actions use it.
2026-04-28 17:29:44 -07:00
JMC47
0e8fa3caca Merge pull request #14601 from jordan-woyak/mkgp-wheel-fix
HW/Triforce/MarioKartGP: Tweak the steering wheel FFB device responses to prevent "Wheel Error" screens.
2026-04-27 16:48:28 -04:00
JMC47
ab6b30afe2 Merge pull request #14582 from jordan-woyak/gamesettings-allow-imm-xfb
GameSettings: Allow ImmediateXFB for a handful of games that seem fine with it.
2026-04-27 13:11:42 -04:00
JMC47
d47d5431a1 Merge pull request #14617 from jordan-woyak/gamesettings-secret-rings
GameSettings: Set SafeTextureCacheColorSamples for "Sonic and the Secret Rings".
2026-04-27 13:10:15 -04:00
JMC47
77b778302c Merge pull request #14614 from jordan-woyak/gamesettings-metroid-prime
GameSettings: Disable EFBToTexture for "Metroid Prime 2: Dark Echoes (Wii)" to fix the scan visor.
2026-04-27 13:09:20 -04:00
JMC47
6409c5beb3 Merge pull request #13931 from SuperSamus/pikmin-squared-60fps
GameINI: Add 60 FPS code for Pikmin Squared
2026-04-27 13:09:00 -04:00
Jordan Woyak
5e1185b979 HW/Triforce/MarioKartGP: Tweak the steering wheel FFB device responses to prevent "Wheel Error" screens. 2026-04-27 11:59:12 -05:00
JMC47
4609cbf35b Merge pull request #14513 from cristian64/gamesettings_mario_kart_arcade_gp2
GameSettings: Add INI files for Mario Kart Arcade GP 2.
2026-04-26 17:38:45 -04:00
OatmealDome
af15769d57 Merge pull request #14569 from Simonx22/android/convert-gamefilecachemanager-to-kotlin
Android: Convert GameFileCacheManager to Kotlin
2026-04-26 12:03:57 -04:00
Jordan Woyak
5588fe0022 Merge pull request #14308 from jordan-woyak/character-encoding
StringUtil: Make UTF16ToUTF8 and UTF8ToUTF16 use custom encoding/decoding implementation.
2026-04-25 14:59:27 -05:00
Jordan Woyak
9e08900a33 Merge pull request #14620 from Dentomologist/gcadapter_fix_data_races
GCAdapter: Fix data races
2026-04-25 14:16:01 -05:00
Dentomologist
ac78e52cf9 GCAdapter: Fix data races
Make `s_is_adapter_wanted` and the elements of `s_config_rumble_enabled`
atomic.

The CPU thread reads `s_is_adapter_wanted` and `s_config_rumble_enabled`
in `Output`, while the host thread writes to them in `RefreshConfig`.

The simplest way to trigger this race is to close the `Settings` window
while playing a game with the adapter active.
2026-04-25 11:16:10 -07:00
Jordan Woyak
0363de56fc Merge pull request #14618 from Dentomologist/stereomode_unabbreviate_variable_names
StereoMode: Unabbreviate enum names
2026-04-25 11:55:03 -05:00
Martino Fontana
c96d1b7b4a GameINI: Add 60 FPS code for Pikmin Squared 2026-04-25 10:45:25 +02:00
Dentomologist
a94854309b Merge pull request #14608 from JosJuice/gcadapter-auto-start
GCAdapter: Automatically start and stop thread
2026-04-24 19:51:51 -07:00
Jordan Woyak
a796486625 QtUtils: Add ShowFileInFolder function and make GameList right-click menu actions use it. 2026-04-24 18:09:39 -05:00
Dentomologist
f67d80c7c1 VideoConfig: Rename StereoMode::TAB to StereoMode::TopAndBottom 2026-04-24 11:19:11 -07:00
Jordan Woyak
dbb80ce296 GameSettings: Set SafeTextureCacheColorSamples for "Sonic and the Secret Rings" to fix glitching text in the ring customization menu. 2026-04-24 11:55:33 -05:00
Dentomologist
655ee270e7 VideoConfig: Rename StereoMode::SBS to StereoMode::SideBySide 2026-04-23 12:32:26 -07:00
Dentomologist
59eef9d4d8 HotkeyManager: Unabbreviate HK_TOGGLE_STEREO_TAB
Rename HK_TOGGLE_STEREO_TAB to HK_TOGGLE_STEREO_TOP_AND_BOTTOM.
2026-04-23 12:32:26 -07:00
Dentomologist
8b743dfe9c HotkeyManager: Unabbreviate HK_TOGGLE_STEREO_SBS
Rename HK_TOGGLE_STEREO_SBS to HK_TOGGLE_STEREO_SIDE_BY_SIDE.
2026-04-23 12:32:26 -07:00
iwubcode
d7b7c47453 Merge pull request #14612 from linkmauve/remove-glx
Remove GLX support
2026-04-22 21:12:15 -05:00
JMC47
fe639b1cea Merge pull request #14456 from AGuy27/master
GameSettings: Add patch to limit the internal frame rate in UK release of Rabbids Go Home
2026-04-22 21:55:38 -04:00
JosJuice
a992245aa2 VolumeVerifier: Add extra validity checks for ticket and TMD
This fixes VolumeVerifier potentially calling TMDReader::GetIOSId for
invalid TMDs.

VolumeVerifier also has a call to TMDReader::GetContent that doesn't
check if the TMD is valid. In practice, this can't get called with an
invalid TMD because the previous commit made it so GetContentOffsets
returns an empty vector if the TMD is invalid, but I've added a check
inside TMDReader::GetContent just to be on the safe side.

I also made VolumeVerifier show a specifically worded problem if the
ticket or TMD is invalid. Before, invalid TMDs in Wii discs and WADs
and invalid tickets in WADs would show a more generic problem.
2026-04-20 20:26:31 +02:00