Lemon v0.3
Nightly and Experimental are merged into main and retired as separate channels as of this release — one consolidated build going forward.
Highlights
- Savestate reliability: Quick Save/Quick Load now excludes threads asleep on a kernel wait from the restore instead of corrupting their stack/context, making it reliable on real multi-threaded games (previously same-session only, MVP-quality). Savestate files also shrunk ~3x via sparse-encoding zero-filled memory pages.
- Rendering fix: a missing Vulkan synchronization barrier between compute-shader dispatches and the draws/copies that consume their output caused intermittent black rendering artifacts (confirmed on Zelda: Tears of the Kingdom's procedural grass and shadows).
- Crash fixes: retry custom GPU driver loading instead of falling back to the system driver after a single attempt (fixes a repeated crash-on-launch pattern confirmed on Snapdragon 888/Adreno 660); fixed a native out-of-bounds memory-unmap during shutdown that could corrupt state carried into the next game session; fixed a crash opening Settings after exiting emulation.
- Build system: Release builds were silently sharing a stale build configuration with the debug-adjacent RelWithDebInfo build type (wrong reported version, unoptimized binary) — fixed.
- UX: controller layout presets (Default/Big/Swapped D-pad↔stick) with one-tap apply from a new in-game menu; Discord and Buy Me a Coffee links on the About screen.
See the README changelog for the full history.