Commit Graph

38494 Commits

Author SHA1 Message Date
JMC47
932769c4e2 Merge pull request #14110 from jordan-woyak/mgba-joybus-threading
HW/GBACore: Adjust joybus interthread communication to use WorkQueueThreadSP.
2026-03-27 20:42:06 -04:00
JMC47
04fd45a960 Merge pull request #14522 from jordan-woyak/hsp-log-desc
LogManager: Remove redundant "(HSP)" in High-Speed Port's log type descritpion.
2026-03-27 13:06:17 -04:00
Jordan Woyak
1b9a01f168 LogManager: Remove redundant "(HSP)" in High-Speed Port's log type descritpion. 2026-03-27 11:24:14 -05:00
Jordan Woyak
efa0140791 State: Increase STATE_VERSION. 2026-03-26 16:04:21 -05:00
Jordan Woyak
d76757bba6 HW/GBACore: Adjust joybus interthread communication to use WorkQueueThreadSP. 2026-03-26 16:03:59 -05:00
Jordan Woyak
1ee8c5a8f1 Common/WorkQueueThread: Make IsRunning function public. 2026-03-26 16:03:59 -05:00
Dentomologist
d16004c371 Merge pull request #14446 from Dentomologist/gamelist_add_game_count
GameList: Add status bar with game count
2026-03-26 14:00:52 -07:00
JMC47
d95445727b Merge pull request #14501 from jordan-woyak/triforce-jvs-io
Triforce: Rewrite JVS IO board emulation.
2026-03-26 14:53:24 -04:00
Jordan Woyak
a3f4674bb7 Merge pull request #14511 from Ma-Rang/pr/nogui-escape-win32
NoGUI: Add Escape key to request emulation shutdown on Windows
2026-03-26 07:06:36 -05:00
Jordan Woyak
02911dbc42 State: Increase STATE_VERSION. 2026-03-26 07:02:19 -05:00
Jordan Woyak
5ec42165b7 Triforce: Rewrite JVS IO board emulation.
Moved JVS IO emulation from SI_DeviceAMBaseboard into new JVSIOBoard class.
Sega/Namco board-specific functionality is handled by derived JVSIOBoard classes.
Game input is now sourced from IOPorts rather than being hard coded into JVS IO handlers.
SI_DeviceAMBaseboard: Use IOPorts for status switch input.
2026-03-26 07:02:19 -05:00
Jordan Woyak
5c912e881e IOPorts: Add additional functionality to handle analog input, coin input, et al.
Created IOAdapter classes for FZeroAX games.
Created SerialDevice classes for MarioKartGP and FZeroAX FFB steering wheels.
Added game-specific input handling to the various IOAdapter classes.
2026-03-26 06:38:31 -05:00
Jordan Woyak
49518164bb Triforce/Touchscreen: Fix LOG type. 2026-03-26 06:38:31 -05:00
JMC47
3c8a72eb18 Merge pull request #14470 from cristian64/triforce_volume_region_fix
Triforce: Check only first byte in region flag.
2026-03-25 17:47:20 -04:00
JMC47
88b7ad74d9 Merge pull request #14462 from jordan-woyak/mediaboard-span
AMMediaboard: Add GetSpanForMediaboardAddress function to eliminate hardcoded network buffer base addresses.
2026-03-25 13:45:47 -04:00
JMC47
dcbcfed12a Merge pull request #14499 from JosJuice/gpu-desync-no-report
Remove "please report it to the developers" from unknown opcode message
2026-03-25 13:31:55 -04:00
Ma-Rang
7ef7b6e3e9 NoGUI: Add Escape key to close emulation on Windows
PlatformX11 already handles XK_Escape to trigger RequestShutdown().
Add the equivalent WM_KEYDOWN / VK_ESCAPE handler to PlatformWin32
for parity.
2026-03-25 08:56:29 -05:00
Dentomologist
81192d96cf Merge pull request #14498 from JosJuice/invalid-access-wording
Reword the invalid read/write panic alert
2026-03-24 20:07:47 -07:00
Simonx22
9085d649dc Android: Add Keep annotation to JNI-exposed PermissionsHandler methods
This fixes an oversight from https://github.com/dolphin-emu/dolphin/pull/14488 where I forgot to add `@Keep` to JNI-exposed methods. R8 tried to optimize it and thought those methods were unused.
2026-03-24 18:42:19 -04:00
JosJuice
ff4a7c8a95 Reword the invalid read/write panic alert
Some users seem to be under the impression that the panic alert is
saying that enabling MMU will fix the issue, but that's not what it
actually says. Let's try to make this a bit clearer.
2026-03-24 22:25:01 +01:00
JosJuice
cfa6ec806e Merge pull request #14504 from Simonx22/android/agp-r8-bug
Android: Pin R8 9.1.34 to fix release minify crash
2026-03-24 21:39:05 +01:00
Simonx22
336f604b3a Android: Pin R8 9.1.34 to fix release minify crash
Override AGP-bundled R8 in settings.gradle.kts:
- classpath("com.android.tools:r8:9.1.34") from r8-releases/raw

This resolves :app:minifyReleaseWithR8 failing with:
java.lang.IndexOutOfBoundsException: Index -1 out of bounds for length 0

Bug report: https://issuetracker.google.com/issues/495458806

Co-Authored-By: OatmealDome <julian@oatmealdome.me>
2026-03-24 07:50:45 -04:00
Dentomologist
f5dfb7e3d3 AudioCommon: Use left const for non-pointer variables 2026-03-23 16:30:30 -07:00
Jordan Woyak
c05b231015 Merge pull request #14496 from Dentomologist/audiopane_fix_wasapi_default_device_combo_selection
AudioPane: Fix WASAPI default device combo selection
2026-03-23 15:27:29 -05:00
Jordan Woyak
cddffd2e2a Merge pull request #14497 from JosJuice/linux-gba-select
Fix default GBA Select binding on Linux
2026-03-22 16:11:25 -05:00
OatmealDome
6608bca694 Merge pull request #14476 from Simonx22/android/version-catalog-latest-deps
Android: Use version catalog and update dependencies
2026-03-22 12:13:10 -04:00
OatmealDome
9ba08f70bc Merge pull request #14489 from Simonx22/android/convert-applinkhelper-to-kotlin
Android: Convert AppLinkHelper to Kotlin
2026-03-22 12:12:50 -04:00
OatmealDome
125bc173bb Merge pull request #14491 from Simonx22/android/convert-syncchanneljobservice-to-kotlin
Android: Convert SyncChannelJobService to Kotlin
2026-03-22 12:12:41 -04:00
OatmealDome
4a813a019b Merge pull request #14495 from Simonx22/android/convert-startuphandler-to-kotlin
Android: Convert StartupHandler to Kotlin
2026-03-22 12:12:30 -04:00
JosJuice
f2055fe0b8 Remove "please report it to the developers" from unknown opcode message
I think we've gotten all the useful reports we can get from this now.
Nowadays we're just getting repeated reports of issues we already know
about, like https://bugs.dolphin-emu.org/issues/12321.
2026-03-22 14:23:46 +01:00
JosJuice
5af4fedd92 Fix default GBA Select binding on Linux 2026-03-22 13:51:01 +01:00
JMC47
85e63dc32f Merge pull request #14482 from jordan-woyak/triforce-ic-card
Triforce: ICCardReader and DeckReader improvements.
2026-03-21 23:57:05 -04:00
Dentomologist
6b2a8eff15 AudioPane: Fix WASAPI default device combo selection
Set the default value of `Config::MAIN_WASAPI_DEVICE` to `default`
instead of `Default`. This fixes an issue where `AudioPane`'s `Output
Device` combo would be blank if `WASAPI` was selected and the user had
never changed the value of `Output Device`.

We don't have to worry about backward compatibility with users who have
`Default` in their config because config values aren't written unless
they've been changed at some point from the default, and the combo has
always saved `default` instead of `Default`.

Audio still worked during emulation in this situation because the
fallback for an unrecognized device name is the default device.

To help prevent similar situations in the future references to
`MAIN_WASAPI_DEVICE`'s default value now call `GetDefaultValue` instead
of hardcoding the expected default, or use the new helper function
`Config::IsDefaultValue`.
2026-03-21 15:07:42 -07:00
OatmealDome
0e92a14703 Merge pull request #14488 from Simonx22/android/convert-permissionshandler-to-kotlin
Android: Convert PermissionsHandler to Kotlin
2026-03-21 12:14:53 -04:00
OatmealDome
d572931213 Merge pull request #14487 from Simonx22/android/convert-insetshelper-to-kotlin
Android: Convert InsetsHelper to Kotlin
2026-03-21 12:14:40 -04:00
Simonx22
71f40469be Android: Convert SyncChannelJobService to Kotlin 2026-03-21 11:29:09 -04:00
Simonx22
936a828cb7 Android: Convert AppLinkHelper to Kotlin 2026-03-21 11:25:42 -04:00
Simonx22
e878174235 Android: Use version catalog and update dependencies
Migrate plugin and dependency versions to a Gradle version catalog and update dependencies to their latest available versions.
2026-03-21 10:50:34 -04:00
TellowKrinkle
56845b2b93 VideoCommon: Fix no mips hack 2026-03-21 00:35:06 -05:00
Simonx22
b5b5b6fb7d Android: Convert StartupHandler to Kotlin 2026-03-20 13:14:06 -04:00
Simonx22
385ac49109 Android: Convert PermissionsHandler to Kotlin 2026-03-20 13:01:54 -04:00
Simonx22
b4933d3799 Android: Convert InsetsHelper to Kotlin 2026-03-20 12:59:27 -04:00
Jordan Woyak
680ee9b65f State: Increase STATE_VERSION. 2026-03-19 21:35:31 -05:00
Jordan Woyak
85400539ba Triforce: ICCardReader and DeckReader improvements.
Significantly rewrote ICCardReader and DeckReader functionality.
Dual IC card slots of VirtuaStriker4 + Gekitou now work.
IC cards are automatically inserted/ejected in VirtuaStriker4 + Gekitou + Avalon.
IC card data is saved to a file.
Avalon deck contents are loaded from a JSON file.
Added IOPorts class to handle bespoke GPIO functionality.
2026-03-19 21:35:31 -05:00
Jordan Woyak
b5bc70a6cc Triforce/SerialDevice: Add PassThroughTxBytes function and some minor cleanups. 2026-03-18 22:39:12 -05:00
Jordan Woyak
816e3a654a MagneticCardReader: Simplify checksum logic. 2026-03-18 22:39:12 -05:00
Jordan Woyak
7fbe96d42e SI_DeviceAMBaseboard: Remove "card system" from JVS-IO board features. It doesn't seem to be accurate (or related to the Magnetic/IC cards) and it causes warnings in the JVSIOCommand::CoinInput handler. 2026-03-18 22:39:12 -05:00
Jordan Woyak
f074cdb08b Merge pull request #14237 from JulienBernard3383279/gcc-adapter-hotswap
GC adapter fixes (hotplugging, claim retries, Dolphin shutdown)
2026-03-18 16:56:30 -05:00
Jordan Woyak
c9c4b79a7e AMMediaboard: Prevent MediaBoardRange end from exceeding the underlying buffer size. 2026-03-18 04:54:05 -05:00
Jordan Woyak
2640f194f7 AMMediaboard: Add a GetSpanForMediaboardAddress function to eliminate the hardcoded network buffer base addresses. 2026-03-18 04:54:05 -05:00