Commit Graph
38791 Commits
Author SHA1 Message Date
JosJuice 99531cf509 Don't call OpenModeToAndroid in GBACore
`OpenModeToAndroid("r")` is conceptually wrong, since we're opening a
binary file. It should be either `OpenModeToAndroid("rb")` or just
`"r"`. But either way it evaluates to `"r"`, so this doesn't affect
behavior.
2026-04-01 08:19:53 +02:00
JosJuice 5167adc8df Android: Add GBA settings
The following settings were excluded:

* Port 1-4 ROM: We're only supporting Game Boy Player for now
* Save in Same Directory as the ROM: Implementation nightmare due to SAF
2026-03-31 23:40:54 -05:00
JosJuice c542279595 Android: Add SAF support for GBA ROM and BIOS files
SAF for save files is a huge can of worms because they're managed in a
more complicated way than asking the user to select an existing file,
so I won't be touching save files for now.
2026-03-31 23:40:54 -05:00
Jordan Woyak 5cacbcf6ea DolphinQt: Expose Game Boy Player ROM path on the GameCube config tab. 2026-03-31 23:40:54 -05:00
Jordan Woyak 657a6f0cff State: Increase STATE_VERSION for Game Boy Player. 2026-03-31 23:40:54 -05:00
Dentomologist 68ac3d651d AutoUpdate: Only set triggered flag if process creation succeeds
Don't set `s_update_triggered` if the updater process fails to be
created. This will allow users in that situation to try to start an
update later without having to restart Dolphin first.
2026-03-31 12:44:47 -07:00
Dentomologist f86bbc3b1d AutoUpdate: Don't start redundant update checks
Ignore any new update check requests if one is already in progress.
2026-03-31 12:44:47 -07:00
Vicki PfauandJordan Woyak 3ece5f7d7b HW/HSP: Add Game Boy Player device.
Co-authored-by: Jordan Woyak <[email protected]>
2026-03-30 22:29:11 -05:00
Jordan Woyak 461741e0ea ChunkFile: Add void* version of DoPointer. 2026-03-30 19:02:11 -05:00
Jordan Woyak 2f4badc357 HW/GBACore: Add some special handling for GBPlayer.
Set a fixed GBA-sized video buffer.
Don't connect audio output to Mixer.
Don't configure an SIODriver.
2026-03-30 19:02:11 -05:00
Jordan Woyak 19157cacd5 MainSettings: Add a fifth GBA ROM config path for GBPlayer. 2026-03-30 19:02:11 -05:00
JMC47 a95b18211b Merge pull request #14519 from cristian64/registers_widget_font_fixes
DolphinQt: Size adjustments in **Registers** widget based on selected debug font.
2026-03-30 17:18:21 -04:00
Dentomologist 6008526b14 Merge pull request #14530 from JosJuice/create-logs-folder
UICommon: Create User/Logs/ at startup
2026-03-30 11:58:20 -07:00
JosJuice 134f709f59 UICommon: Create User/Logs/ at startup
We used to create User/Logs/ as a side effect of creating
User/Logs/Mail/, but the creation of User/Logs/Mail/ was removed in
8cbfee2, so now nothing is creating User/Logs/ anymore. Let's explicitly
create it.
2026-03-30 20:04:58 +02:00
JMC47 e0fda9bb54 Merge pull request #14528 from jordan-woyak/gba-mixer-fix
AudioCommon/Mixer: Fix integrated GBA sample rate calculation and inverted stereo channels.
2026-03-30 12:34:16 -04:00
JMC47 c93c9dd407 Merge pull request #14526 from jordan-woyak/gbacore-stuff
HW/GBACore: Improvements.
2026-03-30 12:30:37 -04:00
Jordan Woyak e7e6c0990d AudioCommon/Mixer: Fix integrated GBA sample rate calculation and inverted stereo channels.
Give MixerFifo a variable sample rate dividend.
Handle byte-swapping and stereo channel construction outside of MixerFifo to better handle the custom layouts of each stream.
2026-03-30 08:37:37 -05:00
Sepalani be0fdd85b9 AMMediaboard: Fix sequence-point warning 2026-03-30 11:10:13 +04:00
Jordan Woyak 84dd2304d6 HW/GBACore: Allow save states to work when the GBA core is stopped. 2026-03-29 11:23:09 -05:00
Jordan Woyak de0999a19c HW/GBACore: Make the Flush function public and add additional getters. 2026-03-29 11:20:43 -05:00
Jordan Woyak f103155658 HW/GBACore: Expose the ability to run for a single frame. 2026-03-29 11:15:03 -05:00
Jordan Woyak 1ab57199e6 HW/GBACore: Allow running without the GBA bios. 2026-03-29 11:15:03 -05:00
Jordan Woyak c197f18a46 HW/GBACore: Enable GB/GBC ROM loading. 2026-03-29 11:15:03 -05:00
JMC47 67f1afeb74 Merge pull request #14517 from jordan-woyak/event-functor
CoreTiming: Change TimedCallback to a Common::MoveOnlyFunction.
2026-03-28 16:19:28 -04:00
Tillmann Karras 51e488e84a VideoCommon: ignore zero-stride EFB/XFB copies
just clear if requested
2026-03-28 03:05:08 +00:00
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
cristian64 a051acec91 DolphinQt: Size adjustments in **Registers** widget based on selected debug font.
- Row height is no longer hardcoded to `24`; instead, the height is
  determined by the font height of the currently selected debug font.
- Header height has been reduced (a factor of the font height) as it
  only serves as a column resizer.
- A `OnDebugFontChanged()` slot has been connected to properly update
  the widget on debug font changes.

| Before | After |
| --- | --- |
| <img alt="Registers widget (before)" title="Registers widget (before)" src="https://github.com/user-attachments/assets/8a6644f9-1081-4ac8-9fff-c79ddb73e103" /> | <img alt="Registers widget (after)" title="Registers widget (after)" src="https://github.com/user-attachments/assets/67f799d0-8afd-4081-bb40-3d7a76ddc705" /> |
2026-03-27 09:30:31 +00:00
iwubcode 6b7a9e6ac3 VideoCommon: allow graphics mods to be added to sub folders 2026-03-26 20:13:16 -05:00
iwubcode 9cde551e29 VideoCommon: watch the user and system graphics mods directories for modified assets 2026-03-26 20:13:16 -05:00
iwubcode 1f72403ec7 VideoCommon: optionally apply materials to EFBs
After an EFB operation is turned into a texture, if there is a graphics mod action that provides a custom material, update the EFB texture with the material
2026-03-26 20:13:16 -05:00
iwubcode 7bfd43eb1a VideoCommon: update CustomPipelineAction to get a Material when an EFB is received 2026-03-26 20:13:16 -05:00
iwubcode 2d8f955851 VideoCommon: enhance 'CustomResourceManager' for post processing
This expands the interface of 'CustomResourceManager' to get a Material for post processing a frame buffer (currently EFB).  The flow is similar to the normal draw material but distinguishes itself by not needing a UID.  The full shader is much simpler than the draw shader and is currently put inline with the shader resource.
2026-03-26 20:13:16 -05:00
Jordan Woyak c658e7678b HW/SI: Replace DeviceEventCallback with a lambda. 2026-03-26 19:37:33 -05:00
Jordan Woyak 670a5df7ce CoreTiming: Change TimedCallback to a Common::MoveOnlyFunction. 2026-03-26 19:29:25 -05:00
iwubcode 6ba2d2e081 VideoCommon: update graphics mod action interface
* Add a 'AfterEFB' function to graphics mod action that can return a Material
* Rename previous EFB graphics mod function to 'BeforeEFB' to differentiate from 'AfterEFB'
* Rename previous XFB graphics mod function to 'BeforeXFB' to mirror EFB
2026-03-26 18:52:01 -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