From c724382301ba10fd604c443d751d06f95d85c7c7 Mon Sep 17 00:00:00 2001 From: DoubleGate Date: Sun, 4 Oct 2026 00:53:41 -0400 Subject: [PATCH 1/2] RustyNES: update extensions, core options, background and ports Adds .unf/.unif, marks Core Options supported (Four Score), describes the one-clock scheduler that replaced the lockstep model, and lists the four input-descriptor ports the core declares. Co-Authored-By: Claude Opus 5.5 (1M context) Claude-Session: https://claude.ai/code/session_014qfTKi2M3swo7qnwvYCkDj --- docs/library/rustynes.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/docs/library/rustynes.md b/docs/library/rustynes.md index 58f3d1c045..567493db85 100644 --- a/docs/library/rustynes.md +++ b/docs/library/rustynes.md @@ -2,7 +2,7 @@ ## Background -RustyNES is a cycle-accurate Nintendo Entertainment System (NES) and Famicom emulator written entirely in pure Rust. It targets the highest accuracy bar (comparable to Mesen and higan) through strict lockstep timing at PPU-dot resolution, without relying on threading or standard library timing. +RustyNES is a cycle-accurate Nintendo Entertainment System (NES) and Famicom emulator written entirely in pure Rust. It targets the highest accuracy bar (comparable to Mesen and higan) by running from one master clock, splitting every CPU cycle into two halves and bringing the PPU up to date at each, rather than relying on per-game hacks. It is extremely portable and deterministic, making it a reliable choice for netplay, TAS, and accurate emulation enthusiasts. @@ -24,6 +24,8 @@ Content that can be loaded by the RustyNES core have the following file extensio - .nes - .fds +- .unf +- .unif ## Databases @@ -44,7 +46,7 @@ Frontend-level settings or features that the RustyNES core respects. | States | ✔ | | Rewind | ✔ | | Netplay | ✔ | -| Core Options | ✕ | +| Core Options | ✔ | | [Memory Monitoring (achievements)](../guides/memorymonitoring.md) | ✔ | | RetroArch Cheats | ✔ | | Native Cheats | ✔ | @@ -82,7 +84,7 @@ marked optional at the frontend level, but no FDS game will run): ![](../image/controller/nes.png) -| User 1 - 2 input descriptors | RetroPad Inputs | +| User 1 - 4 input descriptors | RetroPad Inputs | |------------------------------|-------------------------------------------| | B | ![](../image/retropad/retro_b.png) | | A | ![](../image/retropad/retro_a.png) | From e2173d0f92ee4dab6061cdb46a0d598c19acb2d6 Mon Sep 17 00:00:00 2001 From: DoubleGate Date: Tue, 6 Oct 2026 14:48:44 -0400 Subject: [PATCH 2/2] rustynes: restate that the core uses no threads or std timing --- docs/library/rustynes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/library/rustynes.md b/docs/library/rustynes.md index 567493db85..6ce15fc252 100644 --- a/docs/library/rustynes.md +++ b/docs/library/rustynes.md @@ -2,7 +2,7 @@ ## Background -RustyNES is a cycle-accurate Nintendo Entertainment System (NES) and Famicom emulator written entirely in pure Rust. It targets the highest accuracy bar (comparable to Mesen and higan) by running from one master clock, splitting every CPU cycle into two halves and bringing the PPU up to date at each, rather than relying on per-game hacks. +RustyNES is a cycle-accurate Nintendo Entertainment System (NES) and Famicom emulator written entirely in pure Rust. It targets the highest accuracy bar (comparable to Mesen and higan) by running from one master clock, splitting every CPU cycle into two halves and bringing the PPU up to date at each, rather than relying on per-game hacks. The emulation core uses no threads and no standard-library timing (it builds as `no_std`), so its output depends only on the ROM and the input. It is extremely portable and deterministic, making it a reliable choice for netplay, TAS, and accurate emulation enthusiasts.