- Introduced RAII (Resource Acquisition Is Initialization)
for Vulkan objects to ensure proper resource cleanup.
- Added RAII wrappers for Vulkan buffers, images, pipelines,
command pools, and descriptor sets.
- Updated renderer_vulkan.cpp to replace manual resource management with RAII.
- Refactored vulkan_raii.h to include move constructors,
proper destruction, and memory allocation fixes.
- Ensured vkDeviceWaitIdle() is properly called before destroying Vulkan objects.
- Fixed synchronization issues by validating fence and semaphore handling.
- Improved swapchain recreation logic to prevent stale image usage.
- Updated CMakeLists.txt to properly link Vulkan RAII dependencies.
- Applied Turbo Mode optimizations with RAII-based memory handling.
- Verified Vulkan cleanup sequence to avoid crashes and memory leaks.
- Added EDEN Project Emulator Copyright header to all the files modified
- Implementations/Changes maded by @Camille LaVey
- Modify DmaPusher to use safe memory reads when handling compute
operations at High GPU accuracy
- Prevent potential memory corruption issues that could lead to
invalid dispatch parameters
- Previously, unsafe reads could result in corrupted launch_description
data in KeplerCompute::ProcessLaunch, causing invalid vkCmdDispatch
calls
- By enforcing safe reads specifically for compute operations, we
maintain performance for other GPU tasks while ensuring compute
dispatch stability
This change requires >= High GPU accuracy level to take effect.
Adds support for InfoType::SystemResourceSize (0x1C) which is required for
proper initialization of the Virtual Address Memory Manager (VAMM). This
implementation:
1. Adds SystemResourceSize to the InfoType enum in svc_types.h
2. Implements the GetInfo handler for SystemResourceSize in svc_info.cpp
3. Returns 512MB (0x20000000 bytes) as the system resource size
4. Adds debug logging for the SVC call
The 512MB value is chosen based on typical system resource allocations
needed for VAMM initialization on the Nintendo Switch.
This fixes crashes in games that rely on VAMM functionality, particularly
during nn::os::detail::VammManager::InitializeIfEnabled().
Updated the ssl stubs to implement ssl:s for Firmware 19
This should make Xenoblade X: Definitive Edition bootable
Credit: Antique - (Sudachi) Dev [https://sudachi.emuplace.app/]
* android: Add static color theme option ported from Azahar
* android: Remove leftover xml from early access fragment
* android: Properly theme material dialogs to theme color
* android: Fixup colors through the app
and make game image corners more round
* android: Set default theme to violet to match eden branding
* Update license headers
---------
Co-authored-by: Kleidis <167202775+kleidis@users.noreply.github.com>