Skip Navigation

CITRON EMULATOR v0.7.1 路 Nintendo Switch

git.citron-emu.org /citron/emulator/-/releases/0.7.1

Release notes

Ongoing rewrite, so expect bugs!

Citron Emulator v0.7.1 Changelog

 
        The Citron Team Welcome's Collecting As An Official New Contributor!  
    Linux Builds Powered By Collecting & Samueru-sama  


  

New Features
Input & Controls

 
        Mouse Wheel Support: Added mouse wheel support for game input passthrough, improving desktop gaming experience  
    SixAxis Sensor Validation: Enhanced SixAxis sensor validation and error handling for improved controller stability  


  

Visual Enhancements

 
        VRAM Monitoring Overlay: Added modern VRAM monitoring overlay with clean, clutter-free UI  
    Temporal Anti-Aliasing (TAA): Implemented TAA support for both OpenGL and Vulkan renderers  
    Performance Overlay Improvements: Enhanced performance overlay with drag-to-move functionality and Wayland compatibility  


  

Audio System

 
        Audio REV13 Renderer: Added REV13 audio renderer support for broader game compatibility  
    Audio Stability: Major audio stability improvements and crash fixes  
    Audio REV15 Renderer: Still Under Active Development  


  

VRAM Management

 
        High-End VRAM Mode: Added High-End VRAM mode with optimized memory usage  
    Insane VRAM Mode: Implemented Insane VRAM mode with leak prevention mechanisms  
    Low GPU Accuracy Setting: Added Low GPU Accuracy setting for maximum performance on lower-end hardware  


  

Platform Support

 
        Qt6 Migration: Complete migration to Qt6 with aqtinstall 3.3.0 integration  
    Wayland Optimizations: Added Wayland-specific UI optimizations and performance improvements  
    Linux Compilation Fixes: Resolved various Linux compilation issues and X11 macro conflicts  


  

Improvements
Build System & CI/CD

 
        GitLab CI Overhaul: Complete overhaul of GitLab CI pipeline with improved build configurations  
    Android Build Fixes: Fixed Android build configurations and dependencies  
    Cross-Platform Compilation: Resolved compilation issues across Linux, Android, and Windows platforms  
    Boost Process Integration: Improved Boost.Process integration with optional component handling  


  

Shader Recompiler

 
        ISBERD Instruction: Implemented ISBERD instruction for internal stage buffer reads (with proper error handling)  
    Visual Comparison Of 0.7 && 0.7.1 ISBERD impl  


  

Memory Management

 
        ZBC Clear Support: Added OpenGL ZBC clear support and refactored ZBC management system  
    Memory Leak Fixes: Multiple memory leak fixes and stability improvements  
    VRAM Leak Prevention: Enhanced VRAM leak prevention in Insane mode  


  

Service Implementation

 
        NIM Services: Properly implemented NIM (Network Interface Management) services  
    SSL/TLS Services: Complete SSL/TLS service implementation with proper error handling  
    ACC:U0 Service: Implemented missing acc:u0 functions per SwitchBrew specification  


  

Bug Fixes
Critical Fixes

 
        Null Pointer Dereference: Fixed critical null pointer dereference in patch_manager.cpp  
    Memory Leaks: Resolved multiple memory leak issues across various components  
    Audio Crashes: Fixed audio-related crashes and stability issues  
    Service Manager Crashes: Resolved crash-on-exit issues from ServiceManager null pointers  


  

Platform-Specific Fixes

 
        Android Aspect Ratio: Fixed aspect ratio crash for non-16:9 settings on Android  
    Wayland Compatibility: Fixed Wayland-specific UI issues and performance overlay problems  
    X11 Macro Conflicts: Resolved X11 macro conflicts with enum values and Qt constants  
    Linux Compilation: Fixed various Linux compilation issues and dependency problems  


  

UI/UX Fixes

 
        Properties Window Scaling: Fixed properties window scaling issues  
    Performance Overlay: Fixed drag-to-move functionality for performance overlay  
    VRAM Overlay: Cleaned up VRAM overlay layout and removed visual clutter  
    Wayland UI: Fixed Wayland UI layer issues and untoggle functionality  


  

Build System Fixes

 
        CMake Configuration: Fixed CMake target_compile_definitions errors  
    Boost Process: Resolved Boost::process optional component issues  
    Qt MOC Generation: Fixed Qt MOC generation for conditionally compiled components  
    Submodule Initialization: Resolved submodule initialization failures in GitLab CI  


  

Reverted Changes

 
        ISBERD Implementation: Temporarily reverted ISBERD instruction implementation due to stability issues  
    Audio Enhancements: Reverted some audio enhancements that caused stability problems  
    X11 Macro Fixes: Reverted X11 macro conflict fixes that introduced new issues  


  

Technical Improvements
Code Quality

 
        Static Cast Fixes: Added proper static_cast usage for type safety  
    Variable Initialization: Fixed uninitialized variable issues  
    Error Handling: Enhanced error handling across multiple components  


  

Performance

 
        Fastmem Pointer: Resolved fastmem_pointer type compatibility issues in dynarmic  
    Discord Rich Presence: Fixed Discord Rich Presence timer and compilation issues  
    Environment Variables: Improved SSL and Wayland environment variable handling  


  

Dependencies

 
        RapidJSON: Added rapidjson compiler patch for better compatibility  
    STBI: Added STBI_NO_SIMD definitions for improved performance  
    Auto Updater: Made updater functionality conditional with CITRON_USE_AUTO_UPDATER option  


  

Testing & Validation

 
        Enhanced testing coverage for new features  
    Improved error reporting and debugging capabilities  
    Better crash recovery mechanisms  


  

Known Issues

 
        FSR2 implementation remains experimental (as noted in v0.7)  
    Some kernel event handles still require completion  
    Wayland performance optimizations may need further tuning  
    BOTW/TOTK Support will be included in the next update for their latest respective updates 1.8.2/1.4.2  


  

Note: This release focuses on stability improvements, platform compatibility, and performance enhancements. The FSR2 && TAA implementation remains experimental and should be used with caution.

Full Changelog: https://git.citron-emu.org/citron/emulator/-/releases/0.7.1

4 comments