What is this?
Nestopia is an emulator for the Nintendo Entertainment System/Famicom (and Famicom Disk System). It is a computer program that acts like a physical piece of hardware. In other words, this is a method of preserving videogame history, with the welcome side effect of allowing you to play NES games on a modern computer.
Nestopia was started many years ago by Martin Freij, and quickly rose to fame for being one of the most accurate NES emulators around. Due to it being released as open source software, other people were allowed to enhance it. A Linux port was eventually done by R. Belmont, but the emulator, and the Linux port seem to have been abandoned since 2008.
A lot of bugs have been fixed and improvements have been made already. The emulator core is in pretty good shape already, so most of the improvements will be related to user-friendliness and modernity. Support for FreeBSD, OpenBSD, and NetBSD is now integrated. The Windows version is also being maintained, and will receive any updates to the core that may come, such as support for more mappers. There is also a libretro port that can be used on most (all?) of the libretro-supported platforms.
- Support for FreeBSD, OpenBSD, and NetBSD
- TV Aspect Ratio option added
- 2xSaI filter option exposed
- Renamed Linux port to Unix port
- Removed status bar
- General UI improvements
- Stop warning about unused results
- SDL is the default sound API on Linux, the only one on the BSDs
- Drag and Drop re-enabled
- Fixed SDL sound crashes
- Fixed Movie Record crash
- Loading a state when none exists no longer resets
- Fixed bug that causes "Enter" to toggle fullscreen
- GUI responsiveness glitches when failing to output sound fixed
- TV Aspect is more accurate (win32) - W.M. Martinez
- libretro port done by Themaister and twinaphex
- Merged a fix for Mapper 79 that affects "Puzzle (Unl)" - shalma
- Fixed a PPU bug that causes problems in "The Young Indiana Jones Chronicles" - Art Vandelae, plasturion, and James
- Mapper 143 fix that affects "Dancing Blocks (Unl)" - shalma
- Fullscreen mode defaults to native resolution
- Completely rewrote the GTK+ GUI
- More win32 stuff merged from Unofficial Build 1.41.1
- Added native support for D-pads (Hat Switches)
- Fixed the 100% CPU usage bug
- Fixed the "Error writing setting!" bug (patch from Arch Linux)
- Added an About dialog box
- Added icons and a desktop menu entry
- Fixed a braindead SRAM path issue
- Merged win32 fixes from Unofficial Build 1.41.1
- Ported to GTK+3
- Added install/uninstall targets to Makefile
- Changed default sound API to ALSA
- Changed default renderer to OpenGL with a scale factor of 2
- Changed binary name to "nestopia"
- SRAM now saves to ~/.nestopia/save (for people who have roms on a read-only network share)
- Automatically install a new nstcontrols file to ~/.nestopia if it doesn't exist
- Install NstDatabase.xml to a proper location on the filesystem instead of forcing the user to manually copy it to ~/.nestopia
- Fixed numerous compiler warnings.
All of the basic features you would expect are implemented:
- Video Filters
- Gamepad Support
- Save States
- Soft Patching
- NSF Player
Nestopia is extremely accurate, and as a result has very high compatibility. The NES hardware is emulated at cycle-by-cycle granularity.
You can rewind your gameplay if you do something stupid. This is one of the coolest features ever, and helps prevent you from ruining your gameplay experience obsessing over save states.
Download the .tar.gz
If you want a source tarball, download it here:
If you're brave or crazy, download the master branch:
This is the best way to get the latest source code:
git clone git://github.com/rdanbrook/nestopia.git
To update your source tree later:
git pull origin
From your Distribution
The following distributions have packages available:
Debian GNU/Linux (sid)
If you're primarily a Windows user, download the win32 build: