Updated packages:
- DynamicData | 9.4.31 -> 9.4.33
- Humanizer | 2.14.1 -> 3.0.10
- System.IO.Hashing | 9.0.15 -> 10.0.9
- Ryujinx.SDL3-CS | 2026.501.0 -> 2026.707.0
These packages were not updated because they were updated in !155
- Microsoft.NET.Test.SDK
- NUnit
- NUnit3TestAdapter
These packages were not updated because they rely !82 and !155 changes.
- SkiaSharp.NativeAssets
- Should hopefully resolve issues with missing FontConfig on NixOS once it's updated.
Added rules to dependency management:
- Packages are to be on the latest stable version unless we require improved functionality from in-dev packages or regressions occur in future releases. This is to minimize issues with dependencies and improve reliability, speed, security, etc. Renovate can take care of smaller updates automatically, but all major version changes must be reviewed before committing.
- Packages are to be listed based on category, then alphabetically.
- Spacing is applied based on judgement, but generally speaking packages that are a part of a larger framework or must be updated together (or are misc. in that category) are grouped together.
Added TODO items based on necessary refactors.
- Avalonia 12 | addressed in !82.
- SkiaSharp
- Microsoft.CodeAnalysis.Analyzers
- OpenTk.Audio
Made it very clear not to touch Unicorn. !155 for details.
Reviewed-on: https://git.ryujinx.app/projects/Ryubing/pulls/170
- Attempted fixing the strength: so far it hasn't been successful.
- Rumble should skip vibrations if they're not in-line with poll-rate: would like to come back to this. Queuing just does exactly what the hid buffer does, but our timer (poll rate) is not in sync with the rate the controller is reading at, which causes excess drops.
- Refactored the class so that implementing support for HD rumble for other controllers (DS5, Steam Controller) is much easier in the future.
Reviewed-on: https://git.ryujinx.app/projects/Ryubing/pulls/109
Did you know that the garbage collector's default settings are designed for single-threaded applications and quick start-up times? We don't care about either of these.
Configured:
- Concurrent GC (default is true) (set for clarity)
- RetainVM: segments that should be deleted are put on a standby list for future use (default is false)
- QuickJit: enabling quick JIT decreases startup time but can produce code with degraded performance characteristics; for example, the code may use more stack space, allocate more memory, and run slower. (default is true) (disabled)
- ReadyToRun: configures whether the .NET runtime uses pre-compiled code for images with available ReadyToRun data; disabling this option forces the runtime to JIT-compile framework code. (default is true) (set to false, we dont publish with this option anyway)
- TieredPGO: this setting enables dynamic (tiered) profile-guided optimization (PGO) in .NET 6 and later versions. If quick JIT is disabled but tiered compilation is enabled, only pre-compiled code participates in tiered compilation. If a method is not pre-compiled with ReadyToRun, the JIT behavior is the same as if tiered compilation were disabled.
Features:
- Set ``GCLatencyMode.Interactive`` when in-menu and emulator is paused, otherwise uses ``GCLatencyMode.LowLatency``.
- Added a new UI option in the Settings > CPU menu to toggle ``GCLatencyMode.LowLatency`` during guest runtime.

Reviewed-on: https://git.ryujinx.app/projects/Ryubing/pulls/88
- Added Onedrive folder check for Windows.
- Added iCloud and Downloads folder checks for macOS.
- Added sudo checks for macOS/Linux.
- Added dialogue prompts for macOS/Linux.
- Added unofficial build warning for detected Flatpak install.
These checks have console fallbacks in case the GUI decides it doesn't want to work that day.
Reviewed-on: https://git.ryujinx.app/projects/Ryubing/pulls/4
As described. Should hopefully bring speed-ups for macOS devices (thanks Ori!) and general improvements across the board for the vulkan backend (maybe).
This will be followed up with a PR from @KeatonTheBot.
Co-authored-by: V380-Ori <infiniteloop0finsanity@gmail.com>
Reviewed-on: https://git.ryujinx.app/projects/Ryubing/pulls/16
- Echoes of Wisdom (Warps)
- Super Mario Odyssey (Kingdoms)
- Super Mario Bros. Wonder (World & Course)
- Pokemon Scarlet/Violet (DLC & Accademy Rooms)
- Super Mario 3D All Stars (Game Selection) (Berry is working on track showcase)
Co-authored-by: berrydiaboli <anthonyhoffman54444@gmail.com>
Reviewed-on: https://git.ryujinx.app/projects/Ryubing/pulls/93
- Emio – The Smiling Man: Famicom Detective Club (DEMO)
- GROOVE COASTER WAI WAI PARTY!!!!
- Metroid Prime 4: Beyond
- Mute Crimson DX
- Pokémon Champions
- Pokémon FireRed Version
- Pokémon LeafGreen Version
- Tomodachi Life: Living the Dream
- Tomodachi Life: Living the Dream – Welcome Edtion
Reviewed-on: https://git.ryujinx.app/projects/Ryubing/pulls/94
Should allow Ring Fit and other games that rely heavily on the notification system to get in-game (?), needs testing.
if you're wondering what happened to the first branch -- no you're not. (duplicated history somehow??)
Reviewed-on: https://git.ryujinx.app/projects/Ryubing/pulls/6
Implemented a new debug log type called NetLog and added more verbose logging to the LDN service.
I'd like some feedback on what all should be logged under this category -- I'm likely going to be adding logs for sockets as well, but I want to know specifically if the logging should be more or less verbose and what would be the most helpful things to log.

Reviewed-on: https://git.ryujinx.app/projects/Ryubing/pulls/5
@MaxLastBreath found that The Legend of Zelda: Tears of the Kingdom experiences inconsistent crashing with a limited JIT cache size. Increasing the cache size seems to help with this, and increasing it shouldn't degrade performance for other titles.
@LotP plans to look this over later, but for now, this should suffice as a fix for affected users.
Reviewed-on: https://git.ryujinx.app/projects/Ryubing/pulls/22
@Schuay asked for a revert: see [here](https://github.com/Ryubing/Issues/issues/394#issuecomment-4359848762)
revert Disable SDL3 HIDAPI Switch driver when hid_nintendo is loaded
On Linux, the hid_nintendo kernel module creates separate evdev
devices for gamepad input and IMU (motion sensors), which SDL3's
evdev backend properly combines. When HIDAPI is active instead, it
conflicts with the kernel driver, breaking motion/gyro input and
controller hotplugging (especially via wireless dongles).
Automatically detect hid_nintendo via /sys/module and fall back to
the evdev backend. Can still be overridden with the env var
SDL_JOYSTICK_HIDAPI_SWITCH=1.
Reviewed-on: https://git.ryujinx.app/projects/Ryubing/pulls/46