https://github.com/pcwalton/sprocketnes
  
  
    NES emulator written in Rust 
    https://github.com/pcwalton/sprocketnes
  
        Last synced: about 2 months ago 
        JSON representation
    
NES emulator written in Rust
- Host: GitHub
 - URL: https://github.com/pcwalton/sprocketnes
 - Owner: pcwalton
 - License: mit
 - Created: 2012-10-14T06:22:28.000Z (about 13 years ago)
 - Default Branch: master
 - Last Pushed: 2019-10-23T12:28:56.000Z (about 6 years ago)
 - Last Synced: 2025-07-20T04:56:47.178Z (4 months ago)
 - Language: Rust
 - Homepage:
 - Size: 347 KB
 - Stars: 748
 - Watchers: 30
 - Forks: 54
 - Open Issues: 9
 - 
            Metadata Files:
            
- Readme: README.md
 - License: COPYING
 
 
Awesome Lists containing this project
- awesome-rust - pcwalton/sprocketnes - ci.org/pcwalton/sprocketnes.svg?branch=master">](https://travis-ci.org/pcwalton/sprocketnes) (Applications / Emulators)
 - awesome-rust - pcwalton/sprocketnes
 - awesome-rust-zh - pcwalton/sprocketnes - [<img src="https://api.travis-ci.org/pcwalton/sprocketnes.svg?branch=master">](https://travis-ci.org/pcwalton/sprocketnes) (应用 / 仿真器)
 - awesome-rust - pcwalton/sprocketnes - A NES emulator (Applications / Emulators)
 - awesome-rust - pcwalton/sprocketnes - ci.org/pcwalton/sprocketnes.svg?branch=master">](https://travis-ci.org/pcwalton/sprocketnes) (应用 Applications / 模拟器 Emulators)
 - fucking-awesome-rust - pcwalton/sprocketnes - A NES emulator (Applications / Emulators)
 - fucking-awesome-rust - pcwalton/sprocketnes - A NES emulator (Applications / Emulators)
 - awesome-rust-cn - pcwalton/sprocketnes
 - awesome-rust-cn - pcwalton/sprocketnes - ci.org/pcwalton/sprocketnes.svg?branch=master">](https://travis-ci.org/pcwalton/sprocketnes) (应用 / Emulators)
 
README
          `sprocketnes` is an emulator for the Nintendo Entertainment System written in
the Rust programming language.
Its purpose is to serve as a *technology demonstration* to show how the Rust
programming language is suitable for systems software such as emulators. It
has many shortcomings and is not intended to be a production-quality emulator.
`sprocketnes` is also designed to be a relatively clean example codebase,
showing off various Rust idioms.
The NES was chosen for this project because:
* It's familiar to most hackers.
* It's a reasonably simple system to emulate.
* Because of its popularity, its workings are relatively well-documented.
* It's CPU-bound, so it can serve as a benchmark to help optimize Rust code.
* The audio requires some measure of real-time operation, which tests Rust's
  real-time capabilities.
The main controls are as follows:
* A: Z
* B: X
* Start: Enter
* Select: Right shift
* D-Pad: Arrows
Other keys:
* Save state: S
* Load state: L
* Quit: Escape
If you want to build `sprocketnes`, you will first need the Speex codec library
installed; on the Mac you can install it with `brew install speex`.
To build (add `--release` if you actually want playable speed):
    cargo build
There are numerous demos and games available for free for use with this
emulator at http://nesdev.com/.
Enjoy!