2126.1-rc1Pre-releaseDesktopAndroid
Azahar 2126.1 Release Candidate 1
Added 3
- Save states are now locked to the version of Azahar that they were created with
- Increase highest available internal resolution scaling setting from 10x to 18x
- Implement geometry shader output register banking
Changed 2
- Improve exception handler dialog to contain more useful debugging information
- Merge Wayland and non-Wayland AppImage for Linux into a single binary which includes Wayland support
Fixed 15
- Fix issue where audio time stretching was always applied regardless of whether the setting was enabled
- Fix issue where linear filtering was forcefully enabled with certain drivers, primarily on Android w/ Adreno
- Fix crash which could sometimes occur during multiplayer sessions due to thread-unsafe logic
- Fix issue which caused HLE audio emulation to produce crackling in games that update looping PCM16 buffers while they are being played
- Fix issue where Game Boy/Game Boy Color virtual console titles would have part of the Virtual Console menu graphic incorrectly drawn off to the right edge of the screen
- Fix issue where texture surfaces could be deleted while in use, especially at larger internal resolution settings
- Fix crash in Teenage Mutant Ninja Turtles: Danger of the Ooze when using the Vulkan renderer due to inaccurate handling of rasterizer cull mode
- Fix issue which caused excessive lag in the character select screen for Super Smash Bros 4
- Fix issue which caused excessive lag in Mini Mario & Friends: Amiibo Challenge when walking on diagonal surfaces
- Fix regression which caused the 3DS friends menu to crash when opened
- Fix floating point denormal accuracy
- Fix issue where the 3DS Internet Browser would freeze due to incorrect core rescheduling behaviour
- Fix regression in Android where the Expand to Cutout Area setting did not work correctly
- Fix issue which would cause Azahar to crash if a save state was loaded after being launched from a 3rd-party frontend
- Fix issue where Azahar would crash if it had not yet performed initial setup and a 3rd-party launcher attempted to start it
From Azahar
All
- Fixed an issue where audio time stretching was always applied regardless of whether the setting was enabled. | @PabloMK7 #2439
- Fixed an issue where linear filtering was forcefully enabled with certain drivers, primarily on Android w/ Adreno. | @PabloMK7 #2445
- Fixed a crash which could sometimes occur during multiplayer sessions due to thread-unsafe logic. | @PabloMK7 #2405
- Fixed an issue which caused HLE audio emulation to produce crackling in games that update looping PCM16 buffers while they are being played. | @Angelico2102 #2454
- This is known to address audio issues in "Inazuma Eleven 3".
- Fixed an issue where Game Boy/ Game Boy Color virtual console titles would have part of the Virtual Console menu graphic incorrectly drawn off to the right edge of the screen. | @Davey-Hughes #2459
- Improved the exception handler dialog to contain more useful debugging information. | @ExplosBlue #2419
Android
- Fixed a regression in 2126.1-alpha1 where the "Expand to Cutout Area" setting didn't work correctly. | @OpenSauce04 #2447
- Fixed an issue which would cause Azahar to crash if a save state was loaded after being launched from a 3rd-party frontend. | @PabloMK7 #2452
- Fixed an issue where Azahar would crash if it had not yet performed initial setup and a 3rd-party launcher attempted to start it. | @PabloMK7 #2452
- Fixed various issues/ inaccuracies related to string translation tagging. | @OpenSauce04
Linux
- The Wayland and non-Wayland AppImage have now been once again merged into a single binary which includes Wayland support. This is due to the original crash issue which caused the split now being fixed. | @OpenSauce04 #2458
libretro
- Updated NDK version used to build the Android libretro core to 29.x
FreeBSD
- When building on FreeBSD, system libusb is now always used due to being bundled with the OS. | @sonphantrung #2281
Azahar 2126.1-rc1 Changelog
All
- Save states are now locked to the version of Azahar that they were created with. | @PabloMK7 #2394
- Attempting to load a save state from a different Azahar version will now display an error message explaining this restriction, and will also display the version of Azahar that the save state was originally created with, recommending temporarily downgrading to retrieve progress using the in-game save functionality if necessary.
- This does not limit save state usage compared to previous behaviour. Before this change, loading a save state from a previous version of Azahar would just crash the emulator. This change now gracefully shows a message instead.
- Fixed an issue where it was possible for texture surfaces to be deleted while in use, especially at larger internal resolution settings. | @Wunkolo #2407
- This change fixes Vulkan related crashes in many different games and situations. Most notably, when starting missions in Monster Hunter 4 Ultimate.
- The highest available internal resolution scaling setting has been increased from 10x (4000x2400) to 18x (7200x4320). | @72374 #1906
- Implemented a fix for a crash in Teenage Mutant Ninja Turtles: Danger of the Ooze when using the Vulkan renderer due to inaccurate handling of the rasterizer cull mode being set to an unusual value. | @PabloMK7 #2396
- Fixed an issue which caused excessive lag in the character select screen for Super Smash Bros 4. | @PabloMK7 #2412
- Fixed an issue which caused excessive lag in Mini Mario & Friends: Amiibo Challenge when walking on diagonal surfaces. | @PabloMK7 #2412
- Fixed a regression which caused the 3DS friends menu to crash when opened. | @PabloMK7 #2412
- Fixed a crash which could sometimes occur during multiplayer sessions due to thread-unsafe logic. | @PabloMK7 #2405
- Implemented optimizations to GPU command list processing which save 0.5-1ms of processing time per frame on average. | @PabloMK7 #2318
- Implement geometry shader output register banking, which fixes a lot of SEGA 3D Classics games without the need of per-game patches. | @PabloMK7 #2338
- The mentioned games still present other rendering issues that need to be fixed in future versions of the emulator.
- Fix floating point denormal accuracy, which fixes various rendering issues in several games. | @Wunkolo #2350
- Fixed an issue where linear filtering was forcefully enabled with certain drivers, primarily on Android w/ Adreno. | @PabloMK7 #2445
- Fixed an issue where the 3DS Internet Browser would freeze due to incorrect core rescheduling behaviour. | @PabloMK7 #2370
- Implemented an improvement to emulated audio handling which fixes crackling sounds which an audio source's volume is changed. @Grayforz2468 #2409
- Most notable example is the Home Menu no longer having crackling music.
- Fixed an issue which caused HLE audio emulation to produce crackling in games that update looping PCM16 buffers while they are being played. | @Angelico2102 #2454
- This is known to address audio issues in "Inazuma Eleven 3".
- Fixed an issue in the Vulkan renderer related to the handling of disabled cubemap texture units. | @Wunkolo #2406
- This brings over a fix which was previously applied to the OpenGL renderer in a previous update.
- Fixed an invalid memory access issue related to uds beacons. May fix undiscovered issues in certain multiplayer games. | @PabloMK7 #2403
Windows (MXE)
- Fixed crash which could occur when trying to launch any app with the Vulkan renderer while using the MXE build. | @OpenSauce04 #2392
- Fixed an issue where frame pacing could be inconsistent when using the MXE build. | @OpenSauce04 #2392
Desktop
- The minimum motion control sensitivity value has been reduced from 0.01 to 0.001. | @ParadiseOfMagic #2383
Linux
- The Wayland and non-Wayland AppImage have now been once again merged into a single binary which includes Wayland support. This is due to the original crash issue which caused the split now being fixed. | @OpenSauce04 #2458
- Implemented a measure to help avoid having a missing application icon with certain desktop environment setups. | @Kyuyrii #1727
Android
- Upgraded target Android SDK from Android 15 (35) to Android 17 (37). | @OpenSauce04 #2416
- Fixed various edge-case crashes related to surface handling which could occur at game boot, during screen rotation, during app suspension, or during save state loading. | @PabloMK7 #2425
- Fixed an issue where debug builds of Azahar on Android would instantly crash due to a logic error relating to configuration validation. | @PabloMK7 #2398
- Fixed an issue where, if a 3DS application closed itself or encountered a fatal error and the user selected "Abort", the emulator would crash instead of returning to the application menu. | @PabloMK7 #2399
- Fixed an issue which would cause Azahar to crash if a save state was loaded after being launched from a 3rd-party frontend. | @PabloMK7 #2452
- Fixed an issue where Azahar would crash if it had not yet performed initial setup and a 3rd-party launcher attempted to start it. | @PabloMK7 #2452
- Fixed various issues/ inaccuracies related to string translation tagging. | @OpenSauce04
macOS
- Enabled Liquid Glass interface elements on macOS 26. | @OpenSauce04 #2429
- Fixed an issue when using macOS 27 where connecting to local network devices such as a real 3DS would always fail (e.g. Artic Base, system files setup). | @OpenSauce04 #2428
libretro
- "Stereoscopic 3D Mode" and "Stereoscopic 3D Depth" settings are now available for the libretro core. | @XenuIsWatching #2339
- Updated NDK version used to build the Android libretro core to 29.x
Technical
- The MXE build is now compiled using an LLVM+Clang based build environment, replacing the previous GCC-based stack. | @OpenSauce04 #2392
- Huge thanks to @kleisauke, who for about a year and a half has been thanklessly maintaining an unofficial LLVM MXE plugin in a GitHub repository with only a single star. Without their work, making this happen would have taken much longer than it did.
- Added copyright years to all source code license headers. | @PabloMK7 #2415
- Implemented a workaround for a current compiler bug in MSVC. | @PabloMK7 #2410
- Added a new CMake option
CITRA_ADDRESS_SANITIZE. | @PabloMK7 #2402
FreeBSD
- When building on FreeBSD, system libusb is now always used due to being bundled with the OS. | @sonphantrung #2281