-
Citron Release 0.12.25 Stable
released this
2025-12-26 08:17:48 +00:00 | 0 commits to main since this releaseCitron Emulator v0.12.25 Changelog
This release focuses on major UI/UX enhancements, improved update system, Android game file extraction, custom save management, and significant stability improvements across all platforms.
Acknowledgments & Credits
Contributors
Special thanks to all contributors who made this release possible:
- Collecting
- sylveondeko
- Zephyron
Testing & Quality Assurance
- The Citron Discord Community: Continued invaluable testing, feedback, and support
The Citron Team
- A massive thank you to all Citron contributors who made this release possible through development, testing, and refinement!
Major Features
PC Setup Wizard
New platform-specific setup experience:
- Platform-specific paths - Automatic detection and configuration of game directories based on your operating system
- Streamlined first-run experience - Guided setup process for new users
- Improved boot manager - Enhanced game booting workflow with better path management
Update Channel System
Flexible update management with channel selection:
- Stable/Nightly channels - Choose between stable releases and nightly builds
- Update channel selector - Easy switching between update channels in UI
- Improved Update Manager - Rebranded updater with enhanced automation and SCM logic
- Update channel information - Clear display of current update channel
- Linux AppImage backup support - Automatic backup of AppImages before updates with customizable paths
- Backup disable option - Option to disable automatic backups on Linux
Android Game File Extraction [WIP]
Enhanced Android functionality for game analysis:
- RomFS dumping support - Extract RomFS file systems from games on Android
- ExeFS dumping support - Extract ExeFS file systems from games
- Custom dump location selection - Choose where to save extracted game files
- Game file analysis tools - Better support for game modding and analysis workflows
Custom Save Path Management
Advanced save file management:
- Per-game custom save paths - Configure individual save directories for each game
- Backup saves for custom paths - Automatic backup functionality when using custom save locations
- Save path migration - Easy management of save file locations
New Autoloader & Update Manager
Completely redesigned update system:
- Modern autoloader - New automatic update loading system
- Update Manager rebrand - Redesigned update interface with better UX
- Automated update logic - Improved SCM (Source Control Management) integration
- Better update reliability - Enhanced Windows update reliability with read-only file handling
Enhanced Theme System
Major theme architecture improvements:
- Rainbow Mode overhaul - Complete architectural redesign of rainbow theme system
- RGB Mode - New RGB color mode for dynamic theming
- Improved theme stability - Fixed infinite recursion issues on Arch Linux
- Better theme adaptation - Enhanced theme switching and animation system
Game List Enhancements
Improved game library interface:
- Toggle Online column - Show/hide online status column in game list
- Progress bar for library scanning - Visual feedback during game list repopulation
- Accent color progress bar - Themed progress indicators matching your color scheme
- NCA scanning toggle - Option to include/exclude .nca files in game scanning
- Optimized JSON handling - Faster game list loading and updates
Major Improvements
User Interface
Loading Screen Redesign
Completely revamped loading experience:
- Game icons on loading screen - Visual game identification during boot
- Improved UX - Modern, polished loading interface
- Better visual feedback - Clear indication of loading progress
Configuration Dialog Improvements
Enhanced settings interface:
- Mouse wheel scrolling - Improved scrolling experience in configuration dialogs
- UI positioning options - Customizable dialog positioning
- Responsive layout - Better adaptation to different screen sizes
- Tab switch animations - Smooth transitions between configuration tabs
Hotkey & Input Management
Better input handling:
- Exit fullscreen hotkey refactor - Improved fullscreen exit handling moved to GRenderWindow
- Mouse panning hotkeys - Enhanced mouse panning controls
- Hide cursor during panning - Automatic cursor hiding during mouse panning
- Controller input blocking - Block controller input only during loading screen (not entire session)
Multiplayer Interface
Improved multiplayer experience:
- Fixed duplicate games in rooms - Resolved issue with duplicate game entries when creating rooms
- Chat room signal fixes - Fixed signal disconnection and cleanup issues
- Better room management - Improved multiplayer room functionality
Discord Integration
Enhanced Discord support:
- Warning dialogs for Discord help - Helpful dialogs explaining Discord support
- Updated Discord links - Redirect to help tab for better user guidance
Performance
Game Library Optimization
Significant performance improvements:
- Directory scanning fixes - Resolved crashes and performance issues with NTFS directory scanning on Linux
- NAND & SDMC scanning improvements - Better handling of system directory scanning
- JSON optimization - Faster game list parsing and updates
- Configuration change debouncing - Reduced unnecessary updates during configuration changes
- Progress bar feedback - Visual indication during long scanning operations
Memory & Resource Management
Better resource handling:
- Memory pressure handling - Vulkan pipeline eviction under memory pressure
- Pipeline cache management - Improved GPU resource management
- DMA multisized components support - Better handling of Direct Memory Access operations
Networking & Multiplayer
Network Stability
Improved network reliability:
- ZSTD compression improvements - Better error handling for compressed network packets
- Legacy packet format support - Reverted to legacy format for better emulator compatibility
- Packet validation - Enhanced packet validation and debug logging
- Lobby API URL configuration - Migrated from web_api_url to dedicated lobby API configuration
- Web service thread safety - Create client per request for better thread safety
Audio System
Audio Processing Fixes
Major audio improvements:
- Reverb effect fix - Resolved extreme noise issues on Windows
- Biquad filter v2 support - Proper validation and coefficient conversion
- Buffer underrun handling - Fixed buzzing caused by buffer underruns
- ParameterVersion2 refactor - Improved structure matching ParameterVersion1
- Better filter processing - Enhanced biquad filter validation and processing
Video & Graphics
Vulkan Rendering Improvements
Enhanced graphics rendering:
- MirrorOnceClampOGL wrap mode - Proper implementation of OpenGL wrap mode
- RGBX render target formats - Correct handling of RGBX texture formats
- Integer texture format fixes - Resolved SPIR-V format mismatches
- Viewport transformation fixes - Proper viewport handling when transformations are disabled
- Query cache optimizations - Removed redundant segment notifications
- Texture format validation - Better handling of invalid texture formats in lookup table
- Shadow map artifacts fix - Resolved square artifacts in shadow maps (Metroid Prime 4) [WIP]
Host1x & Video Core
System-level graphics improvements:
- VIC warning suppression - Suppress warnings for small dimension mismatches
- MCI boot fixes - Improved boot process
- GPU-modified texture handling - Proper handling of ignored textures modified by GPU
- Fermi2D improvements - Replaced assertions with warnings for better stability
Bug Fixes
Critical Fixes
- Infinite recursion in UpdateUITheme() - Fixed crash on Arch Linux caused by theme update recursion
- Network settings crash on Android - Resolved crash when accessing network settings
- Socket assertion crashes - Fixed crashes and added Nex service stub
- Module 56 error support - Added proper error handling for unknown error module 359
- Audio reverb noise on Windows - Fixed extreme noise caused by reverb effect
- Directory scanning crashes - Resolved NTFS directory scanning issues on Linux
- SMMU infinite loop - Prevented infinite loop when SMMU address space is exhausted
- Duplicate games in multiplayer rooms - Fixed duplicate game entries when creating rooms
- Read-only file updates - Improved Windows update reliability with read-only file handling
Platform-Specific Fixes
Windows
- Update reliability improvements - Better handling of read-only files during updates
- Audio reverb fix - Resolved extreme noise issues specific to Windows
- ZSTD decompression safety - Added safety checks for compressed data handling
Linux
- NTFS directory scanning - Fixed crashes when scanning NTFS drives on Linux
- Arch Linux theme fix - Resolved infinite recursion in theme system
- GuiPrivate requirement - Fixed build issues requiring GuiPrivate on Linux
- AppImage backup - Improved backup handling for Linux AppImages
- ZSTD decompression safety - Added safety checks for compressed data handling
macOS
- Build fixes - Resolved compilation issues on macOS
- MoltenVK improvements - Enhanced Vulkan support through MoltenVK
- ZSTD decompression safety - Added safety checks for compressed data handling
Android
- Network settings crash - Fixed crash when accessing network settings
- Compilation errors - Resolved dump function compilation issues
- Game file extraction - Improved RomFS/ExeFS dumping reliability
- ZSTD decompression safety - Added safety checks for compressed data handling
UI Fixes
- Horizontal UI issue - Resolved weird horizontal layout problems
- Placeholder removal - Removed placeholder text from UI elements
- Game list repopulation - Fixed display issues during library scanning
- Style.qss path issues - Fixed colorful theme style sheet loading
- UpdateUITheme recursion - Prevented infinite loops in theme updates
- Cursor visibility - Proper cursor hiding during mouse panning
Kernel & System Fixes
- Dispatch count management - Fixed scheduler dispatch count handling
- Memory state checking - Improved CheckMemoryStateContiguous usage
- DMA pipelined transfers - Allowed pipelined transfers to prevent assertion failures
- SMMU address space - Prevented infinite loops when address space is exhausted
- MCI boot process - Fixed Media Control Interface boot issues
Input & Controller Fixes
- Hotkey configuration restore - Fixed restore functionality and empty key sequence handling
- Controller input blocking - Block input only during loading screen, not entire session
- EmulatedController destruction - Added safety callback for pointer management
- Input processing safety - Added defensive checks for input handling
Network & Multiplayer Fixes
- Chat room signals - Fixed signal disconnection and cleanup
- Packet validation - Improved packet validation and debug logging
- ZSTD error handling - Better compression/decompression error recovery
- Legacy packet format - Reverted to compatible packet format
- Lobby API migration - Migrated from web_api_url to dedicated configuration
Technical Details
Architecture Changes
Code Organization
- TitleID utility enhancements - Continued improvements to game title ID handling
- Update system refactoring - Complete overhaul of update manager architecture
- Theme system architecture - Redesigned rainbow mode and RGB mode systems
- Save path management - New infrastructure for custom save path handling
- Android extraction system - New game file extraction framework
Build System Improvements
- PGO indicator - Profile-Guided Optimization status shown in window title and about dialog
- Build type system - New build type system (Stable/Nightly) with UI indicators
- macOS build fixes - Improved build system for macOS compatibility
- Linux build improvements - Better handling of platform-specific requirements
API & Service Updates
- HOS version constants - Updated Horizon OS version constants
- NintendoSDK version - Updated Nintendo SDK version constants
- Nex service stub - Added proper stubbing for Nex network service
- VOTE_vtg stub - Implemented VOTE service stub with warning log
- Module 56 error handling - Added support for error module 359
System Service Improvements
- ISettingsServer enhancements - Continued improvements to settings service
- Network service stubs - Better stubbing of network-related services
- Error module support - Expanded error handling for various system modules
Known Issues
- Rapid theme switching may briefly flash during system theme changes
- Large game libraries may take time to scan on first run with NCA scanning enabled
- Network packet format compatibility may vary between different emulator versions
Game Compatibility Highlights
Improved Compatibility
- Metroid Prime 4 - Fixed shadow map square artifacts
- Games requiring latest HOS versions now fully supported with updated constants
- Better compatibility with games using advanced audio effects
- Improved support for games with complex texture formats
- Enhanced compatibility with games using GPU-modified textures
Community Notes
This release represents a major step forward in user experience and system stability. The new update system provides users with more control over their update experience, while the Android game file extraction features open new possibilities for game analysis and modding.
The comprehensive UI improvements, from the redesigned loading screen to the enhanced theme system, make Citron more polished and user-friendly than ever before.
Citron remains committed to:
- User experience excellence - Continuous improvements to UI/UX based on community feedback
- Platform support - Maintaining excellent support across all platforms
- Stability and reliability - Fixing bugs and improving system robustness
- Performance optimization - Making Citron faster and more efficient
- Game compatibility - Ensuring the best possible experience for all supported titles
Statistics
- Commits: 200+ commits since v0.11.0
- Files Changed: 150+ files modified/added
- Bug Fixes: 50+ critical and minor fixes
- New Features: 10+ major user-facing features
- Platform Support: Desktop (Windows x86_64/ARM64, Linux, macOS) and Android
- HOS Support: Updated to latest version constants
Building Citron
For build instructions with optional PGO (Profile-Guided Optimization), see our documentation.
PGO can provide 10-30% performance improvements based on your usage patterns!
The build type (Stable/Nightly) is now indicated in the main window title and about dialog.
Full Changelog: v0.11.0...0.12.25
Download: Latest Release
Enjoy the new update system, Android extraction, and enhanced UI!
Special thanks to our community, testers, and all contributors who continue to help Citron grow and improve
Downloads
-
Source code (ZIP)
78 downloads
-
Source code (TAR.GZ)
28 downloads
-
Citron-macOS-stable-01c042048.dmg
79 downloads ·
2025-12-26 08:17:09 +00:00 · 84 MiB -
Citron-windows-stable-01c042048-x64.zip
2,501 downloads ·
2025-12-26 08:13:39 +00:00 · 32 MiB -
app-mainline-release-8-elite.apk
966 downloads ·
2025-12-26 08:16:47 +00:00 · 24 MiB -
app-mainline-release.apk
5,624 downloads ·
2025-12-26 08:15:13 +00:00 · 24 MiB -
citron_stable-01c042048-linux-aarch64.AppImage
78 downloads ·
2025-12-26 08:17:45 +00:00 · 147 MiB -
citron_stable-01c042048-linux-x86_64.AppImage
119 downloads ·
2025-12-26 08:19:52 +00:00 · 154 MiB -
citron_stable-01c042048-linux-x86_64_v3.AppImage
143 downloads ·
2025-12-26 08:18:40 +00:00 · 155 MiB