Skip to content

Getting Started

DoubleGate edited this page Jun 29, 2026 · 1 revision

Getting Started

RustyNES is a cycle-accurate Nintendo Entertainment System emulator written in pure Rust. It's available as a desktop app, mobile app, and a libretro core.

Quick Start (Desktop)

Downloading the App

You can download the latest pre-compiled binaries for Windows, macOS, and Linux from the Releases page.

First Launch

When you open RustyNES, you'll be greeted with a menu bar and a status bar framing a blank screen.

  1. Load a ROM: Go to FileOpen ROM or press F12. Select your .nes or .fds file. You can also drag-and-drop a file directly into the emulator window.
  2. Play: The game will start immediately.
  3. Save/Load State: Press F1 to save a state and F4 to load it. Hold F5 to rewind gameplay.

Default Controls

  • D-pad: Arrow keys
  • A button: Z
  • B button: X
  • Start: Enter
  • Select: Right Shift

Player 2:

  • D-pad: WASD
  • A button: Q
  • B button: E
  • Start: P
  • Select: L

Gamepads

USB gamepads are automatically bound to Player 1 (using an Xbox-style layout: South=A, West=B, Start, Back/Select, DPad). You can rebind inputs via ViewSettingsInput.

Debugger

Press the backquote key ` (or ~) to toggle the debugger overlay. This gives you deep access to the CPU, PPU, Memory, and more for development or TAS tools.

Supported Formats

RustyNES supports standard iNES and NES 2.0 ROM files (.nes). It also supports Famicom Disk System (.fds) files, NSF chiptune files, UNIF files, and soft-patching with .ips, .ups, and .bps files. You can load .zip files containing games directly.

Note: You must provide your own ROMs legally obtained from your own cartridges or from homebrew developers. Commercial Nintendo ROMs are never provided.

Clone this wiki locally