github eden-emulator/Releases v0.0.3
Eden v0.0.3

14 hours ago

This is the official stable release for 0.0.3. No new features will be added to the 0.0.3 branch, and updates will only occur if critical regressions or bugs are found, in which case we will release it as 0.0.3.x. Or, perhaps, some better support for macOS...?

This release contains:

  • platform parity improvements, especially for Solaris and *BSD,
  • several incremental bug fixes to Vulkan, JIT, and CMake
  • minor UI fixes
  • improvements upon changes introduced in prior RCs
  • and support for some new games and updates

Updating is recommended for all users.

The following changelog is for changes from RC3 only. For the full 0.0.3 changelog, scroll further.

Changelog

  • GPU driver download from EmuReady (Producdevity)
  • Updated defaults and clarified description for Extended Dynamic State (Pavel, MaranBr)
  • Added separate DMA precision level option (MaranBr, crueter)
    • Notably, higher precision levels can enable games like Ender Magnolia to run on Normal GPU accuracy.
  • Incremental Vulkan improvements (Wildcard, JPikachu, MaranBr)
    • Improved stencil handling
    • Improved master semaphore submits
    • Fix VertexInput handling
    • Improved memory allocations
      • Notably, this fixes slowdowns on Super Mario Odyssey on weaker hardware (incl. Steam Deck)
  • JIT improvements (lizzie)
  • Fix remaining MK8DX controller applet freezes (MaranBr)
  • Fixed controls dialog text clipping (crueter)
    • On Linux, the Dark theme may still clip if the controls window is forced to its minimum size.
    • We are still investigating this, however, deleting ~/.config/qt6ct may fix it.
  • Host MMU Emulation/Fastmem configuration outside of Debug (MaranBr)
    • Generally, this isn't needed to be changed except on some BSDs
  • Option to disable NCA verification (Maufeat, crueter)
    • This enables many new updates--including SMO 1.4.x and Pokemon S/V 4.0.0--to install and run, when they previously couldn't.
    • Note that many updates such as those for BotW and TotK may still not work at this time.
  • Removed Firmware 20+ warning on the game list (crueter)
    • Firmware 20+ is NOT supported at this time.
    • Although games may run fine with it, Eden will warn you if you attempt to run the home menu with new firmware installed.
    • If Eden warns you despite running earlier firmware, your firmware or keys are corrupt or pirated, and thus can't be read properly.
  • Initial stubs for new firmware functions (Maufeat, Pavel)
    • This enables some games such as Hollow Knight: Silksong to run.

Internal

  • Improved Solaris, OpenBSD, and FreeBSD support (Lizzie, SDK-Chan, crueter)
  • Improved OpenSSL/SDL2 bundled package fetching (crueter)
  • CMake dependency prefetching (crueter)
    • The dependency resolution system was rewritten to take in JSON files (cpmfile.json), where a script can be run to fetch dependencies before configure time.
    • Notably, this re-enables NixOS builds, and some other distributions with network sandboxes may see benefits from this.
  • Fix compilation on clang (Lizzie)
  • Small compliance/performance improvements with fmt, ankerl, libstdc++, and more (Lizzie)
  • Finalized AllocObjSetCtx (SDK-Chan)

Changes since 0.0.2

Click to open

Platforms

Please note that platforms outside of Windows, Linux, and Android are still in an experimental state. You are unlikely to receive support unless you can provide useful debugging info.

  • Solaris/OpenIndiana support (Lizzie841)
  • Improved macOS support (crueter, Lizzie841, Maufeat)
  • FreeBSD/OpenBSD Support (Lizzie841, SDK-Chan)
  • Improvements for dependencies on Solaris and FreeBSD (crueter)

Universal

  • JIT backend improvements (Lizzie841)
  • Improved Fast GPU time (crueter, Camille LaVey)
    • Higher overclock values increase resolution at the cost of performance
  • Fast CPU time option (crueter, Camille LaVey)
    • Overclocks the emulated CPU. May improve FPS caps in some games, but may also cause unwanted speedups or performance drops.
  • Fixed FMV greenscreens on all platforms (MaranBr, Maufeat, Shinmegumi)
  • Hardware-accelerated video decoding for h264, VP8, and VP9 on all supported GPUs and platforms (MaranBr)
  • Fixed Mario Kart 8 Deluxe controller applet freeze (MaranBr, Pavel)
  • Fixed crashes when attempting to read or apply new Switch 2 compatibility updates (crueter, Pavel)
  • Battery status in the Switch Home Menu (Maufeat)
  • Area Sampling filter (JPikachu, Torzu, crueter)
    • This option is best served when using a resolution higher than your display's resolution.
  • Stubbed ActivateDebugMouse for Gex Trilogy (Pavel)
  • Improved avatar selection and editing within firmware (Maufeat, Torzu)
  • Airplane Mode implementation (Maufeat, crueter)
    • Certain games "phone home" by default, and require airplane mode to be enabled to play.
  • Custom CPU Tick option (Gamer64, crueter)
    • Changes emulated CPU's ticks, can improve performance at the cost of stability.
  • Toggle for Vulkan RAII (Pavel)
    • Disabling this option may increase memory and CPU utilization, but may also fix issues with bundled games or on exit/activity switching.
  • More descriptive error messages for many actions (crueter)
  • Firmware version/validity checks (crueter)
    • If you install supported firmware, e.g. 19.0.1, and the app tells you your firmware is too new upon launching the home menu, then your firmware is likely corrupted, or your keys are invalid.
    • Ensure your firmware and keys were properly dumped.
  • Sane(r) default configuration (crueter)
  • Fixed Player 2 controller disconnect in DKC Tropical Freeze (MaranBr)
  • Implemented firmware profile editor (Maufeat, Torzu)
    • Added support for creating and deleting users via the HOME menu
    • Enabled reordering user positions in the HOME menu
    • Fixed profile picture editor in the HOME menu
    • Added support for various profile picture formats (PNG, JPEG, BMP)
  • Sync Memory Operations option (Higgs, MaranBr)
    • Notably, this fixes certain collection games, Abathor, Clock Tower Rewind, Guns of Fury, Ninja Five-O, and more
    • This option can decrease performance, though it's only believed to affect Unreal Engine 4 & 5 games.
  • Full ISBERD Unstub (SDK-Chan, Camille LaVey)
    • Notably, this fixes some minor graphical issues in M&L:Brothership and other titles
  • Add Revolt links alongside Discord (crueter)
  • Add X links alongside Discord and Revolt (Bix)
  • Avoid infinite kernel object loops (MaranBr)
    • Notably, this fixes certain sequences of actions in BotW, especially w.r.t shrines
  • Properly ignore comments in cheats (notenergydrinks)
  • Updated defaults and clarified description for Extended Dynamic State (Pavel, MaranBr)
  • Fix unsafe/safe memory processing logic (Torzu, Higgs, MaranBr)
    • Notably, this fixes Princess Peach, Ender Magnolia, M&L Brothership, Sonic X Shadow Generations, Borderlands 2, and more
  • Added separate DMA precision level option (MaranBr, crueter)
    • Notably, higher precision levels can enable games like Ender Magnolia to run on Normal GPU accuracy.
  • Host MMU Emulation/Fastmem configuration outside of Debug (MaranBr)
    • Generally, this isn't needed to be changed except on some BSDs
  • Option to disable NCA verification (Maufeat, crueter)
    • This enables many new updates--including SMO 1.4.x and Pokemon S/V 4.0.0--to install and run, when they previously couldn't.
    • Note that many updates such as those for BotW and TotK may still not work at this time.
  • Initial stubs for new firmware functions (Maufeat, Pavel)
    • This enables some games such as Hollow Knight: Silksong to run.
  • Properly ignore comments in cheats (notenergydrinks)
  • Add Revolt links alongside Discord (crueter)
  • Add X links alongside Discord and Revolt (Bix)
  • Avoid infinite kernel object loops (MaranBr)
    • Notably, this fixes certain sequences of actions in BotW, especially w.r.t shrines

Renderer

  • Sample Shading (Gamer64)
    • Improves shader and image quality, but may affect performance.
    • Some setups have reported increased performance with higher values. Experiment and find what works for you.
  • MSAA Improvements (Mr. Purple)
    • Notably, this improves Civilization VII, as shown in the showcase channel
  • Various fixes to Vulkan and its extensions (crueter, Aleksandr, Camille LaVey)
    • ExtendedDynamicState and related extesnions were improperly applied (Aleksandr)
    • Vulkan pipeline didn't properly apply certain extensions and features (Aleksandr)
    • Many black screen issues have been fixed. If games didn't work in 0.0.1 or 0.0.2, please try again.
  • 0.25X resolution option (crueter)
  • Enabled trivial stencilling (Camille LaVey, Eden Contributors)
    • Notably fixes rift rendering in Echoes of Wisdom
  • Fixed NaN emissions in SPIR-V shader outputs (Camille LaVey, Eden Contributors)
    • Notable games fixed:
      • Black square issues in Fire Emblem: Three Houses and Tears of the Kingdom
      • Fire Emblem: Engage DLC maps
      • Shrines in Breath of the Wild
  • Mock return on bindless textures (xbzk)
    • Notably fixes Ender Magnolia's rendering on Android (high accuracy required)
  • Skip CPU Inner Validation (Gamer64)
    • This option increases performance, but may cause issues with stability.
  • Skip surface texture copy (Gamer64, Camille LaVey)
  • Improved Spir-V Output Optimization implementation (Gamer64, Camille LaVey, Torzu)
    • Most users will see the best results when setting this to "Never", however some users have noted improved performance after shaders build with it set to "On Load".
  • Native, hardware-accelerated cubic filtering (Lizzie)
  • Alpha Copy (Camille LaVey, Eden Contributors)
    • Notably fixes certain graphical glitches in Mario + Rabbids
  • Improved Spir-V casting for low-precision integers (Lizzie)
    • Notably improves flickering for certain unresolved texture conversions in Vulkan
  • Reduce Vulkan validation errors (wildcard)
  • Fixed critical Vulkan memory leaks (weakboson)
    • Notably, this fixes memory leaks and crashes in DB FighterZ, Dragon's Dogma, P5:Royal, Mario Strikers, Yoshi's Crafted World and others that previously required mods to avoid crashes
  • Disable unneeded debug options in Vulkan (crueter, wildcard)
    • Technically, this can improve performance, but the effect is marginal
  • Normalize single-layer TICs (Wildcard)
    • Notably, this fixes God Eater 3
  • Other incremental changes: (Wildcard, JPikachu, MaranBr)
    • Improved stencil handling
    • Improved master semaphore submits
    • Fix VertexInput handling
    • Improved memory allocations
      • Notably, this fixes slowdowns on Super Mario Odyssey on weaker hardware (incl. Steam Deck)

Android

  • Support for various Game Hubs (fr this time) (Bix)
  • Improved Eden's Veil layout and language (Aleksandr)
  • Removed frameskip entirely while we work on it
  • Added option to utilize the native keyboard over the firmware keyboard (Aleksandr)
  • Added shader building to the performance overlay (Aleksandr)
  • Brought over several desktop settings (Aleksandr)
  • Public lobby viewer (Aleksandr)
  • Improved multiplayer support (crueter, Aleksandr)
  • Public lobby creation (Aleksandr)
  • Driver fetcher (Aleksandr, crueter)
    • Automatically recommends a driver depending on your device, and allows for instant download and install from various repositories.
  • Improve compatibility with older devices (crueter, Camille LaVey)
  • Improved translations (Pavel, Aleksandr, Rondo)
  • Device info overlay (crueter)
    • SoC, GPU, device models, firmware version
  • LRU cache improvements (Mr. Purple)
  • Firmware page in setup wizard (crueter)
  • Initial Serbian translation (Aleksandr)
  • Fixed off-by-one error with resolution values above 1x (Aleksandr)
  • Battery power draw and capacity overlay (Aleksandr, Pavel)
  • Warn on selection of resolutions higher than 1.5x (Aleksandr)
  • Landscape-only carousel view (xbzk)
  • Partial fix for bluetooth controller issues (Camille LaVey)
  • New app background (Anta)
  • Fix crash when launching a game referencing a now-deleted custom driver (Aleksandr)
  • Fix top bar clipping on certain devices (xbzk)
  • Add game search bar to landscape view (xbzk)
  • Release Fences Early option (crueter, Pavel)
    • This option fixes 0fps errors in certain titles, but may cause crashes and instability in others.
  • New app background (AntaBaka)
  • Optimized (Genshin Spoof) build (Bix)
  • EmuReady integration (Producdevity)
  • New UI Design (Producdevity)
    • The new default theme is the Eden theme, which uses Eden's official color palette alongside synthwave-style gradients.
  • GPU driver download from EmuReady (Producdevity)

Desktop

  • Merged room functionality into the main executable/AppImage (Aleksandr)
  • Censor the username in debug logs (Aleksandr)
  • Added a Qlaunch command line option and the ability to create a shortcut (Aleksandr)
  • Minor UI improvements (crueter)
  • Add proper web token & web service support (Aleksandr, crueter)
    • You can now get real-time username and token verification, and no longer need to manually edit config files to play online.
  • Button to refresh the game list + add-ons (crueter)
  • AppImage now properly creates shortcuts (crueter)
  • Update Checker (crueter)
  • Improved migration frontend (crueter)
    • Internal NAND, mod, and SDMC folders now properly reference Eden after migration
    • Citron migration has been re-enabled
    • Increased performance and speed of large migrations
  • Firmware installation from zip (crueter)
  • Open specific folders (NAND, Mods, etc.) from the menu (crueter)
  • Links now point to existing webpages (crueter)
  • Fix app icon and AppImage metadata on Wayland (crueter)
  • Fix CUDA on Linux (MaranBr)
  • Fixed Windows icon aliasing and size (Lizzie)
  • Fix Windows styling (MaranBr, Maufeat, crueter)
  • Fixed controls dialog text clipping (crueter)
    • On Linux, the Dark theme may still clip if the controls window is forced to its minimum size.
    • We are still investigating this, however, deleting ~/.config/qt6ct may fix it.

Known Issues

  • The latest updates to many games work intermittently, if at all.
    • In general, we recommend using the pre-Switch 2 versions. Most of the new updates cause black screens, ARM panics, or crashes.
    • Including these in your game directory shouldn't cause crashes, but we recommend avoiding them entirely for the time being.
  • Using firmware above 19.0.1 causes crashes in the Home Menu.
  • Decryption keys from 20.0.0 or newer cause some games to not be properly read or recognized.
  • EmuDeck messes with Eden's internal file structure.
    • Symlinking ~/.local/share/eden to EmuDeck's data directory is believed to fix this.
  • During migration on Windows, linking often hangs or fails.
    • This either requires the SeCreateSymbolicLink privilege, or to avoid it entirely.
    • We recommend move or copy for now.
  • Certain games crash upon opening the software keyboard applet on Android.
    • This can generally be fixed by changing it to use the custom frontend, via Advanced Settings -> Applets -> Software Keyboard.

Internal

  • Several submodules were moved in-tree to reduce network load
    • During bisects, run git submodule deinit -f --all and git submodule update --init --recursive to update submodules properly.
  • Updated bundled dependencies and Qt (MaranBr)
  • FFmpeg 7.1.1 implementation (MaranBr, Maufeat, Jarrod Norwell)
  • FFmpeg code cleanup & proper configuration (MaranBr)
  • Improved parity between platforms (crueter, MaranBr, Shinmegumi)
  • Reduced duplicate code between Android and Desktop (crueter)
  • Sane build identification (crueter)
  • Improved GetBufferHistory (Maufeat, Jarrod Norwell)
  • Massively reduced fetch time for submodules
    • Nearly all submodules and externals, sans libusb, dynarmic, and very small in-tree libraries, have been moved to source archive downloads.
    • These are grabbed on-demand, as opposed to every single submodule being required by default.
    • Source archives are dramatically smaller in size than full Git clones; thus, overall clone/fetch time has decreased by a factor of ~10 on Windows and Linux (amd64) with 100Mbps download speed.
  • Source packs now include CPM cache and can be built fully offline.
    • Android cannot be built fully offline regardless due to gradlew, so source archives do not currently contain bundled Android dependencies.
  • vcpkg has been completely replaced by CPM (CMake Package Manager)
    • CPM is significantly faster, more consistent, and easier to use than vcpkg. This can help reduce headaches and configure/fetch time on Windows and Android.
    • CPM additionally allows for static builds of certain externals that were not previously possible; e.g. Boost, OpenSSL, and other libraries are now available statically, which marginally reduces Android APK, Windows zip, and Linux AppImage package sizes.
    • All system dependencies can additionally be managed by CPM as well; to enforce this, set YUZU_USE_CPM=ON (note that this will enforce bundled OpenSSL for the time being)
  • CMake dependency prefetching (crueter)
    • The dependency resolution system was rewritten to take in JSON files (cpmfile.json), where a script can be run to fetch dependencies before configure time.
    • Notably, this re-enables NixOS builds, and some other distributions with network sandboxes may see benefits from this.
  • Build & development documentation has been updated to match all of our new changes, and has generally been improved all-around
  • MicroProfile was removed (use samply/vtune instead)
  • Small compliance/performance improvements with fmt, ankerl, libstdc++, and more (Lizzie)
  • Unstubbed services and functions:
    • ZBCSetTable (Lizzie)
    • AllocObjCtx (SDK-Chan)
    • ISBERD (Internal Stage Buffer Entry ReaD) (SDK-Chan, Lizzie)
    • GPFIFOEX1 (SDK-Chan)
    • AdjustRefCount (Maufeat)

Packages

Desktop builds will automatically put data in ~/.local/share/eden on Linux, or
%APPDATA%/eden on Windows. You may optionally create a user directory in the
same directory as the executable/AppImage to store data there instead.

Linux

Linux packages are distributed via AppImage. Each build is optimized for a specific architecture.
See the Description column for more info. Note that legacy builds will always work on newer systems.
zsync files are provided for use with certain AppImage updaters.

NOTE: Due to ongoing build/CI issues and lack of available hardware for testing, ARM builds of Linux will not be distributed for the time being. If you want to help our developers acquire ARM hardware, please donate!

Warning

By default, the AppImages enforce the xcb platform for Qt. Wayland causes a significant
amount of issues that simply can't be solved on our end. You may change it to Wayland if you
wish, but expect things to break. You will only receive limited support if using Wayland.

Build Description
amd64 (legacy) (zsync) For CPUs older than 2013 or so
amd64 (zsync) For any modern AMD or Intel CPU
Steam Deck (zsync) For Steam Deck and other >= Zen 2 AMD CPUs
ROG Ally X (zsync) For ROG Ally X and other >= Zen 4 AMD CPUs
aarch64 (WIP) For any 64-bit ARM CPU. Currently a work-in-progress.
armv9-a (WIP) For any 64-bit ARM CPU made after late 2021 or so. Currently a work-in-progress.

Windows

Windows packages are in-place zip files.

Build Description
amd64 For any Windows machine running an AMD or Intel CPU
arm64 (WIP) For any Windows machine running a Qualcomm or other ARM-based SoC. Currently a work-in-progress.

Android

Build Description
Android Standard Single APK for all supported Android devices (most users should use this)
Android Optimized For any Android device that has Frame Generation or any other per-device feature
Android Legacy For A6xx. Fixes any games that work on newer devices but don't on Adreno 6xx

Source

Contains all source code, submodules, and CPM cache at the time of release.

File Description
tar.zst Source as a zstd-compressed tarball (Windows requires 7zip-zstd or Winrar)

Other Platforms

Other platforms, including FreeBSD, OpenBSD, Solaris (OpenIndiana), and macOS are
able to be built from source, but are not available for download at this time.
Stay tuned!

Don't miss a new Releases release

NewReleases is sending notifications on new releases.