Nestopia UE

Nestopia is a portable NES/Famicom emulator written in C++.

Nestopia UE (Undead Edition) is a '90s inspired GUI build of the Nestopia emulator for win32, Linux, and BSD.


Aug 26, 2021
Nestopia UE 1.51.1 is released. Just a simple point release that fixes a few bugs in the FLTK port and updates to the latest upstream core.

There are a few new pirate mappers, some new database entries, and some accuracy fixes. Thanks to a pull request that came in just after the last release, there is again support for macOS via homebrew, unofficial for now. Enjoy!

May 19, 2021
Back to the '90s

This release is dedicated to the best decade there ever was. The NES was a system from the '80s, but it did catch the ninja craze and most of us were playing it in the '90s anyway, both because it was still a great console and because our parents had beef with the cost of games. There was great music, and the sense that there was no limit to how awesome the future was going to be. For the first time, you could quickly communicate with people around the world, a monumental thing at the time, though often bittersweet if you were on AOL. Maybe you were a loser in highschool, but you were cool online. If you weren't alive at that time, you missed a million miles of fun!

To celebrate the '90s, Nestopia's Linux port was moved to FLTK and oldschool OpenGL 1.x. This makes it look and feel like a vanilla Windows 95 program... not that there's anything wrong with that. The change should really pump up performance on older systems. GTK was also driving me insane, and despite all my rage, they continue to avoid fixing broken features.

For a '90s style program, I highly recommend FLTK. It's ugly but it works. It gives me a reliable, slow-moving target and is simple enough that it takes little effort to work with if I want to build new features. Best yet, OpenGL is a first class citizen, and you can even use modern OpenGL without any problems. Check it out, it is way more capable than it seems. You'll be forever in debt to my priceless advice.

Things were better in the '90s. Celebrate better times through emulation!

Further reading:
Devs on Acid - When "progress" is backwards
STLWRT - A library which emulates many versions of GTK and visually resembles GTK+ 2
Fast Light Toolkit


Nestopia UE officially supports:

Download/Source Code

Windows Binaries

If you're a Windows user, download the win32 build:
1.51.1 win32

Linux and BSD Binaries

The following distributions have packages (or builds) available:
Arch Linux
Slackware (Slackbuilds)
Void Linux

Source Code

If you want a source tarball, download it here:
Download 1.51.1

Git Clone

This is the best way to get the latest source code:
git clone git://



  - Unofficial support for macOS via homebrew

  - FLTK: Better audio buffer management
  - FLTK: Fix bug related to system-wide NstDatabase.xml loading


  - Mappers 162, 302, 554 (UNL-FS304, UNL-KS7057, UNL-KS7010)
  - Add database entries for Micro Mages, Nong Chang Xiao Jing Ling

  - Accuracy fix for MMC3 and MMC6 IRQ timing
  - Accuracy fix for DMC DMA read conflicts
  - Accuracy fix for CPU Exec Space PPUIO



  - Merged the win32 sources back into the main codebase
  - Change versioning scheme
  - Avoid possible trademark infringement in controller image
  - Switch from GTK to FLTK for Linux/BSD port
	- Use Legacy OpenGL (Compatibility Profile)


  - Mappers 306, 307, 312
  - Convert many UNIF boards to NES 2.0 mappers

  - Use Nestopia core from jgemu

  - Timing and other accuracy fixes for CPU/APU
  - Revert changes that caused regressions
  - Fix Camerica mapper for Dooly Bravo Land
  - Improve MMC5 emulation for Sim City
  - Fix 8K PRG NROM games such as Galaxian
  - Full implementation of mapper 156
  - Fix SOROM saving/loading
  - Fix FDS IRQ behaviour
  - Improve RAMBO-1 timing
  - Fix support for Korean Igo (Korea) (Unl)
  - Implement mirroring for UNL-KOF97
  - Rewrite NAMCOT-175 and NAMCOT-340
  - Assign UNL-CC-21 to mapper 27 and fix CHR bank swapping