Commit Graph
46182 Commits
Author SHA1 Message Date
Acts1631 f5438ce0c3 VideoCommon: validate restored FIFO pointers
Save states restored video FIFO pointers from unchecked offsets. A
crafted offset could place a pointer outside its backing allocation and
turn the next gather-pipe copy into an out-of-bounds native write.

Require pointer offsets to stay within their backing array and reject a
state when either offset is invalid or the read pointer follows the write
pointer.
2026-10-04 16:53:57 -04:00
iwubcode eb236466c4 Merge pull request #14899 from Starlightbotanist/adreno-tev-zero-rewrite
VideoCommon: Work around Adreno TEV zero input miscompilation
2026-10-04 00:19:22 -05:00
Starlightbotanist 4ba37f1dde VideoCommon: Work around Adreno TEV zero input miscompilation
Some Qualcomm Android drivers from version 700 onward miscompile
specialized TEV pixel shaders when color input A or B is TevColorArg::Zero.
Use konstLookup[8].rgb, which PixelShaderManager initializes to zero,
to keep these inputs dependent on a uniform value.

Use the existing driver bug gate for OpenGL and Vulkan. Other inputs and
unaffected drivers retain their original shader expressions.
2026-10-04 00:25:01 -04:00
OatmealDome f70b2990ad Merge pull request #14891 from OatmealDome/shm-entry-begone
MemArenaDarwin: Eliminate use of mach_make_memory_entry_64
2026-10-03 21:14:38 -04:00
Admiral H. Curtiss 562875dd60 Merge pull request #14879 from jordan-woyak/infinity-window-adjustments
DolphinQt/InfinityBaseWindow: Minor adjustments.
2026-10-03 12:25:05 +02:00
Admiral H. Curtiss 8c16ea6c27 Merge pull request #14797 from acts-1631/security/netplay-buffer-limit
NetPlay: reject oversized input buffer messages
2026-10-03 11:08:09 +02:00
JosJuice af1ab20b35 Merge pull request #14812 from JoshuaVandaele/correct-env-locale
Fix crashes when using `std::locale{""}` with an invalid LC_ALL
2026-10-03 09:53:13 +02:00
Jordan Woyak f76238742c Merge pull request #14328 from JoshuaVandaele/choices-fix
DolphinTool: Show choices as metavars, and don't lie about defaults
2026-10-03 01:05:15 -05:00
Jordan Woyak a0c3ab78d3 Merge pull request #14772 from sepalani/mic-cleanup
EXI_DeviceMic: Cleanup and small improvements
2026-10-02 22:04:18 -05:00
Jordan Woyak 13e4143470 Merge pull request #14845 from Tilka/generate_coefs
generate_coefs.py: fix compatibility with modern NumPy
2026-10-02 20:29:53 -05:00
Jordan Woyak 8a40a9c01d Merge pull request #14897 from jordan-woyak/gba-button-bits
GBAPadEmu: Make GBAPad::GetInput use actual GBA button values.
2026-10-02 18:24:08 -05:00
JosJuice a475aba718 Merge pull request #14857 from ChaseParate/chaseparate-android-add-reset-menu-item
Android: Add reset item to emulation menu
2026-10-02 20:56:00 +02:00
Jordan Woyak 85a0740561 GBAPadEmu: Make GBAPad::GetInput use actual GBA button values rather than have SI_DeviceGBAEmu translate bits from GCPad to GBA. 2026-10-02 13:42:28 -05:00
Acts1631 1eca2ca31c NetPlay: reject oversized input buffer messages
A NetPlay host could send an arbitrary buffer size to a client. The
client then tried to allocate input states until it reached that value.

Limit buffer sizes to the existing user-interface maximum. Invalid peer
values are ignored.
2026-10-02 14:14:45 -04:00
Admiral H. Curtiss bd094a0de5 Merge pull request #14890 from lihanchen/master
Android: Fix UI text truncation in 4K TV UI
2026-10-02 19:58:16 +02:00
Jordan Woyak 5c2f8aec22 Merge pull request #14861 from matellush/flatpak/libevdev
Flatpak: Bump `libevdev` to `1.13.7`
2026-10-02 12:55:35 -05:00
Admiral H. Curtiss 418f0cb7d3 Merge pull request #14894 from jordan-woyak/petz-gamesettingz
GameSettings: Add some required settings for Petz games.
2026-10-02 19:53:48 +02:00
Admiral H. Curtiss 061f3e95bb Merge pull request #14863 from brad0/openbsd_getexecpath
Implement File::GetExePath() for OpenBSD with getexecpath()
2026-10-02 19:52:29 +02:00
Admiral H. Curtiss 8e7521c46e Merge pull request #14900 from VampireFlower/assembler-fix
Assembler: Fix crash from assembling malformed source
2026-10-02 19:50:37 +02:00
JMC47 24c80c5a32 Merge pull request #14590 from jordan-woyak/mmu-256-mem2
PowerPC/MMU: Change mask in DMA_LCToMemory and DMA_MemoryToLC functions to allow for a 256MiB MEM2.
2026-10-02 06:29:32 -04:00
Jordan Woyak b34a2a0513 GameSettings: Add some required settings for Petz games. 2026-10-02 04:09:20 -05:00
Jordan Woyak 045c19b256 Merge pull request #14855 from JordanTheToaster/SDL-Has-Shoes-Now
Externals/SDL: Update to release-3.4.16
2026-10-02 03:48:19 -05:00
Jordan Woyak 8fe19d1118 Merge pull request #14860 from JoshuaVandaele/inputsyntax-nodecimal
Input Syntax: Add floor, ceil, round, and trunc functions
2026-10-02 03:47:24 -05:00
JMC47 5390a61e52 Merge pull request #14880 from ICEREG1992/GBARouting
Integrated GBA Audio Routing
2026-10-02 01:58:20 -04:00
JMC47 048e6306b8 Merge pull request #14717 from SuperSamus/skylanders-swap-force-speed-hack
GameSettings: Add speed hack for Skylanders: Swap Force
2026-10-01 16:37:58 -04:00
Martino Fontana 0b4ebbfb94 GameSettings: Add speed hack for Skylanders: Swap Force 2026-10-01 15:12:54 +00:00
JosJuice 003c61b78b Vulkan: Fetch driverVersion
For use with DriverDetails.
2026-09-30 18:37:01 -04:00
JosJuice 771fb15405 Merge pull request #14870 from LillyJadeKatrin/retroachievements-allowlist-update
RetroAchievements - Additional Code Approvals
2026-09-30 19:06:22 +02:00
VampireFlower 902587cae2 Assembler: Fix crash from assembling malformed source 2026-09-30 04:04:23 -06:00
JosJuice 5102a0339c Merge pull request #14893 from tom-pratt/android-settings-crash
Fix android settings crash on API level 28 and lower
2026-09-28 08:24:28 +02:00
JosJuice bb3558a70e Merge pull request #14892 from JosJuice/android-abis
Android: Set abiFilters for ndk
2026-09-27 22:00:00 +02:00
JosJuice 5f395ab792 Android: Set abiFilters for ndk
Normally, Dolphin APKs have a lib folder that contains two subfolders:
arm64-v8a and x86_64. Both contain a libmain.so file, and arm64-v8a also
contains additional .so files for libadrenotools.

When we added netplay support for Android, we brought in Jetpack Compose
as a dependency, which in turn made libandroidx.graphics.path.so be
included in Dolphin APKs. Unfortunately, this .so file was included not
only for arm64-v8a and x86_64, but also for armeabi-v7a and x86. This
made Dolphin installable on devices that use one of these older ABIs,
but because libmain.so is missing, trying to start Dolphin on such a
device results in an instant crash. We have gotten a number of Google
Play reviews from armeabi-v7a users complaining about this crash.

This fixes the problem by setting abiFilters under ndk instead of under
cmake, as documented at https://developer.android.com/ndk/guides/abis.
2026-09-27 21:31:29 +02:00
Tom Pratt b5748b81d6 Fix android settings crash on API level 28 and lower
These API levels don't allow color selectors to be used as backgrounds.

Switch to MaterialDivider and set the color via dividerColor instead of background.
2026-09-27 21:04:53 +02:00
OatmealDome da76f651ec MemArenaDarwin: Eliminate use of mach_make_memory_entry_64 2026-09-27 13:59:01 -04:00
Lilly Jade Katrin d51d80b9ec RetroAchievements - Additional Code Approvals
A handful of requested Gecko/AR codes and approvals for use with RetroAchievements.
2026-09-27 10:19:44 -04:00
Hanchen Li a975e7a235 Fix UI text truncation in 4K TV UI 2026-09-26 16:59:44 -07:00
Admiral H. Curtiss 465c652da1 Merge pull request #14887 from SuperSamus/statistics-unsigned-members
VideoCommon/Statistics: Use unsigned int where appropriate
2026-09-24 23:42:38 +02:00
Martino Fontana 910eeffc08 VideoCommon/Statistics: Use unsigned int where appropriate
Some poorly coded games are able to overflow some statistics (e.g. Jimmy Neutron: Boy Genius's title screen).
While funny, signed integer overflow is undefined behavior, and while in practice here it's extremely unlikely to cause issues, it's still better to avoid it.
2026-09-24 12:05:18 +02:00
OatmealDome 0d93fc0355 Merge branch 'release-prep-2609' 2026-09-23 23:53:19 -04:00
OatmealDome f84df02055 ScmRevGen: Bump version to 2609 2609 2026-09-23 18:24:53 -04:00
OatmealDome d085f97001 Merge branch 'release-prep-2606a' into release-prep-2609 2026-09-23 18:24:19 -04:00
Jordan Woyak 9599525ea1 PowerPC/MMU: Changed mask in DMA_LCToMemory and DMA_MemoryToLC functions to allow for a 256MiB MEM2.
Also adjusted maximum value for MEM2 to 256 MiB for Qt and Android UIs.
2026-09-21 13:37:59 -05:00
JosJuice 233b2dfe6d Translation resources sync with Transifex 2026-09-21 20:16:25 +02:00
JosJuice 4619af1be0 Merge pull request #14883 from AdmiralCurtiss/zelda-hle-voice-flags
DSPHLE/Zelda: Add bounds check for m_sync_voice_skip_flags in RenderAudio()
2026-09-21 18:23:48 +02:00
JosJuice 22342c2303 Merge pull request #14882 from JosJuice/gci-folder-block-index
GCMemcardDirectory: Add bounds check for m_save_data
2026-09-21 18:23:39 +02:00
JosJuice 42cc8c040c Merge pull request #14862 from matellush/flatpak/discord-rich-presence
Flatpak: Fix Discord rich presence
2026-09-20 23:11:40 +02:00
Admiral H. Curtiss b84323e108 DSPHLE/Zelda: Add bounds check for m_sync_voice_skip_flags in RenderAudio() 2026-09-20 22:51:17 +02:00
JosJuice 8f674f574a Merge pull request #14833 from JosJuice/state-nand-tas
IOS/FS: Fix loading savestate while TASing
2026-09-20 22:30:42 +02:00
JosJuice f8a5c5c10b GCMemcardDirectory: Check if UsesBlock result is non-negative
The only negative result UsesBlock can return is -1, so this change
doesn't affect anything in practice, but makes the intent a little bit
clearer.
2026-09-20 22:18:45 +02:00
William Sullivan 0e6e00b1ef Integrated GBA Audio Routing 2026-09-20 15:10:16 -05:00