|Number of watchers on Github||3520|
|Number of open issues||5|
|Average time to close an issue||about 2 months|
|Average time to merge a PR||about 9 hours|
|Open pull requests||2+|
|Closed pull requests||5+|
|Last commit||almost 3 years ago|
|Repo Created||over 5 years ago|
|Repo Last Updated||over 2 years ago|
|Organization / Author||fogleman|
|Do you use nes? Leave a review!|
|View open issues (5)|
|View nes activity|
|View on github|
|Book a Mock Interview With Me (Silicon Valley Engineering Leader, 100s of interviews conducted)|
Software engineers: It's time to get promoted. Starting NOW! Subscribe to my mailing list and I will equip you with tools, tips and actionable advice to grow in your career.
This is an NES emulator written in Go.
github.com/go-gl/gl/v2.1/gl github.com/go-gl/glfw/v3.1/glfw github.com/gordonklaus/portaudio
The portaudio-go dependency requires PortAudio on your system:
To build portaudio-go, you must first have the PortAudio development headers and libraries installed. Some systems provide a package for this; e.g., on Ubuntu you would want to run apt-get install portaudio19-dev. On other systems you might have to install from source.
On Mac, you can use homebrew:
brew install portaudio
go get command will automatically fetch the dependencies listed above,
compile the binary and place it in your
go get github.com/fogleman/nes
If no arguments are specified, the program will look for rom files in the current working directory.
If a directory is specified, the program will look for rom files in that directory.
If a file is specified, the program will run that rom.
For 1 & 2, the program will display a menu screen to select which rom to play. The thumbnails are downloaded from an online database keyed by the md5 sum of the rom file.
Joysticks are supported, although the button mapping is currently hard-coded. Keyboard controls are indicated below.
|Up, Down, Left, Right||Arrow Keys|
The following mappers have been implemented:
These mappers cover about 85% of all NES games. I hope to implement more mappers soon. To see what games should work, consult this list:
Interested in writing your own emulator? Curious about the NES internals? Here are some good resources: