-
Notifications
You must be signed in to change notification settings - Fork 0
Roadmap
RustySNES ships as a named, versioned release ladder (to-dos/VERSION-PLAN.md in the repo is the canonical source — this page mirrors it, and may lag slightly behind; the repo doc always wins on a conflict).
-
v0.1.0"Foundation" — the first tagged release, closing the gap between the substantial engineering already done (CPU oracle, scheduler/PPU, APU, Core/Curated + several BestEffort coprocessors, a playable native+wasm-compiling frontend) and an actual GitHub release. -
v0.2.0"Persistence" — a versioned, deterministic core-wide save-state format (System::save_state/load_state), the prerequisite every downstream feature below builds on. -
v0.3.0"Continuum" — rewind and run-ahead (both built onv0.2.0's save-state primitive), PAL region auto-detection, and the ExLoROM memory-map model.
-
v0.4.0"Completion" — closes out the coprocessor/board matrix: SPC7110 fully validated (it currently implements the algorithm but doesn't yet boot to real content), ST018 (an ARMv3 LLE core, not started), and standalone S-RTC. -
v0.5.0"Fidelity" — the accuracy push: a named hardware-gotcha regression suite, un-deferring the mid-line-raster PPU gap, pushing the composed accuracy battery toward its ceiling. -
v0.6.0"Shippable" — release-engineering + doc parity: the full playable WebAssembly frontend (not just a bootstrap scaffold), acargo audit/cargo denygate,docs/benchmarks.md, ADR backfill.
Deliberately not gated on feature breadth. Gated on: the accuracy battery holding its v0.5.0-established target with no regressions, a stable save-state/core API, and a genuinely shippable multi-platform app (native binaries + a wasm demo, both produced by the release pipeline). README/CHANGELOG/docs/STATUS in sync.
None of these have started — rustysnes-netplay, rustysnes-cheevos, and rustysnes-script are all still 1-line stub crates.
-
v1.1.0— Lua scripting (rustysnes-script) + a first debugger pass (breakpoints, memory viewer). See Scripting-Engine. -
v1.2.0— Rollback netplay (rustysnes-netplay), riding on the save-state format + thev1.0.0-stabilized determinism contract. See Netplay-and-Rollback. -
v1.3.0— RetroAchievements (rustysnes-cheevos), viarcheevos. -
v1.4.0— TAS movie recording/playback. -
v1.5.0+— shader/filter pipeline, cheat-code support, a Libretro core. Treated as a stretch tail, not committed scope up front. See Libretro-Core.
See Deferred-Features for what's explicitly deferred (not merely unstarted) and why.
RustySNES is a cycle-accurate Super Nintendo / Super Famicom emulator written in pure Rust. Licensed under MIT OR Apache-2.0. | GitHub Repository | Web Demo | API Docs