Skip to content

annethereshewent/rust-nes-emulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rust NES Emulator

This is yet another NES emulator written in Rust. I wanted to get more experience doing low level programming, and I decided that this would be a fun way to learn a new programming language.

Update

Now supports NES mappers 1-4, this expands the list of compatible games greatly. (though with some graphical glitches in some of them)

Audio is fully implemented!

Running the emulator

There are two ways of running the emulator:

  • Desktop App
  • Web app

Desktop app

To compile the desktop app, run cargo build --release. Then, with the executable generated, run ./nes-emulator <path-to-game>.

Web app

Web app is now available at https://annethereshewent.github.io/

Controls

Supports both keyboard and gamepad on both the desktop app and web app.

Keyboard controls

  • Up: W
  • Down: S
  • Left: A
  • Right: D
  • A: K
  • B J
  • Select: Tab
  • Start: Enter

Gamepad controls

On a PS5 controller: (Xbox controller may differ)

  • Up, down, left right: Direction buttons
  • A: X
  • B: Square
  • Select: Share
  • Start: Start

Screenshots

Screenshot 2023-07-01 at 2 15 57 PM Screenshot 2023-07-01 at 2 14 45 PM Screenshot 2023-07-01 at 2 32 48 PM Screenshot 2023-07-01 at 2 13 07 PM Screenshot 2023-07-01 at 2 12 22 PM Screenshot 2023-07-01 at 2 18 51 PM Screenshot 2023-07-07 at 7 49 00 PM Screenshot 2023-07-07 at 7 47 52 PM Screenshot 2023-07-07 at 7 47 31 PM Screenshot 2023-07-07 at 7 46 13 PM Screenshot 2023-07-07 at 7 51 24 PM Screenshot 2023-07-07 at 7 50 38 PM

About

NES emulator written in Rust

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published