summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-03-17ScmRevGen: Bump version to 2603a2603arelease-prep-2603aOatmealDome
2026-03-17RetroAchievements: Block loading discs that don't match current titleJosJuice
2026-03-17FifoPlayer: Fix hang when taking screenshot during FIFO log playbackDentomologist
Don't copy null terminators from the log's `header.gameid` into `FifoDataFile`'s `m_game_id`. Doing so would cause an infinite loop in `Core::GenerateScreenshotName` as the various concatenations and `fmt::format` calls would then effectively drop all the timestamps and disambiguating arbitrary numbers since they followed the null terminator in the gameid, and so the `File::Exists` calls would always return true. Fixes https://bugs.dolphin-emu.org/issues/14002.
2026-03-17GeneralWidget: Add protections against invalid values in BackendWarning()OatmealDome
2026-03-17cURL: Disable BrotliOatmealDome
2026-03-17fmt: change use of fmt/base.h to fmt/format.h as not provided until fmt>=11.0Craig Carnell
2026-03-17SDL: Use bundled LibUSB when desirableJoshua Vandaële
Previously, SDL would `find_package(libusb)` which would actually overwrite the user preference in the case where both USE_SYSTEM_LIBUSB and USE_SYSTEM_SDL were OFF. This coincidentally also allows SDL to use libusb on Windows.
2026-03-17LibUSB: Improve library detectionJoshua Vandaële
Our FindLibUSB.cmake was previously entirely unused unless SDL was being built from Externals, we now rely on it again. It will use PkgConfig if applicable or fall back to looking around on the system, and more importantly it will always create an imported target.
2026-03-17cURL: Actually disable ZLIB/ZSTDJoshua Vandaële
cURL tries to find ZSTD anyways due to the lack of setting it in CACHE, and for both ZLIB and ZSTD if we had done find_package previously, cURL would still use ZLIB/ZSTD regardless of the set variable.
2026-03-17minizip-ng: Properly use libraries from ExternalsJoshua Vandaële
This also fixes the CMake build on Windows, since it would fail to find our target defined in Externals and would fall back to trying to redefine it, which produces an error.
2026-03-17CMake: Error out when switching sources for dependenciesJoshua Vandaële
Currently, configuring from System>Bundled doesn't work, it instead produces cryptic errors. And configuring from Bundled>System wont produce errors, but wont use the system libraries either. This change produces a clear error in both cases.
2026-03-17Disable page table fastmem for TimeSplitters: Future PerfectJosJuice
TimeSplitters: Future Perfect is crashing if page table fastmem is enabled. The reason hasn't been analyzed yet. For the time being, let's use GameSettings to bring back the old behavior of not having page table fastmem. Fixes https://bugs.dolphin-emu.org/issues/14000.
2026-03-17Core: Add INI-only setting for page table fastmemJosJuice
2026-03-17Move achievements code out of DVDInterface::SetDiscJosJuice
This should stop AchievementManager::LoadGame from being called for the default ISO when CBoot::BootUp is booting something other than a disc or IPL (most notably, the Wii Menu), while still detecting all disc changes that happen while a disc game is running.
2026-03-11ScmRevGen: Bump version to 26032603release-prep-2603OatmealDome
2026-03-09Translation resources sync with TransifexJosJuice
2026-03-04Merge pull request #14438 from JosJuice/save-on-settings-closeDentomologist
DolphinQt: Save when closing settings window
2026-03-04DolphinQt: Save when closing settings windowJosJuice
If Dolphin crashes, changes that have been made to settings are often lost. This has been a minor annoyance for me when developing, but it has become a much bigger issue recently due to the problem where Dolphin freezes on shutdown for ROG Ally users. Instead of saving the config when certain arbitrary settings are changed, let's save the config when the user closes the settings window.
2026-03-04Merge pull request #14279 from jordan-woyak/nfs-hp2-speedhackJMC47
GameSettings: Add patches for Need for Speed: Hot Pursuit 2 to limit the internal frame rate.
2026-03-03Merge pull request #14297 from jordan-woyak/speedhack-stunt-racerJMC47
GameSettings: Add patch to limit framerate in Monster 4x4: Stunt Racer.
2026-03-03Merge pull request #14280 from jordan-woyak/rabbids-speed-hacksJMC47
GameSettings: Add patches to limit the internal frame rate in Rabbids Go Home and Rabbids Lab.
2026-03-03Merge pull request #14435 from Simonx22/fix/metal-early-stop-shutdownJMC47
Metal: Always run endEncoding on command encoders
2026-03-03Metal: Always run endEncoding on command encodersSimonx22
Fixes a macOS Metal crash when stopping immediately after boot starts. m_upload_encoder and m_texture_upload_encoder could be dealloc'd during shutdown before endEncoding could be called, which causes a Metal assertion failure. Co-authored-by: OatmealDome <julian@oatmealdome.me>
2026-03-02Merge pull request #14432 from ↵JMC47
Dentomologist/vertexloadermanager_fix_crash_from_invalid_array_base VertexLoaderManager: Fix crash caused by invalid array base
2026-03-02VertexLoaderManager: Fix crash caused by invalid array baseDentomologist
Don't set cached array bases to invalid pointers. If a game tries to set an invalid base just keep the old one, which might cause game problems but won't crash the emulator.
2026-03-02Merge pull request #14327 from ↵Dentomologist
Dentomologist/performancemetrics_fix_graph_size_and_spacing PerformanceMetrics: Fix graph size and spacing
2026-03-01Merge pull request #14429 from TellowKrinkle/DSUCheckUnwrapIPJosJuice
DSU: Don't crash on bad hostname
2026-03-01DSU: Don't crash on bad hostnameTellowKrinkle
2026-02-28Merge pull request #14425 from JosJuice/android-wiimote-crashJMC47
Android: Fix Wii Remote connection crashes
2026-02-28Android: Use DeleteLocalRef more in WiimoteAndroidJosJuice
Doesn't matter a lot, but we're supposed to do this to be nice citizens.
2026-02-28Android: Fix Wii Remote connection crashesJosJuice
Users are reporting a crash at the point where WiimoteAndroid::IORead tries to use m_java_wiimote_payload. This commit solves the problem by making m_java_wiimote_payload a global reference. The code for setting up m_java_wiimote_payload has also been moved to the constructor just because that way it's impossible for it to run twice. (If the code as written were to run a second time, the old global reference would be leaked. ConnectInternal should only run once, so this is just to be on the safe side.) Fixes https://bugs.dolphin-emu.org/issues/13960.
2026-02-28Merge pull request #14418 from LillyJadeKatrin/retroachievements-wii-menuJosJuice
RetroAchievements - Close game on switch to null hash
2026-02-26Merge pull request #14317 from JosJuice/jit-cache-macro-loopDentomologist
Jit: Use RangeSet for physical_addresses
2026-02-26Merge pull request #14416 from JosJuice/game-id-asciiDentomologist
DiscIO: Only allow alphanumeric ASCII in game IDs
2026-02-26GameSettings: Add patches to limit the internal frame rate in Rabbids Go ↵Jordan Woyak
Home and Rabbids Lab. Thanks to mickle pickle and ruru for helping to port the the Rabbids Go Home patch for the European versions of the game.
2026-02-24RetroAchievements - Close game on switch to null hashLilly Jade Katrin
Mistakenly thought the change media call would close the current game if the new media failed to hash. This wasn't the case so instead I'll close the current game myself. This fixes an issue where a default ISO would immediately load achievements when starting up the Wii menu.
2026-02-24Merge pull request #14415 from JosJuice/android-achievement-defaultsDentomologist
Android: Fix defaults for RetroAchievements settings
2026-02-24DiscIO: Only allow alphanumeric ASCII in game IDsJosJuice
We often use game IDs in paths, so we should try to make sure path traversal is impossible in game IDs. Admittedly, doing any kind of real attack using the six bytes available in game IDs is unrealistic, but no game ID should contain non-alphanumeric or non-ASCII characters anyway. Might also fix https://bugs.dolphin-emu.org/issues/13982 by skipping converting between encodings for game IDs.
2026-02-24DiscIO: Move DecodeString to Volume.cppJosJuice
This had to be in the header back when it was templated, but 083faa8b made it not templated.
2026-02-24Merge pull request #14411 from JoshuaVandaele/SDL-3.4.2JosJuice
Externals: Update SDL to release-3.4.2
2026-02-24Translation resources sync with TransifexJosJuice
2026-02-23Merge pull request #14352 from Windsurf7/sonicmega-gameiniDentomologist
GameINI: Formatting updates to Sonic Mega Collection
2026-02-23Merge pull request #14407 from jordan-woyak/mag-card-fixupJMC47
MagneticCardReader: Minor fixup to writing card data.
2026-02-23Jit: Use RangeSet for physical_addressesJosJuice
This makes JitBaseBlockCache::ErasePhysicalRange around 50% faster and PPCAnalyzer::Analyze around 40% faster. Rogue Squadron 2's notoriously laggy action of switching to and from cockpit view is made something like 20-30% faster by this, though this is a very rough measurement.
2026-02-23Move RangeSet from Externals to CommonJosJuice
This is a very small libary, and as I understand it, it was more or less developed for Dolphin. This moves the two relevant files from Externals to Common, changes the namespace to Common, reformats the code, and adds Dolphin copyright notices. The change in copyright notice and license was approved by AdmiralCurtiss.
2026-02-23Android: Fix defaults for RetroAchievements settingsJosJuice
Default values for settings need to be the same in Kotlin and C++, otherwise settings that haven't been changed by the user will be shown as having one value in the Android GUI but treated as having a different value in the core.
2026-02-23Merge pull request #14389 from FrankyBuster/masterJosJuice
Metal Arms and PoP Two Thrones aspect ratio setting fix
2026-02-23Merge pull request #14331 from JosJuice/game-inis-rsJosJuice
GameSettings: Update Rogue Squadron II and III
2026-02-22Externals: Update SDL to release-3.4.2Joshua Vandaële
Notable changes: - CMake - Fixed a bug where SDL couldn't use a vendored libusb or libhidapi (see 29b3fcfb1bc834d0187a8114debdcbbf8381cd61) - Fixed long startup times on Windows when some non-compliant input devices are present - Controller support - Added support for the Razer Raiju V5 Pro - Improved Switch 2 controller support - Improved NVIDIA SHIELD controller support - Fixed various controllers showing up twice on macOS - Fixed handling GameCube adapters in PC mode on Linux and macOS
2026-02-21Merge pull request #14376 from Windsurf7/lozss-gameiniDentomologist
GameINI: Formatting updates to The Legend of Zelda Skyward Sword