NES emulator written entirely in Go, aimed at accurately reproducing classic Nintendo Entertainment System games in a modern, cross-platform environment. It reimplements the NES hardware in software, including CPU, PPU (graphics), and APU (audio), and then presents the output using OpenGL for video and PortAudio for sound. The emulator supports a menu mode where, if you point it at a directory instead of a single ROM, it scans all ROMs and shows a game selection screen with thumbnails fetched from an online database keyed by each ROM’s MD5 hash. Once a ROM is chosen, the emulator maps keyboard controls to NES inputs and also supports USB joysticks, letting you play with a gamepad instead of just the keyboard. Under the hood it implements several common NES cartridge mappers such as NROM, MMC1, UNROM, CNROM, MMC3, and AOROM, which together cover the majority of NES titles in circulation.

Features

  • Pure Go NES emulator with OpenGL graphics and PortAudio sound output
  • Command-line usage that accepts a single ROM or a directory of ROMs and shows a thumbnail-based game selection menu
  • Support for multiple NES cartridge mappers covering roughly 85% of commercial games
  • Keyboard and joystick input support with a clear default key mapping for NES controls
  • Easy installation via go get, automatically fetching dependencies and building the executable
  • Links to NES technical documentation and references for emulator developers and hardware enthusiasts

Project Samples

Project Activity

See All Activity >

Categories

Emulators

License

MIT License

Follow NES

NES Web Site

Other Useful Business Software
$300 Free Credits for Your Google Cloud Projects Icon
$300 Free Credits for Your Google Cloud Projects

Start building on Google Cloud with $300 in free credits. No commitment, no credit card required until you're ready to scale.

Launch your next project with $300 in free Google Cloud credits—no strings attached. Test, build, and deploy without risk. Use your credits across the entire Google Cloud platform to find what works best for your needs. After your credits are used, continue with always-free tier services. Only pay when you're ready to scale. Sign up in minutes and start exploring.
Start Free Trial
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of NES!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

Go

Related Categories

Go Emulators

Registered

2025-11-21