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
Cloud-based help desk software with ServoDesk Icon
Cloud-based help desk software with ServoDesk

Full access to Enterprise features. No credit card required.

What if You Could Automate 90% of Your Repetitive Tasks in Under 30 Days? At ServoDesk, we help businesses like yours automate operations with AI, allowing you to cut service times in half and increase productivity by 25% - without hiring more staff.
Try ServoDesk for free
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

2 days ago