Commit Graph
46025 Commits
Author SHA1 Message Date
cristian64 24ad562871 Core: Add Volume::GetSimulatedMemorySize().
The data structure of the `bi2.bin` file in which the simulated memory
size is set:

> **13.2  Disk header Information**
>
> this is loaded to the Address in `0x800000f4` when a disc is initialized by the IPL
>
> |  offset  | end | size | Description           |
> | :------: | --- | :--: | --------------------- |
> | `0x0000` |     |   4  | Debug-monitor Size    |
> | `0x0004` |     |   4  | Simulated Memory Size |
> | `0x0008` |     |   4  | Argument offset       |
> | `0x000c` |     |   4  | Debug flag            |
> | `0x0010` |     |   4  | Track Location        |
> | `0x0014` |     |   4  | Track size            |
> | `0x0018` |     |   4  | Countrycode           |
> | `0x001c` |     |   4  | ?                     |

See https://hitmen.c02.at/files/yagcd/yagcd/chap13.html#sec13.2.

Most GameCube games set the value to `24 MiB`, which matches the
physical memory size. Most Wii games set the value to `0 MiB` (unset).
The debug build of _Mario Kart: Double Dash!!_ is one game that sets the
value to `48 MiB`.
2026-07-11 23:02:54 +01:00
Dentomologist a18fd2d21b ResourcePackManager: Erase Removed pack from list and table
Erase a removed pack from ResourcePack::<anonymous namespace>::packs
instead of only deleting the pack file from the disk.

This causes the repopulated table to actually display that the pack has
been removed (which previously only happened after restarting Dolphin or
hitting `Refresh`), and also removes the pack from the `Packs.ini` file.
2026-07-11 12:49:35 -07:00
Dentomologist 37dd6c287e ResourcePackManager: Fix crash when removing pack
Avoid accessing destroyed `QTableWidgetItem` by retrieving the desired
path from the item before it's destroyed.

In `ResourcePackManager::Remove` pointers to the selected items in `m_table_widget`
were saved in the local variable `items` before calling `Uninstall`.
`Uninstall` called `RepopulateTable` which called
`m_table_widget->clear()`, destroying the table's descendants.  Upon
returning to `Remove` `items` then pointed to some of those destroyed descendants, and
passing `items[0]` to `GetResourcePackIndex` resulted in a call to
`item->row()` which was a use-after-free.

Fixes https://bugs.dolphin-emu.org/issues/14095.
2026-07-11 12:35:47 -07:00
idkwhere1sthisname 8873338b8d allow Wii System Transfer and WagonCompat to call ES_SetUID 2026-07-11 19:10:20 +02:00
Simonx22 c93af1d3f9 Android: Convert ContentHandler to Kotlin and fix warnings 2026-07-11 12:33:11 -04:00
Dentomologist 6de526c684 Merge pull request #14716 from tom-pratt/chat-message-colours
Android: Coloured netplay chat messages
2026-07-09 12:25:06 -07:00
Scott Mansell aaeb6e5dc1 Merge pull request #14479 from JoshuaVandaele/dsp_interc_rm
docs/DSP: Remove DSP_InterC
2026-07-09 13:35:35 +12:00
Dentomologist 2e07d3b4a8 Merge pull request #14702 from JosJuice/android-vibration-usage
Android: Set USAGE_MEDIA for rumble
2026-07-08 17:25:54 -07:00
JosJuice 424269ed4b Android: Silence deprecation warnings in ControllerInterface
We have to use the deprecated APIs when running on old devices.
2026-07-08 23:13:07 +02:00
JMC47 f93f69a1e5 Merge pull request #14688 from SuperSamus/retroachivements-speedhacks-approve
GameSettings: Approve speed hacks for RetroAchievements
2026-07-08 14:47:57 -04:00
Martino Fontana a5f6ba81fa GameSettings: Approve speed hacks for RetroAchievements
Some of the speed hacks were not approved for RetroAchievements, meaning that users had to choose between not getting hardcore achievements, or having poor performance.

Also, renamed the instances of `$Limit internal FPS to VPS (improves performance)` to `$Limit internal frame rate (speed hack)` for consistency. They are enabled by default, so unless the user disabled them, it won't break the configuration.
2026-07-08 18:10:42 +02:00
JMC47 485f5cae55 Merge pull request #14712 from tom-pratt/use-upnp-android
Android: Enable USE_UPNP in android builds
2026-07-08 11:49:19 -04:00
JMC47 77e92d042c Merge pull request #14207 from cscd98/lower-case
mingw: lower case windows includes
2026-07-08 11:48:24 -04:00
JMC47 33dd4a1181 Merge pull request #14260 from cscd98/cpp-ipc-update
Externals: Update cpp-ipc to latest
2026-07-08 11:48:01 -04:00
Craig Carnell e222665eb0 mingw: lower case windows includes 2026-07-08 09:18:29 +01:00
Tom Pratt 11cf49de06 Android: Coloured netplay chat messages 2026-07-07 23:26:06 +02:00
tommywaaf 342115806b Android: Route DolphinBar Balance Board to the Balance Board slot
WiimoteScannerAndroid::FindAttachedWiimotes() added every device
connected through the DolphinBar to the Wii Remote results, with a
TODO noting that balance boards were not differentiated. As a result,
a Wii Balance Board connected through the DolphinBar was always
assigned to a Wii Remote slot (Player 1), and games that request a
Balance Board never detected it.

Use Wiimote::IsBalanceBoard() to route balance boards into the
balance_boards results, matching the Linux and Windows scanner
backends. Tested on an AYN Thor (Android 13) with a Mayflash
DolphinBar in Mode 4 running Wii Fit Plus: the board is now detected
in the Balance Board slot.
2026-07-06 19:58:42 -04:00
Dentomologist 774200dcf4 Merge pull request #14689 from JosJuice/android-internal-resolution-display
VideoCommon: Use XFB for internal resolution stats
2026-07-05 13:28:31 -07:00
JosJuice acf6060a54 Merge pull request #14417 from TryTwo/Cheat_Fix
Bugfix: Cheat codes:  Make newly added codes start disabled.
2026-07-05 17:45:27 +02:00
JosJuice 59d7547c2c Merge pull request #13216 from CelestialAmber/cw-demangler
Core: Implement automatic symbol demangling
2026-07-05 17:38:09 +02:00
JosJuice 2dfb23267c Merge pull request #14619 from JosJuice/no-si-change-device
Core: Remove SerialInterfaceManager::ChangeDevice
2026-07-05 17:33:02 +02:00
JosJuice d27d96a7ce Merge pull request #14623 from Simonx22/android/convert-eglhelper-to-kotlin
Android: Convert EGLHelper to Kotlin
2026-07-05 17:32:27 +02:00
JosJuice 0baa4ae6b1 Merge pull request #14624 from Simonx22/android/convert-filebrowserhelper-to-kotlin
Android: Convert FileBrowserHelper to Kotlin
2026-07-05 17:32:17 +02:00
JosJuice 0ce4436cd8 Merge pull request #14678 from JoshuaVandaele/alt-tools
MenuBar: Add missing Alt shortcuts in Tools
2026-07-05 17:31:17 +02:00
JosJuice 146f2be436 Merge pull request #14516 from Sintendo/jitarm64-subfzex
JitArm64: Minor subfzex optimizations
2026-07-05 17:29:57 +02:00
JosJuice 60c7606812 Merge pull request #14707 from SuperSamus/jit64-computerc-better-early-flush
Jit64: Early flush in ComputeRC even when `needs_test`
2026-07-05 17:00:03 +02:00
JosJuice f5d225691e Android: Set USAGE_MEDIA for rumble
This lets rumble work even if the user has turned off the Android
setting Sound and vibration > Vibration and haptics > Interactive
haptics > Touch feedback. Rumble can still be disabled through Dolphin's
controller bindings and through in-game settings (GameCube) or SYSCONF
(Wii).
2026-07-05 10:23:12 +02:00
JosJuice be1df92153 Rename "Show Internal Resolution" to "Show XFB Resolution"
To make it extra clear that this is measuring the XFB, not the EFB.
2026-07-05 10:20:15 +02:00
JosJuice db77b117d9 Android: Add missing graphics debug settings
These are available in DolphinQt, so let's make them available in the
Android GUI too.
2026-07-05 09:50:13 +02:00
JosJuice aff4d18d59 Move the code for the show internal resolution setting
fb4ff3e put all the code for the show internal resolution setting right
next to the code for the show FPS setting, presumably because an earlier
version of that commit had them next to each other in the GUI. It makes
more conceptual sense to put the code next to the code for the show
statistics settings, matching what the GUI looks like now.
2026-07-05 09:50:13 +02:00
JosJuice 6f72de3579 VideoCommon: Show internal resolution stats below VPS
It looked a bit out of place wedged in between the FPS and VPS.
2026-07-05 09:50:13 +02:00
JosJuice c958dbc46c VideoCommon: Use XFB for internal resolution stats
fb4ff3e added a statistics option to show the internal resolution, but
it just showed the total size of the EFB (which is always 640x528) times
the IR scale, so it didn't convey any useful information.

This commit instead makes the option use the size of the last XFB copy
(not multiplied by the IR scale), which changes based on the game's
rendering resolution.
2026-07-05 09:50:13 +02:00
JosJuice 5f372d6b1d VideoCommon: Reduce padding in PresentInfo
This makes the struct 8 bytes smaller.
2026-07-05 09:50:13 +02:00
Dentomologist 1a62cdca0e Windows: Fix command line output not displaying when using Git Bash
Check if Dolphin already has a handle for stdout or stderr before trying
to attach to the console of the parent process.

Previously, running Dolphin via Git Bash with options like `--help` or
`--version` wouldn't produce any output. This was the result of the fix
(1ce75ce217) for
https://bugs.dolphin-emu.org/issues/11042, before which output did work
for `Git Bash` but didn't for `Command Prompt` or `PowerShell`.
2026-07-03 21:55:23 -07:00
Dentomologist d8d37fdbc4 Merge pull request #14699 from JosJuice/android-vibrator-id-index
Android: Fix mixup between Vibrator id and index
2026-07-01 13:07:25 -07:00
Tom Pratt 6825a4a954 Enable USE_UPNP in android builds
The UI already exists in the Android netplay menu so just need to enable it in the build.
2026-07-01 15:59:46 +02:00
JosJuice 39ef77c716 Merge pull request #14710 from JosJuice/android-netplay-fix
Android: Fix release build
2026-06-30 19:00:06 +02:00
Admiral H. Curtiss 32cd349207 Merge pull request #14708 from JosJuice/state-path-encoding
State: Use proper path encoding conversion for OSD messages
2026-06-29 22:15:49 +02:00
JosJuice b1d81af9cb Android: Fix release build
We don't need to see Compose previews when making a release build, but
androidx.compose.ui.tooling.preview.Preview is referenced in the source
code nonetheless, so the build system needs to know what it is.
2026-06-29 18:47:10 +02:00
JMC47 e2ab15aa23 Merge pull request #14647 from tom-pratt/netplay
Android netplay
2026-06-28 12:38:55 -04:00
Admiral H. Curtiss be33a68335 Merge pull request #14658 from VampireFlower/patch-instruction-assemble
[Debugger]: Assemble instructions in the patch instruction dialog
2026-06-28 16:31:46 +02:00
JosJuice 2aba483a05 State: Use proper path encoding conversion for OSD messages
Otherwise Windows will use the system code page.
2026-06-28 15:18:31 +02:00
Martino Fontana e68a464efd Jit64: Early flush in ComputeRC even when needs_test
Example:
```
nand. r1, r2, r3
```
Assuming that none of these registers will be used again:
- Before #14278, all of them would be flushed on both sides of the branch.
- After #14278, r2 and r3 would have been flushed earlier, but r1 won't.
- With this, r1 is flushed in ComputeRC.
2026-06-28 14:45:20 +02:00
JosJuice d034d41fcc Merge pull request #14572 from jordan-woyak/ult-spider-man-imm-xfb
GameSettings: Don't force immediate XFB off in Ultimate Spider-Man.
2026-06-28 12:11:53 +02:00
JosJuice f2dd20ca40 Merge pull request #14577 from jordan-woyak/fight-for-ny-ini
GameSettings: Disable fast depth calc to fix missing text and allow immediate XFB in Def Jam: Fight for NY.
2026-06-28 12:11:32 +02:00
JosJuice 8038496a07 Merge pull request #14589 from Dentomologist/merge_tooltips_for_disabled_settings_into_balloontips
HacksWidget: Merge tooltips for disabled settings into balloontips
2026-06-28 12:10:54 +02:00
JosJuice 37d6f29e06 Merge pull request #14615 from Dentomologist/code_widgets_allow_mass_enabled_toggling
ARCodeWidget/GeckoCodeWidget: Add button to enable/disable all codes
2026-06-28 11:45:05 +02:00
JosJuice c560a510e2 Merge pull request #14610 from SuperSamus/tlzww-prerelease-demo-gameini
GameSettings: Add Wind Waker pre-release demo
2026-06-28 11:43:37 +02:00
JosJuice afdee595f6 Merge pull request #14198 from JosJuice/jit64-cmpxx-rb-comparand
Jit64: Improve cmpXX imm handling
2026-06-28 11:14:47 +02:00
JosJuice 9416eb9537 Merge pull request #14599 from naari3/fix/directoryblob-gc-triforce-alignment
DirectoryBlob: fix data alignment for GC/Triforce and skip Triforce DIMM memory range
2026-06-28 11:03:03 +02:00