Skip to content

Releases

Eglantine on Crack (2026-11-08)

Choose a tag to compare

⚡ Eglantine on Crack — Bleeding-Edge Build

Warning

Experimental & Not Fully Tested: This build is ~500 commits ahead of upstream nx2-experimental. Features, GPU rewrites, and speed optimizations land immediately after local testing. Back up your saves (%APPDATA%\eglantine\nand\user\save) before launching!


✨ Highlights in This Build

  • NVIDIA DLSS Super Resolution & DLAA:
    • Native Streamline DLSS (Performance / Balanced / Quality) and DLAA selector in Emulation -> Configure -> Graphics.
    • Ticking Enable NVIDIA DLSS automatically locks Window Adapting Filter to Bilinear and Anti-Aliasing to None so post-processing never blurs the DLSS output.
    • Automatic 3D pass upscaling before HUD compositing in Ocarina of Time (sharp 1440p 3D + native crisp HUD).
  • 2x Frame Generation + High-Refresh VRR Pacing:
    • Built-in FSR3 Frame Generation with half-period presentation pacing (~40 FPS guest $\rightarrow$ ~80 FPS displayed on VRR/G-Sync displays) and duplicate-frame skip when guest frames pause.
  • Ocarina of Time Overhaul (0400486024DEC000):
    • Fixed terrain blotches, haze/fog rendering, Turing MME macro crashes, and inventory/save-screen thumbnail capture.
    • Real-time game speed below 60 FPS (no more slow-motion when below 60 FPS).
  • Major Stutter & FPS Improvements:
    • Shader Stutter Eliminator: Spreads background pipeline compilation across frames (cuts worst new-area freezes from 2.3 s → 0.6 s).
    • CPU/GPU Hot Paths: Trap-and-flush CPU reads, fast 4 KiB page-run lookups, SPSC GPU thread wakeups, and AMD X3D V-Cache CCD thread affinity.
    • Mario Kart World & Super Mario Bros. Wonder: Large-VRAM budget fix (53 → 58.7 FPS in MKW) and vi2 release fence fix (unlocks Wonder past 30 FPS).

🚀 Quick Start

  1. Back up %APPDATA%\eglantine\nand\user\save.
  2. Extract eglantine-windows-x86_64.zip into its own folder (do not overwrite your upstream Eglantine folder).
  3. Run eglantine.exe — your existing keys, firmware, games, mods, and saves in %APPDATA%\eglantine load automatically.
    • Note: If a game misbehaves, launch with EDEN_NX2_PERF_OPT=0 to disable all experimental speed switches at once.

Eglantine on Crack (2026-11-08)

Choose a tag to compare

⚡ Eglantine on Crack — Bleeding-Edge Build

Warning

Experimental & Not Fully Tested: This build is ~500 commits ahead of upstream nx2-experimental. Features, GPU rewrites, and speed optimizations land immediately after local testing. Back up your saves (%APPDATA%\eglantine\nand\user\save) before launching!


✨ Highlights in This Build

  • NVIDIA DLSS Super Resolution & DLAA:
    • Native Streamline DLSS (Performance / Balanced / Quality) and DLAA selector in Emulation -> Configure -> Graphics.
    • Ticking Enable NVIDIA DLSS automatically locks Window Adapting Filter to Bilinear and Anti-Aliasing to None so post-processing never blurs the DLSS output.
    • Automatic 3D pass upscaling before HUD compositing in Ocarina of Time (sharp 1440p 3D + native crisp HUD).
  • 2x Frame Generation + High-Refresh VRR Pacing:
    • Built-in FSR3 Frame Generation with half-period presentation pacing (~40 FPS guest $\rightarrow$ ~80 FPS displayed on VRR/G-Sync displays) and duplicate-frame skip when guest frames pause.
  • Ocarina of Time Overhaul (0400486024DEC000):
    • Fixed terrain blotches, haze/fog rendering, Turing MME macro crashes, and inventory/save-screen thumbnail capture.
    • Real-time game speed below 60 FPS (no more slow-motion when below 60 FPS).
  • Major Stutter & FPS Improvements:
    • Shader Stutter Eliminator: Spreads background pipeline compilation across frames (cuts worst new-area freezes from 2.3 s → 0.6 s).
    • CPU/GPU Hot Paths: Trap-and-flush CPU reads, fast 4 KiB page-run lookups, SPSC GPU thread wakeups, and AMD X3D V-Cache CCD thread affinity.
    • Mario Kart World & Super Mario Bros. Wonder: Large-VRAM budget fix (53 → 58.7 FPS in MKW) and vi2 release fence fix (unlocks Wonder past 30 FPS).

🚀 Quick Start

  1. Back up %APPDATA%\eglantine\nand\user\save.
  2. Extract eglantine-windows-x86_64.zip into its own folder (do not overwrite your upstream Eglantine folder).
  3. Run eglantine.exe — your existing keys, firmware, games, mods, and saves in %APPDATA%\eglantine load automatically.
    • Note: If a game misbehaves, launch with EDEN_NX2_PERF_OPT=0 to disable all experimental speed switches at once.

Eglantine on Crack (2026-11-08)

Choose a tag to compare

⚡ Eglantine on Crack — Bleeding-Edge Build

Warning

Experimental & Not Fully Tested: This build is ~500 commits ahead of upstream nx2-experimental. Features, GPU rewrites, and speed optimizations land immediately after local testing. Back up your saves (%APPDATA%\eglantine\nand\user\save) before launching!


✨ Highlights in This Build

  • NVIDIA DLSS Super Resolution & DLAA:
    • Native Streamline DLSS (Performance / Balanced / Quality) and DLAA selector in Emulation -> Configure -> Graphics.
    • Ticking Enable NVIDIA DLSS automatically locks Window Adapting Filter to Bilinear and Anti-Aliasing to None so post-processing never blurs the DLSS output.
    • Automatic 3D pass upscaling before HUD compositing in Ocarina of Time (sharp 1440p 3D + native crisp HUD).
  • 2x Frame Generation + High-Refresh VRR Pacing:
    • Built-in FSR3 Frame Generation with half-period presentation pacing (~40 FPS guest $\rightarrow$ ~80 FPS displayed on VRR/G-Sync displays) and duplicate-frame skip when guest frames pause.
  • Ocarina of Time Overhaul (0400486024DEC000):
    • Fixed terrain blotches, haze/fog rendering, Turing MME macro crashes, and inventory/save-screen thumbnail capture.
    • Real-time game speed below 60 FPS (no more slow-motion when below 60 FPS).
  • Major Stutter & FPS Improvements:
    • Shader Stutter Eliminator: Spreads background pipeline compilation across frames (cuts worst new-area freezes from 2.3 s → 0.6 s).
    • CPU/GPU Hot Paths: Trap-and-flush CPU reads, fast 4 KiB page-run lookups, SPSC GPU thread wakeups, and AMD X3D V-Cache CCD thread affinity.
    • Mario Kart World & Super Mario Bros. Wonder: Large-VRAM budget fix (53 → 58.7 FPS in MKW) and vi2 release fence fix (unlocks Wonder past 30 FPS).

🚀 Quick Start

  1. Back up %APPDATA%\eglantine\nand\user\save.
  2. Extract eglantine-windows-x86_64.zip into its own folder (do not overwrite your upstream Eglantine folder).
  3. Run eglantine.exe — your existing keys, firmware, games, mods, and saves in %APPDATA%\eglantine load automatically.
    • Note: If a game misbehaves, launch with EDEN_NX2_PERF_OPT=0 to disable all experimental speed switches at once.

Eglantine Build 08/11/2026

Pre-release

Choose a tag to compare

@github-actions github-actions released this 08 Nov 07:28

Automatic daily build of nx2 at 3739d72.

Changes since the previous daily build

  • status: fork switch prepared (3739d72428)
  • docs: name the fork's nx2 branch in the shader and upstream notes (84b60c9da8)
  • docs: README guide for switching to this fork (a5ac8fdc57)
  • docs: record merge of upstream/nx2 (74db237) and upstream/nx2-experimental (797461a) (dcbac39748)
  • vk_pipeline_cache: keep the disk cache across translation-only version bumps (eab2c2246d)
  • spirv: keep native global memory helpers as calls and route with one switch (9a362357a2)
  • docs: record merge of upstream/nx2-experimental (db093d7) into local-combined (02fb3978f6)
  • plan-review: finalize Turn 2/3 negotiation status before nx2-experimental merge (b24f76070b)
  • plan-review: Gemini Turn 2 on nx2-experimental merge (9167555406)
  • agent: record user answers to DLSS/frame generation questions (ecce9be006)
  • agent: negotiation and per-file analysis for merging upstream nx2-experimental (b1f5cc943b)
  • docs: SHADER_STUTTER_NOTES.md, handoff for pipeline-compilation work (a1062b1d18)
  • docs: UPSTREAM_CANDIDATES.md, which commits to send upstream and in what order (c2ea043922)
  • agent: release cc7f29a prepared (c87d08cd68)
  • agent: publish the plan reviews (thumbnail, quick wins, shader lowering, DLSS/frame generation) (cc7f29a18e)
  • docs: OOT_STATE.md, shader stutter work, thumbnail fix, current numbers, developer pointers (85fe229c1c)
  • vk_graphics_pipeline: drop the unused reused_descriptor_buffer (2b416c3889)
  • agent: record shader-freeze plan P0-P4.1 in STATUS.md (73daa17f87)
  • vulkan: replay disk-cached graphics pipelines skipped at boot on background workers (replay_disk_recordings) (233b404586)
  • vulkan: add geometry consistency and G-buffer build-order priority (P3.1/P3.2) (357a488b77)
  • vulkan: skip small no-depth draws when color target holds prior frame output (stale_target_skip) (c41d23692f)
  • vulkan: keep disk cache across driver updates and enable P1 compute switches (ee560f97ab)
  • shader_recompiler: remove static clip_distance_written data race in SPIR-V emit (0dfaf624ba)
  • vulkan: build all persisted compute variants at boot (compute_preload_variants) (9cf1bc6308)
  • nx2_perf: enable pipeline_keep_preloaded by default (86a7dc9e58)
  • video_core: rename old vulkan.bin on CACHE_VERSION mismatch and guard disk_pipelines (f2ce6c3f0f)
  • vulkan: keep old compute pipeline while stale-slot rebuild compiles (compute_rebuild_async) (3eb64cb1ed)
  • vulkan: add pipeline build wait attribution, skip reason, and miss classification (ca091a90f8)
  • agent: record FPS Quick-Wins Phase 2 (0aeaec7) in STATUS.md (ea8c01bf81)
  • shader: run HMMA.16816.F16 on cooperative matrices (Eglantine-Community#582) (0aeaec747c)
  • agent: shader-compile freeze plan for Gemini (6f2bc30958)
  • agent: record FPS Quick-Wins Phase 1 in STATUS.md (2b841365ad)
  • video_core: fence operation lists as vectors (no allocation per queued operation) (ecba929740)
  • texture_cache: collect debug statistics only when EDEN_NX2_TC_LOG asks for them (Eglantine-Community#428) (531dcb9aa2)
  • vulkan: don't wait for the GPU to grow the quad index buffer (Eglantine-Community#414) (7353bf81f9)
  • buffer_cache: reuse a contiguous range's page table walk for its shorter sizes (Eglantine-Community#580) (ba161f22a2)
  • common: back RangeSet with a sorted array (Eglantine-Community#481) (682f0640dc)
  • common, query_cache: skip range subtractions and query erases that touch nothing (94cab67bd8)
  • agent: record Ocarina of Time thumbnail fix in STATUS.md (0478e200f6)
  • vk_graphics_pipeline: run graphics warp ops at the guest's warp size (Eglantine-Community#329) (b1788ea326)
  • video_core: decode QMD release formats and skip only the slots it can't (Eglantine-Community#436) (58f2ecb591)
  • Release gathered buffers when their sources are removed (aea4a24e57)
  • common: keep zeroed page-table pages committed (Eglantine-Community#485) (0d58dbc92e)
  • vulkan: rebuild native compute pipelines whose pointer slot was null at translation (92c214fe86)
  • shader, buffer_cache: bind up to 64 storage buffers per stage (f046b65a9d)
  • shader: charge pointer table entries only for bindings the first pass left free (6db25ea841)
  • vulkan: don't write render target components the fragment shader doesn't output (Eglantine-Community#353) (8e1b50ca4c)
  • buffer_cache: bind table-pointer pools as far as a storage buffer reaches (Eglantine-Community#351) (b514e5f0f2)
  • vk_pipeline_cache: shader build budget 24 ms per frame by default (e330d49488)
  • dynarmic: x64: fix VectorCountLeadingZeros16 on AVX-512 (3f77c57997)
  • shader: gather from a second descriptor buffer as TLD4.B (Eglantine-Community#398) (979991233b)
  • shader: shadow copies for IADD3.UR, FSETP and I2F in the lowering (2cb4c8d6d6)
  • agent: shader build budget status (e7ef36519c)
  • vk_pipeline_cache: spread run-time shader builds over frames (shader_build_budget) (c9b8bb5e52)
  • add relower_words.cpp for instruction lowering from hex input (77c41e14db)
  • vk_pipeline: log slow pipeline builds and submission-thread waits for them (a99a5ed662)
  • agent: loop paused in round 14 for the user's test (de1c819384)
  • agent: round 14 base measurement notes (2ee32a120b)
  • agent: round 13 integration notes; switch comments (29c50533cd)
  • Fix discord invite link in docs (7f07486c29)
  • fix: gcc build failed (a61fb4154d)
  • fixed missing ccache command (cf72eec6ad)
  • nx2: run_ahead_own_write_probe: verify ring tolerates late previous-epoch writes (78be364bc7)
  • nx2_perf: bank_dirty_skip marks unsafe block writes of tracked pages (942e0e6657)
  • nx2: run_ahead_own_write_probe (measurement only) (5550392e8b)
  • vulkan: use Info::UsesWarpOps for mesh and task stages (0e82056820)
  • vulkan: mesh and task stages now require the guest warp size (ff72fed972)
  • nx2_perf: bank_dirty_skip compares a native bank page only when marked (ccf280865b)
  • video_core: back_replay_lean, restart the per-second rates with each session (9536d36bd9)
  • shader: share the warp-op check between pipeline stages (70a841058e)
  • video_core: front_macro_call verify checks the borrowed words stay unchanged (2d4cf3667e)
  • video_core: back_replay_lean, a tight Maxwell3D run loop on the split back (f29e951910)
  • video_core: front_macro_call switch (default off) (79dcfbb574)
  • tools/nx2: catalogue: Ocarina of Time: 6 programs (ac20ee1535)
  • shader, buffer_cache: let compute programs bind up to 64 storage buffers (de4ed9d9d7)
  • shader: shadow copies for SHF, IADD3.UR, FSETP and I2F in the lowering (900ab5a825)
  • agent: round 13 base measurement notes (ab2a428068)
  • agent: round 12 integration notes; switch comments (6286d0e3a2)
  • fix: build on ninja (a2b70664fc)
  • video_core: exec_same_drop Verify counts map serial refreshes apart (f9f9c8ac8d)
  • video_core: state_dead_store doesn't fold a write to a forwarded register (2ae713b12a)
  • video_core: exec_same_drop leaves out executable writes the back no-ops (26d98edd78)
  • video_core: state_dead_store folds a 3D state write into its unpublished entry (110dbe261f)
  • nx2: run_ahead_overlay_budget probe (measurement only) (1c3a6935c2)
  • video_core: acquire_drain_lite resets the publish interval as Drain does (a680518427)
  • video_core: acquire_drain_lite switch for met acquire triggers and polls (e4aec0b770)
  • agent: round 12 base measurement notes (01d41bf3ac)
  • agent: round 11 integration notes (4caf96e5df)
  • nx2: diag_draw_lite on by default (round 11) (c805603330)
  • applied updated setup build action (c02ab82326)
  • ci: fixed duplicated caches (583b125d5a)
  • nx2: run_ahead_snapshot_probe: clear the GPU-written flag before each read trap (db8a1f1695)
  • nx2: run_ahead_snapshot_probe (measurement only, bit 79, off) (ab773a44bb)
  • video_core: dma_forward_tape evaluates forwarded values from a tape (5fcb40895c)
  • video_core: diag_draw_lite review fixes (b3a3f9ea0c)
  • video_core: diag_draw_lite switch (off by default) (b1ca758749)
  • video_core: report_submit_early, early fences for 0x16 report waits (d4be6837af)
  • agent: round 11 base measurement (e3fb7b9089)
  • agent: round 10 integration notes (2ac97bc933)
  • docs: added current features in changelog (a4d3aa40cf)

Ocarina of Time WIP (cc7f29a18e): less shader stutter, thumbnails fixed

Choose a tag to compare

Read first: what this build does and doesn't do

Work-in-progress Eglantine build focused on The Legend of Zelda: Ocarina of Time. Not an official release.

What's new since the last build

  • Much less freezing while shaders compile. Entering a new area used to freeze the game for up to 2 s while ~1,000 shaders were built at once. They are now built a few per frame (at most 24 ms per frame). The cost: some objects pop in late, or show as bright white silhouettes for a moment, the first time you see them.
  • Save thumbnails fixed. Slots saved before this build keep their broken preview until you save over them.
  • About 39-41 FPS at the Kokiri Forest spawn, mid 40s to low 50s walking around (Ryzen 9 9950X3D + RTX 5090). Not 60 yet.
  • Linux/GCC build fixed (#11).

New and not fully tested yet: six more shader-stutter fixes are on by default. If you see stale effects, missing objects, flicker or flashes, check whether launching with this environment variable makes them go away, and tell us:
EDEN_NX2_PERF_OFF=compute_rebuild_async,compute_preload_variants,stale_target_skip,geometry_consistency,build_order_priority,replay_disk_recordings

Known issues

  • The first time the graphics driver compiles a large shader you can still get a 1-6 s freeze. A second visit to the same place is fast.
  • Tested on one machine and on Ocarina only; other games may behave differently.

How to use

  • Unzip anywhere and run eglantine.exe. It uses its own data folder, %APPDATA%\eglantine, so you'll need your own keys and firmware.
  • Judge performance after a few minutes of play, once the shaders you see most are built.
  • Recommended: GPU Mode Fast (click the GPU button in the bottom status bar until it says "Fast").
  • Tune the shader build budget with EDEN_NX2_SHADER_BUDGET_MS=<ms>: lower means smoother frames and longer pop-in.
  • If it doesn't start, install the Microsoft Visual C++ 2015-2022 Redistributable (x64).

See OOT_STATE.md (in the zip) for what this build promises and what it doesn't, and for pointers to the design notes.

Reporting problems: include your CPU and GPU, where in the game it happened, what you saw, and %APPDATA%\eglantine\log\eden_log.txt.

Ocarina of Time WIP (2f1668f283)

Pre-release

Choose a tag to compare

Work-in-progress Eglantine build focused on The Legend of Zelda: Ocarina of Time. Not an official release.

What's in it

  • No more screen flashes in Ocarina.
  • Volumetric fog and light shafts render as on the console.
  • About 37–39 FPS at the Kokiri Forest spawn and 43–45 walking around (Ryzen 9 9950X3D + RTX 5090). Not 60 yet.

How to use

  • Unzip anywhere and run eglantine.exe. It uses its own data folder, %APPDATA%\eglantine, so you'll need your own keys and firmware.
  • If it doesn't start, install the Microsoft Visual C++ 2015–2022 Redistributable (x64).
  • The first few minutes stutter while shaders compile. Judge performance after that.
  • Recommended: GPU Mode Fast (Emulation > Configure > Graphics > Advanced).

What to expect

  • Tested on one machine and on Ocarina only; other games may behave differently.
  • See OOT_STATE.md for what this build promises and what it doesn't.

Reporting problems: include your CPU and GPU, where in the game it happened, what you saw, and %APPDATA%\eglantine\log\eden_log.txt.

Ocarina of Time: playable, no crashes (2026-11-05)

Choose a tag to compare

The first build of this fork that plays The Legend of Zelda: Ocarina of Time (Switch 2) without crashing.

RESULT FIRST fork: changes land here once they work in game, before review. Much of the code is AI-assisted and not peer-reviewed. This is not an official Eglantine release.

  • No device-lost crash after loading a save: fixed a stale buffer id left in other GPU channels.
  • 40-60 FPS in Kokiri Forest on an RTX 5090 (was 37 before the readback fix, and crashed).
  • Normal game speed when the frame rate dips below 60 (built-in "Real-time speed" patch, Add-Ons).

Tested on Windows 11, RTX 5090, GPU accuracy Low. AMD and Intel reports are very welcome.
Needs the Visual C++ 2015-2022 x64 runtime and your own firmware, keys and game.

What changed and why: OOT_STABLE.md. How we got here: OOT_WORKFLOW.md.
Want to help reach a locked 60? OOT_HELP_WANTED.md. Credits: CREDITS_OOT.md.

Eglantine Build 07/11/2026

Pre-release

Choose a tag to compare

@github-actions github-actions released this 07 Nov 04:35
434c07b

Automatic daily build of nx2 at 434c07b.

Changes since the previous daily build

  • Revert "buffer_cache: size native storage buffers from the mapping only in DL…" (4bc1ede493)
  • pls coderabit, pls (2814b15174)
  • buffer_cache: size native storage buffers from the mapping only in DLSS passes (3c131fb692)
  • pls final fix (578d88b67c)
  • final fixes (97db036789)
  • fixes (5016e217b8)
  • Update .github/workflows/release.yml (91b74512ee)
  • docs: removed unnecessary docs (21cfc42c97)
  • feat: implemented coderabbit suggestions (d31066ee04)
  • added some todos (97d3d9dec9)
  • ci: whole new ci, needs a lot of review, this is draft (689d08400b)
  • buffer_cache: keep native storage bindings in one device range (979d652d90)
  • yuzu, video_core: always use the game's own DLSS where it can run (3c45b94cae)
  • buffer_cache: size native compute storage buffers from the mapping (2e12e0def5)
  • shader_recompiler: don't require PT in UISETP bits 68-71 (adacbaae7b)
  • game_list: surface the NUP display version in the tooltip (35cde43095)
  • refactor: remove unused variable is_intel_anv from Device constructor (d6efc8ef08)
  • test: enhance StubEnvironment with additional methods for shader testing (4b1a1823ea)
  • nup_container: treat a contentless ExeFS as absent (9279b24e4c)
  • ci: remove fork-only local build workflow (d2f6956a1a)
  • shader: correct H0_NH1 mixed-sign half source (662545c5b0)
  • shader: fix H0_NH1 mixed-sign native half source (77952c8d8c)
  • core: detect NUP platform from the update ExeFS (24c9b2b0ba)
  • kepler_compute: emulate tensor programs only for Donkey Kong Bananza (fef7d2fc6c)
  • kepler_compute: emulate all of Donkey Kong Bananza's tensor programs (721b189bb7)
  • kepler_compute: emulate tensor programs that no upscale stands in for (3944c47805)
  • nx2: count the presents that return before their frame is done (204ae115e4)
  • nx2: wait for each of Donkey Kong Bananza's frames (6a22450d82)
  • set: correct the Polish language code (551fa99a99)
  • Revert "texture_cache: finish between chunked uploads so staging memory is reused" (179b5afb50)

Linux

The AppImage is self-contained (needs glibc 2.39 or newer: Ubuntu 24.04, Fedora 40, Debian 13, Arch): make it executable with chmod +x and run it. The tar.gz uses your system libraries, so Qt 6 and the usual libraries must be installed.

Build Type Standard PGO (Recommended) Notes
amd64 AppImage · tar.gz AppImage · tar.gz
ARM (aarch64) AppImage · tar.gz AppImage · tar.gz

Windows

Windows packages are in-place zip files: extract and run eglantine.exe, or eden-cli.exe from a terminal.

Build Type Standard PGO (Recommended) Notes
amd64 / x86_64 (MSVC) MSVC zip Use if you run into graphical issues on other builds
amd64 / x86_64 (MinGW) MinGW PGO zip Built with MinGW clang; bundles its own DLLs, no Visual C++ redistributable needed

macOS

Build Type Standard PGO (Recommended) Notes
arm64 (Apple Silicon) zip · dmg macOS 15 or newer. Not notarized: right-click and choose Open the first time, or run . is inside the app, in .

The PGO builds are the same programs compiled with profile-guided optimization (clang plus Eglantine's profile); prefer them when your CPU supports it.