Nintendo Entertainment System emulators: Difference between revisions
| Line 130: | Line 130: | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{~}} | |{{~}} | ||
| | |Unlicensed | ||
|Cycle | |Cycle | ||
|{{Green}} {{License|GPLv2}} ({{License|Copyleft}}) | |{{Green}} {{License|GPLv2}} ({{License|Copyleft}}) | ||
Revision as of 12:16, 16 September 2025
| Top: NES Control Deck (with detachable controllers) Bottom: Family Computer ("Famicom") main unit (with hardwired controllers) | |
| Developer | Nintendo R&D2 |
|---|---|
| Manufacturer | Nintendo |
| Type | Home video game console |
| Generation | Third |
| Release date | JP: July 15, 1983 NA: October 18, 1985 |
| Discontinued | NA/EU/AU: August 14, 1995 JP: September 25, 2003 |
| Predecessor | Color TV-Game |
| Successor | Super Famicom/Super NES |
| Emulated | ✓ |
- For emulators that run on the Nintendo Entertainment System, see Emulators on NES.
The Nintendo Entertainment System (NES) is an 8-bit, third-generation console originally released as the Family Computer or Famicom, in Japan, on July 15, 1983. The Famicom retailed for 14800 yen. The console would be redesigned as the NES and released on October 18, 1985 in North America. The NES retailed for $179.99 ($539 in 2026). It had a Ricoh 2A03 CPU at 1.79 MHz with 2 KB of RAM.
The earliest games released on the Famicom suffered from significant hardware constraints due to the way the Famicom was designed: limited memory addressing (which meant games had a small maximum ROM size), how the graphics were loaded onscreen, just the native sound processing was available, no saving… To solve this problem, Nintendo came up with two solutions:
- The Family Computer Disk System (FDS). A Japan-only add-on that played games from a semi-custom variant of Mitsumi's Quick Disk format. It offered slightly higher data storage and slightly enhanced sound processing. There were plans to release it in the US; however, since the NES had its launch delayed to late 1985, and in the meantime the disks had turned out to be too piracy-prone, the add-on was never exported, and some of its exclusives were ported as regular cartridge releases.
- Memory Management Controllers (MMC), also known colloquially as mappers. They solved every aforementioned problem with bank switching for much more data, onboard FM audio chips, and much more. Most games released after 1986 that really pushed the system to its limits used mappers. A similar solution was used for the Game Boy.
Emulation for the Famicom/NES is robust, with many high-quality emulators for various systems and cycle-accurate emulation possible on even moderately powerful devices.
Emulators
Like for Game Boy/Color, tons of NES emulators exist. For a list of open-source projects, see this GitHub query.
| Name | Platform(s) | Latest version | Hardware variants | Enhancements | Hardware features and peripherals | Mappers support level | Accuracy | License | Active | Recommended |
|---|---|---|---|---|---|---|---|---|---|---|
| x86 | ||||||||||
| Mesen | Dev builds libretro core (obsolete) |
~ | ✓ | ✓ | Unlicensed | Cycle | GPLv3 (Copyleft) | ✓ | ✓ | |
| Nestopia UE | libretro core [1] Nestopia JG git |
~ | ~ | ✓ | Unlicensed | Cycle | GPLv2 (Copyleft) | ✓ | ✓ | |
| puNES | WIP builds [2] |
~ | ✓ | ✓ | Unlicensed | Cycle | GPLv2 (Copyleft) | ✓ | ✓ | |
| ares | git Artifacts v148 |
~ | ~ | ~ | Unlicensed | Cycle | ISC (Permissive) | ✓ | ✓ | |
| FCEUX | [3] libretro (FCEUmm) |
~ | ~ | ✓ | Unlicensed | High | GPLv2 (Copyleft) | ✓ | ~ | |
| Nintendulator/NRS | 2024-09-09 [4] |
~ | ? | ~ | Unlicensed | Cycle | GPLv2 (Copyleft) | ✓ | ~ | |
| BizHawk (QuickNES)(NESHawk) |
Dev Builds [5] |
~ | ? | ~ | Unlicensed | ? (Core dependent) |
MIT GPL |
✓ | ~ | |
| 3dSen | [6] | ✗ | ~ | ✗ | Only for selected titles | Game dependent | Proprietary | ✓ | ~ | |
| jgenesis | 0.14.1 | ? | ? | ? | ? | ? | MIT (Permissive) | ✓ | ? | |
| MAME | git artifacts[N 1] [7] libretro core |
✓ | ~ | ~ | Unlicensed | ? | GPLv2 BSD-3-Clause |
✓ | ✗ | |
| QuickNES | libretro core [8] |
~ | ~ | ~ | ? | ? | GPLv2 (Copyleft) | ~[N 2] | ✗ | |
| BeesNES | git | ✗ | ~ | ✗ | ?* | Subcycle | MIT (Permissive) | ✓ | WIP | |
| breakNES | [9] | ✗ | ? | ✗ | ?* | Gate-level | CC0 1.0 (Public domain equivalent) | ✓ | WIP | |
| MetalNES | git | ✗ | ✗ | ✗ | ? | Transistor-level | MIT (Permissive) | ✗ | ✗ | |
| nintaco | 2023-12-08 | ~ | ✗ | ? | Unlicensed | Cycle | LGPLv2.1 (Copyleft) | ✗ | ✗ | |
| ANESE | 0.9.1 | ? | ~ | ~ | ? | ? | MIT (Permissive) | ~ | ✗ | |
| iNES | [10] | ~ | ✗ | ~ | ? | ? | ? | ✓ | ✗ | |
| HDNes | git | ? | ~[N 3] | ? | ? | ? | ? | ✓ | ✗ | |
| FinalBurn Neo | libretro core WIP builds |
✗ | ✗ | ~ | Unlicensed | High | Non-commercial | ✓ | ✗ | |
| higan (火眼) byuu (謬/view) |
[11] | ? | ✗ | ~ | ? | Cycle | GPLv3 (Copyleft) | ✗ | ✗ | |
| VirtuaNES | 0.97 | ? | ? | ? | ? | Low | GPLv2 (Copyleft) | ✗ | ✗ | |
| nemulator | [12] | ? | ? | ? | ? | Medium | BSD-2-Clause (Permissive) | ✓ | ✗ | |
| Nesemu | [13] | ? | ? | ? | ? | ? | MIT (Permissive) | ✓ | ✗ | |
| HalfNES | [14] | ? | ? | ? | ? | ? | GPLv3 (Copyleft) | ✗ | ✗ | |
| Jnes | 1.2.1 | ? | ? | ? | ? | ? | Proprietary | ✗ | ✗ | |
| PicoNES | Online |
? | ? | ? | ? | ? | BSD-3-Clause 6502 Model | ✓ | ✗ | |
| NESticle | x.xx (DOS) 0.42 (Win9x) |
? | ? | ✗ | ? | Low | Proprietary[N 4] | ✗ | ✗ | |
| RockNES | [15] | ? | ? | ? | ? | High | Proprietary | ✗ | ✗ | |
| RetroCopy | 0.960 1.00 Beta 5 |
? | Cycle | Proprietary | ✗ | ✗ | ||||
| rew. | rew12stx | ? | ✗ | ? | ? | ? | Proprietary | ✗ | ✗ | |
| ARM | ||||||||||
| ares | git Artifacts v148 |
? | ? | ? | ? | ? | ISC (Permissive) | ✓ | ✓ | |
| Nestopia_libretro | libretro core | ~ | ~ | ~ | Unlicensed | Cycle | GPLv2 (Copyleft) | ✓ | ✓ | |
| FCEUmm_libretro[1] | libretro core | ~ | ~ | ~ | Unlicensed | High | GPLv2 (Copyleft) | ✓ | ✓ | |
| NES.emu | 1.5.82git (Android) 1.5.46.02 (Pyra) |
? | ? | ? | Unlicensed | ? | GPLv3 (Copyleft) (Android only) |
✓ | ✓ | |
| Mesen | libretro core (obsolete) | ? | ✓ | ✓ | Unlicensed | Cycle | GPLv3 (Copyleft) | ~ | ~ | |
| FreeiNES | 6.1.4 (Android) 3.6.5 (Maemo) 3.6 (Symbian) |
? | ~[2] | ? | ? | ? | Proprietary | ✓ | ~ | |
| VGBANext | [16] | ? | ? | ? | ? | ? | Proprietary | ✓ | ~ | |
| GPFCE | 0.81.0.r2 (Pandora) 0.4 r313 (GP2X) 0.4+ (Wiz) |
? | ? | ? | ? | ? | Proprietary | ✗ | ~ | |
| vNES | 1.7 (S60v3)git 1.2alt |
? | ? | ? | ? | ? | GPLv3 (Copyleft) | ✗ | ~ | |
| Nostalgia.NES | 2.0.9 | ? | ? | ? | ? | ? | Proprietary | ✗ | ~ | |
| John NESS | 1.09 | ? | ? | ? | ? | ? | Proprietary | ✓ | ✗ | |
| Jnes | 1.2.6.26 | ? | ? | ? | ? | ? | Proprietary | ~ | ✗ | |
| nesemu | 0.2.3 Beta Preview (Pandora)V1 (Wiz) 0.2 (Dingoo) |
? | ? | ? | ? | ? | BSD-3-Clause (Permissive) | ✗ | ✗ | |
| Nestopia | V2 | ? | ? | ? | ? | Cycle | Proprietary | ✗ | ✗ | |
| Nesemu | git | ? | ? | ? | ? | ? | MIT (Permissive) | ✓ | ✗ | |
| Manic EMU | [17] git |
? | ? | ? | ? | ? | AGPLv3 (Copyleft) | ✓ | TBD | |
| Nescaline | git | ? | ? | ? | ? | ? | ? | ✗ | ✗ | |
| Pocket Nester+ | 0.9 | ? | ? | ? | ? | ? | Proprietary | ✗ | ✗ | |
| 8-Bit Wonders | 0.8.6a (F-Droid) 0.8.6a (Play) 0.8.6a (Amazon) git |
? | ? | ? | ? | ? | AGPLv1 (Copyleft) | ✓ | roadmap | |
| Provenance | [18] git |
? | ? | ? | ? | ? | ? | ✓ | ? | |
| Folium | App Store ($) 2.0 Latest IPA |
? | ? | ? | ? | ? | ? | ✓ | ? | |
| Consoles | ||||||||||
| Nestopia | libretro core | ~ | ~ | ~ | Unlicensed | Cycle | GPLv2 (Copyleft) | ✓ | ✓ | |
| QuickNES | libretro core | ~ | ~ | ~ | ? | ? | GPLv2 (Copyleft) | ~[N 2] | ✓ | |
| FCEUmm | libretro core | ~ | ~ | ~ | Unlicensed | High | GPLv2 (Copyleft) | ✓ | ✓ | |
| FCE Ultra GX | [19] | ? | ? | ~ | Unlicensed | High | GPLv2 (Copyleft) | ✓ | ✓ | |
| pNES | git | ? | ? | ~ | ? | ? | GPLv3 (Copyleft) | ✓ | ~ | |
| FCEUltra for PS2 | 0.9.3 0.90i Mod |
? | ? | ? | ? | High | Proprietary | ~ | ~ | |
| Neon64 | git | ? | ? | ? | ? | ? | ISC (Permissive) | ✓ | ~ | |
| nesDS | 1.3a | ? | ? | ? | ? | ? | Proprietary | ~ | ~ | |
| PocketNES | 7-1-2013 | ? | ? | ? | ? | ? | Proprietary | ✗ | ~ | |
| Nintendo Switch Online (L-CLASSICS) | 6.9.0 | ? | ~ | ? | ? | High | Proprietary | ✓ | ~ | |
| Virtual Console | N/A | ? | ? | ? | Official | ? | Proprietary | ✗ | ~ | |
| NES Remix (Heritage) |
HeriC | ✗ | ✗ | ? | ? | ? | Proprietary | ✗ | ~ | |
| VirtuaNES for 3DS | git | ? | ? | ? | ? | Low | GPLv2 (Copyleft) | ✗ | ✓ | |
| NESBox | v4 | ? | ? | ? | ? | ? | Proprietary | ✓ | ✗ | |
| Mega Everdrive Pro | N/A | ? | ? | ? | ? | ? | Proprietary | ✓ | ~ | |
| NesterJ[N 5] | 1.13 beta 2 AoEX |
? | ? | ? | ? | ? | GPLv2 (Copyleft) | ✗ | ✗ | |
| imbNES | 1.3.4 | ? | ? | ? | ? | ? | ? | ✗ | ✗ | |
| Project Nested | [20] | ? | ? | ? | ? | ? | MIT (Permissive) | ✗ | ✗ | |
| NeMul | 1.0 | ? | ? | ? | ? | ? | Proprietary | ✗ | ✗ | |
| FC Emulator | 0.10 (Net Yaroze) 0.00 (SFC) 0.03 (WonderSwan) 0.02 (Game Boy) |
? | ? | ? | ? | ? | ? | ✗ | ✗ | |
| NES Emulator for Game Boy Color | 2009 | ? | ? | ? | ? | ? | ? | ✗ | ✗ | |
| Calculator | ||||||||||
| numworks-nofrendo | git | ? | ? | ? | ? | ? | LGPLv2 (Copyleft) | ✓ | ✗ | |
| NESpire | 0.30 git (tangrs-mod) |
? | ✗ | ? | ? | ? | ? | ✗ | ~ | |
| Famicalc | git | ? | ✗ | ? | Select titles | ? | MIT (Permissive) | ✓ | ~ | |
| NESizm | 1.00 | ? | ✗ | ? | ? | ? | MIT (Permissive) | ? | ~ | |
- ↑ CI-Windows CI-Linux CI-Macos
- ↑ 2.0 2.1 Libretro core is still active.
- ↑ Only supports sprite replacement.
- ↑ It is proprietary, though source code has been leaked.
- ↑ AoEX is based on NesterJ 1.12 Plus 0.61 RM, which includes features like rewind, cheat code support, rotated/mirrored screen, sepia palette, support for rare mappers (the pirate bootleg FF7 works on it), etc. Its compatibility is inferior to 1.13 beta 2.
Comparisons
- Mesen is a cycle-accurate NES emulator. Also, it is very user-friendly and supports lots of enhancements, hardware features and peripherals, variants and mappers that other emulators are missing. It also supports goodmerged. Latest versions can be used standalone or with .NET 8, or .NET 6. This is the most compatible NES emulator of the cycle-accurate variety.
- puNES is another cycle-accurate NES/FDS emulator. It is deemed as the second most compatible NES emulator of the cycle-accurate variety.
- Nestopia also is a cycle-accurate NES/FDS emulator. Nestopia has issues with The Young Indiana Jones Chronicles and doesn't display the status bar in Mickey's Safari in Letterland correctly (among other problems). Nestopia Undead Edition (Nestopia UE) is a fork of Nestopia meant to keep it alive and fix the aforementioned bugs, which is generally recommended over vanilla. Even the libretro core for Nestopia is the Undead Edition version.
- ares is a cycle-accurate NES/FDS multi-system emulator. NES core is just about on par with Mesen in terms of accuracy, but Mesen still has more unlicensed/aftermarket mapper support. Both the APU and PPU pretty much pass all known tests at this point, and the entire licensed library runs as intended with no known glitches, which moves ares into the forefront of accurate NES emulators now.[3]
- FCEUX is a highly-accurate NES/FDS emulator, and it supports lots of unlicensed mappers, on top of this it is a recommended emulator on TAS Videos. The New PPU implementation is more accurate than the Old PPU implementation. The emulator is handy; thanks to its robust Lua scripting and incorporating FCEUmm into its feature set. Included with BizHawk as NESHawk.
- Nintendulator also is a cycle-accurate NES/FDS emulator. NintendulatorNRS is a fork of Nintendulator that supports the Famicom Disk System, rare mappers, VRT chipsets, and many unlicensed and bootleg carts and systems.
- BeesNES is aiming for subcycle accuracy. Currently, it is a work-in-progress, but it is already including enhancements like; NTSC-CRT, debugger, disassembler, assembler and various TAS features.
- breakNES is aiming for gate-level accuracy. Currently, it is a work-in-progress and requires .NET 6.
- MetalNES is aiming for transistor-level accuracy; however, it is no longer in development.
- Nintaco simulates rare peripherals like R.O.B., the U-Force infrared distance sensor controller, and the Miracle Piano.
- For official emulation, there is Nintendo's own Nintendo Switch Online and now-discontinued Virtual Console. The Switch and Wii have a significantly larger library of NES games to choose from than the 3DS or Wii U, especially from third-party publishers.
There are many other NES emulators not listed here, as the NES has more emulators than any other system (new ones are started all the time). Only those that are well-known or stand out in some ways are covered here.
Mappers
A key difference between many emulators nowadays is how many mappers they support.
- No mapper: Supported on every emulator, even official Nintendo emulators.
- Official mappers (UNROM, AOROM, MMC1-6): Most emulators, as well as Nintendo's Virtual Console (but not their GBA emulators), will cover these.
- Third-party mappers (Various: e.g., Konami's VRC6/VRC7) While officially licensed by Nintendo, they weren't allowed outside Japan. As a result, for their Western releases, many games that took advantage of their features (advanced ROM mapping, extra sound channels) were reprogrammed significantly and shipped on the official mappers, often with simplified soundtracks. A lot of fan emulators worth their salt will cover these. With those, you cover the entire officially licensed library.
- Unlicensed mappers: Mostly used by pirate cartridges, often long past the console's official commercial lifespan. Only the most active and recommended emulators will even bother covering them in a whack-a-mole quest for every new one discovered to this very day. If you're not interested in unlicensed Chinese or Russian bootlegs or newer unofficial NES demakes, it isn't a problem.
The NES ROM information isn't enough to describe the cartridge and emulate it, so emulators have to include the layout and behavior of these mappers in their code. At the same time, the ROM header tells the emulator which mapper to choose. So unlike with other consoles, no matter how accurate a given NES emulator will get, it will still never be able to run newly discovered ROM dumps from cartridges that used a so-far unknown mapper. Thus, Unlicensed NES support will be inevitably incomplete and a constant work-in-progress, hence claims some emulators are "inaccurate."
Related to this issue: This is why most emulators won't run unheadered NES ROMs. Newer versions of Nestopia can open those, but they're handled in a slightly different way: the information that would have been included in the iNES header is instead provided in emulator configuration files that get summoned as long as the ROM's hash matches exactly the No-Intro dump of that given game (which is inconvenient for ROM hacks).
Enhancements
| Name | Mesen | puNES | Nestopia UE | ares | |
|---|---|---|---|---|---|
| Controls | Input lag-mitigating technique | ✓* | ? | ? | ? |
| Turbo button | ✓ | ? | ? | ? | |
| Graphics | Remove sprite limit The NES can normally only draw up to 8 sprites per line – this limitation is indirectly responsible for some flickering seen in games at times. When this option is enabled, the limit is disabled, allowing up to 64 sprites to be drawn on the same line. |
✓* | ? | ? | ? |
| Resizable internal resolution | For emulation of 2D systems, the resolution can only be upscaled, making the pixels more visible. | ||||
| Sprite replacement | ✓* | ✓ | ✗ | ✗ | |
| Widescreen hack Using wideNES technique (similar to wideGB); it can automatically “map-out” levels and worlds in NES games. |
Exclusive to ANESE emulator at the moment. | ||||
| Performance | Overclock | ✓* | ✓ | ? | ? |
| Post-processing | AI-powered filter compatible (Freestyle) |
? | ? | ? | ? |
| Filters | ✓ | ✓ | ✓ | ✓ | |
| Inverse tone mapping compatible | ? | ? | ? | ? | |
| Shader chain | ~[N2 1] | ~[N2 1] | ✗ | ? | |
| Quality of life | Automatic emulated controller connect/disconnect Automatically connects or disconnects emulated controllers when a new or current controller is connected or disconnected. |
✗ | ✗ | ✗ | ✗ |
| Automatic updater | ? | ? | ? | ? | |
| Big Picture Mode | ~[N2 1] | ~[N2 1] | ~[N2 1] | ✗ | |
| Built-in cheat manager | ✓* | ✓ | ? | ✓* | |
| Built-in custom resolution/CRTSwitchRes For using this on Windows OS you need CRT Emudriver. Another option is using EDID editor tool such as "Custom Resolution Utility". |
Exclusive to libretro cores and GroovyMAME at the moment. Also, there is a project for achieving software emulators like libretro cores and GroovyMAME send the raw RGB data over a network to a core running on MiSTer, it basically turns the MiSTer into a GPU for the emulator allowing for easy setup and use with CRT TVs/Arcade monitors. | ||||
| Built-in mod editor and manager | ? | ? | ? | ? | |
| Built-in patch manager | ? | ? | ? | ? | |
| Command line options | ✓* | ? | ? | ? | |
| Pause/resume emulation | ✓ | ✓ | ✓ | ✓ | |
| Per-game profiles | ✓* | ✓ | ? | ? | |
| Portable and Stealth Useful enhancement feature for non-personal computer use or plug-and-play scenarios. However, it still requires necessary prerequisites and dependencies for your operating system. |
✓ | ? | ? | ? | |
| Streamable compression format | ✓* | ? | ? | ? | |
| TAS features | Fast-forward/turbo speed | ✓* | ✓ | ? | ? |
| Frame step (forwards and backwards) |
? | ? | ? | ? | |
| Macros/Scripts/Lua | ✓* | ✗ | ? | ? | |
| Movie recording/playback | ✓* | ✓ | ? | ? | |
| Rewind | ✓* | ✓ | ? | ? | |
| Save states | ✓ | ✓ | ? | ? | |
| Misc. | AI service With the help of OCR and other techniques, the AI service can provide a live translation of a game, or text-to-speech capabilities for the visually impaired among other things, either on demand or automatically. |
Exclusive to libretro cores at the moment. | |||
| Debug features | ✓* | ✗ | ? | ? | |
| EmuVR support | Exclusive to libretro cores at the moment. | ||||
| Netplay Should not be confused with Famicom Modem emulation, see hardware features and peripherals for more information. |
✓* | ✗ | ✓ | ✗ | |
| RetroAchievements | ~[N2 1] | ✗ | ~[N2 1] | roadmap | |
Hardware features and peripherals
| Name | Mesen | puNES | Nestopia UE | ares | ||
|---|---|---|---|---|---|---|
| Hardware features | Famicom P2 controller microphone | ✓ | ? | ? | ? | |
| Peripherals | ASCII Turbo File | ✓ | ? | ? | ? | |
| Barcode Battler | ✓ | ? | ? | ✗ | ||
| Battle Box | ✓ | ? | ? | ? | ||
| Controllers | Arkanoid Paddle | ✓ | ? | ? | ? | |
| Hypershot Light Gun | ✓ | ? | ? | ? | ||
| Hypershot Pad | ✓ | ? | ? | ? | ||
| Miracle Piano | ? | ? | ? | ? | ||
| NES Advantage | ? | ? | ? | ? | ||
| Network Controller | ? | ? | ? | ? | ||
| Oeka Kids Tablet | ✓ | ? | ? | ? | ||
| Pachinko | ✓ | ? | ? | ? | ||
| Partytap | ✓ | ? | ? | ? | ||
| Power Glove | ? | ? | ✓ | ? | ||
| Power Pad/Family Trainer/Family Fun Fitness sides A & B | ✓ | ? | ? | ? | ||
| R.O.B. | ✗ | ✗ | ✓ | ✗ | ||
| SNES Controller | ✓ | ? | ? | ? | ||
| SNES Mouse | ✓ | ? | ? | ? | ||
| Trackball | ✓ | ? | ? | ? | ||
| Virtual Boy Controller | ✓ | ? | ? | ? | ||
| Zapper | ✓ | ? | ? | ? | ||
| Data Recorder | ✓ | ? | ? | ? | ||
| Datach Card | ✓ | ? | ? | ? | ||
| Exciting Boxing | ✓ | ? | ? | ? | ||
| Family BASIC | ✓ | ? | ? | ? | ||
| Family Computer 3D System | ? | ? | ? | ? | ||
| Family Computer Disk System | ✓ | ✓ | ✓ | ✓ | ||
| Family Computer Network System | ✓ | ? | ? | ? | ||
| Four Score & Sattelite | ✓ | ? | ? | ? | ||
| Mahjong | ? | ? | ? | ? | ||
| Top Rider | ? | ? | ? | ? | ||
| Unlicensed/unreleased | Action Replay | ? | ? | ? | ? | |
| Aladdin Deck Enhancer | ? | ? | ? | ? | ||
| Demo Vision | ? | ? | ? | ? | ||
| Game Genie | ? | ? | ? | ? | ||
| Pro Action Rocky | ? | ? | ? | ? | ||
| Teleplay Modem[N3 1] | ✗ | ✗ | ✗ | ✗ | ||
| WideBoy Four versions: 1, 2, 3(A) and 3(B). |
? | ? | ? | ? | ||
| Misc. | Cartridge hot swapping It was sometimes possible to apply cheats (such as a player having infinite lives) and other temporary software alterations to games by hot swapping cartridges, even though the cartridges were not designed to be hot swappable. |
? | ? | ? | ? | |
| Cartridge tilting Cartridge tilting is an action performed on cartridge-based systems to create otherwise impossible glitches. Cartridge tilting is not a glitch, but rather the process which creates glitches.[N3 2] |
? | ? | ? | ? | ||
| Copy, cut, and paste for Family BASIC | ? | ? | ? | ? | ||
| Soft & hard reset | ? | ? | ? | ? | ||
There were many accessories released for the Famicom and NES but Emulation in General only covers accessories that are truly differentiated data streams from the basic controller. For example, the Power Glove is, in actuality, just a really complicated NES controller designed to convert motion into button inputs (which doesn't change the fact that some moves in Super Glove Ball and Bad Street Brawler can only be performed with a glove, not with a standard controller). The same goes for R.O.B. and his Stack-up and Gyromite games because he was really just the second player. Strangely, the Famicom has a lot more peripheral hardware to emulate than the NES.[4][5] However, Nestopia UE surprisingly supports the Power Glove.
- ↑ This modem was going to support cross-play between Sega Genesis, SNES and NES.
- ↑
Cart Tilt Showcase Playlist
Arkanoid Paddle
Supported games:
- Arkanoid
- Arkanoid: Revenge of Doh
- Chase H.Q.
ASCII Turbo File
Supported games:
- Downtown Nekketsu Monogatari
- Haja no Fūin
- Wizardry: Proving Grounds of the Mad Overlord
- Wizardry II: The Knight of Diamonds
Data Recorder
Supported games:
- Arkanoid II
- Castle Excellent
- Excitebike
- Family BASIC
- Family BASIC V3
- Lode Runner
- Mach Rider
- Nuts & Milk
- Wrecking Crew
Family Computer 3D System
Supported games:
- Attack Animal Gakuen
- Cosmic Epsilon
- Falsion
- Famicom Grand Prix II: 3D Hot Rally
- Fuuun Shourin Ken: Ankoku no Maou
- Highway Star
- JJ: Tobidase Daisakusen Part II
Multitap
Supported titles:
- Games:
- Bomber Man II (J)
- Bomberman II (U)
- Downtown Nekketsu Koushinkyoku: Soreyuke Daiundoukai
- Gauntlet II
- Greg Norman's Golf Power
- Harlem Globetrotters
- Ike Ike! Nekketsu Hockey Bu: Subette Koronde Dai Rantou
- Indy Heat
- Kings of the Beach
- Kunio-kun no Nekketsu Soccer League
- M.U.L.E.
- Magic Johnson's Fast Break
- Millionaire (Sachen)
- Moero TwinBee: Cinnamon-hakase o Sukue!
- Monster Truck Rally
- Nekketsu Kakutou Densetsu
- Nekketsu Koukou Dodge Ball Bu
- Nekketsu Street Basket: Ganbare Dunk Heroes
- NES Play Action Football
- A Nightmare on Elm Street
- Nintendo World Cup (U)
- R.C. Pro-Am II
- Rackets and Rivals
- Roundball: 2-on-2 Challenge
- Smash T.V. (twin-stick for 2 players)
- Spot
- Super Jeopardy!
- Super Off Road
- Super Spike V'Ball
- Swords and Serpents
- Top Players' Tennis
- U.S. Championship V'Ball
- Wit's
- Homebrew games:
- Double Action Blaster Guys becomes Quadruple Action Blaster Guys when Four Score is connected (NES)
- Micro Mages (NES and Famicom)
- NESert Golfing (NES and Famicom)
- Spacey McRacey (NES)
- Super PakPak (NES and Famicom)
- Tech demos:
- Eighty (NES and Famicom)
- allpads (NES and Famicom)
- Hacks:
- Battle City - 4 Players v1.3 Ti (NES and Famicom)
- Battle City Mario - 4 players v1.0 NesDraug (NES and Famicom)
- Battletoads - 4 players v2.2 NakeuD2007 (emulator only)
- Battletoads & Double Dragon - 4 players v0.9 NakeuD2007 (emulator only)
- Super Dodge Ball - 4 Player Hack v1.00 akatranslations (Famicom)
NES Zapper
Supported games:
- The Adventures of Bayou Billy
- Barker Bill's Trick Shooting
- Day Dreamin' Davey
- Duck Hunt
- Freedom Force
- Gotcha! The Sport!
- Gumshoe
- Hogan's Alley
- The Hunt for Red October
- Laser Invasion
- The Lone Ranger
- Mechanized Attack
- Operation Wolf
- Shooting Range
- To the Earth
- Track & Field II
- Wild Gunman
Power Pad/Family Trainer/Family Fun Fitness
Supported games:
- Athletic World
- Dance Aerobics
- World Class Track Meet
SNES Controller
Supported games:
- Full Quiet
- Nova the Squirrel
- Spook-O'-Tron
Virtual Boy Controller
Supported games:
- Candelabra - Estoscerro
- Spook-O'-Tron
Hardware variants
PlayChoice-10
MAME is the only emulator that properly emulating the PlayChoice-10 system at the moment, most of the NES emulators only play the PlayChoice-10 games as a normal NES game.
VS. System
An arcade system based on the NES released for the US. It was released in two different cabinet variations: Vs. UniSystem and Vs. DualSystem. The latter has double chipsets on the PCB and is capable of handling two different programs or simply two separate copies of a single program simultaneously.
Most emulators support games in Vs. UniSystem cabinet by setting up different DIP switches. But only the MAME, Mesen, NintendulatorNRS, puNES and nintaco are suitable for games in Vs. DualSystem cabinet. For commercial emulation, Hamster re-released several VS. System games from Nintendo and Konami as part of their Arcade Archives series (the former being exclusive to Nintendo Switch, the latter being also on PS4).
Since most VS. System games have palettes that differ from the standard RGB NES palette, ROMs made with VS. The System, which is accidentally played in the emulator's NES mode (or vice versa), will cause the colors to be totally garbled. This can occur when there is an issue with the emulator's configuration or the ROM's iNES header.
These emulators only supports UniSystem cabinet: nestopia UE, FCEumm and FCEUX, BizHawk, FinalBurn Neo
Famicom Box
Also re-released later as Sharp's FamicomStation. The hybrid NES/Famicom arcade box Nintendo Famicom Box is a bulky metal cube with a slot to insert money and secured with tons of locks. The hotel would set the amount of time you could play on one token and choose the available games. You can see it in action in season 18 of Game Center CX. It was distributed in select hotels and stores and can hold up to 15 select Famicom releases at once. It had many more hardware lockout chips and pins with different behavior than usual (it also only supported cartridges using memory mapper 0). Sports a unique boot screen for both models released.
Both the Famicombox and the Famicomstation are emulated by MAME, and all of their games have been dumped
Dendy
A pirate NES Famicom clone sold in Russia and Eastern Europe with the blueprint later reused for other Famiclones. Here is
a link to a CC-subtitled Kinaman video for more details. It is a very quirky NTSC NES optimized for 50 Hertz, with many other changes from the official PAL NES as well. Though these differences often break the compatibility of Dendy-specific releases on most emulators.
MAME/MESS supports this console, and some other emulators (such as Mesen, puNES, and FCEUX) have introduced support for it, as well as support for iNES 2.0 ROM headers (including the option to mark a ROM region as PAL Dendy). The cartridges themselves can still be played as long as the emulator supports broken carts.
VTxx
VTxx is a series of NOAC (Nintendo-On-A-Chip, a kind of chip that contains all the components of a Famicom/NES) chips that implemented multiple changes and enhancements compared to regular NES, manufactured by V.R Technology.
Differences between VTxx series chips and regular NES could be checked on NesDev Wiki.
VTxx is often used in those low-quality, plug and play consoles or keyboard-shaped, so-called educational computers.
- V.R Technology provides an emulator called EmuVT as official development and debugging tool, which supports the emulation of multiple VTxx series chips. It seems to be modded out of an old emulator called NNNesterJ.
NES Classic Edition
- Main article: wikipedia:NES Classic Edition
The NES Classic Edition is a mini console that emulates the experience of the Nintendo Entertainment System. It includes 30 classic NES games and is compatible with the Wii Classic Controller and NES Classic Edition controller. Nintendo produced and sold about 2.3 million NES Classic Editions from November 2016 through April 2017, with shipments selling out nearly immediately. In April 2017, Nintendo announced they were discontinuing the product, leading to consumer confusion and incidents of greatly increased pricing among private sellers. Due to the demand for the NES Classic and the success of the Super NES Classic Edition console, Nintendo re-introduced the NES Classic on June 29, 2018. Production was discontinued again in December 2018.
Emulation issues
QD FDS support
Games dumped off the Famicom Disk System come into two major types:
- .fds format: Most common format. Ubiquitous in ROM sets (GoodSets, No-Intro). Omits some checksum data.
- .qd format (stands for QuickDisk): Only ever used in official Nintendo re-releases. Almost identical to FDS, except QD is a full dump with checksum data. May omit padding.
The checksum data in question would be checked at BIOS startup to verify the integrity of the image and whether it was tampered with, in which case it will throw an anti-piracy error. puNES added QD support in v0.111. As of now, no other NES emulators support the alternate, more complete dumps and fudging that check's result to always return a negative. To emulate a .qd image with those, stripping the checksum data with a custom script is needed.
Overscan
- Main article: Overscan

Several NES games need their overscan to be cropped to look proper. Unfortunately, there is no standard level of overcropping. Many games require different levels for the best results. For example, Super Mario Bros. 3 requires quite a bit of cropping. However, the same level of cropping will obscure the letters of the status bar in Castlevania games.
Color palette
- Main article: Famicom color palette
Unlike consoles such as the SNES, which natively generate their image in pure RGB, the Famicom normally generates and outputs an encoded NTSC video signal. This must then be decoded by the TV's built-in NTSC decoder, which means the resulting color palette often varies depending on the display's decoder. For this reason, NES games will appear to have different colors on different TV sets. To properly emulate this part of the NES experience, many Famicom emulators have a variety of different palettes to choose from.
The Wii and Wii U versions of Virtual Console use extremely dark color palettes. This is apparently not an accuracy issue, but rather an anti-epilepsy measure. For the Nintendo Switch Online service, the games were directly edited to remove seizure-inducing patterns, allowing it to use a normal palette.
Resources
- Nesdev Wiki - A place for all your NES programming/NES emulator programming needs.
- Nesdev Forum - Discussion of NES Wii Virtual Console accuracy.
- Rec0deD:88 - Play a NES emulator.
- Copetti - NES Architecture (A practical analysis by Rodrigo Copetti).
- NES / FAMICOM - NES Games Online
- Arcade / Consoles - Arcade, NES, SNES, SEGA32X, PSX, N64, NDS…
- SNES - SNES online emulator
- Mega Drive / Genesis - Sega Mega Drive games
- MSDOS Games Play DOS games with js-dos
References
- ↑ FCEUMappersModified is an unofficial build of FCEU Ultra by CaH4e3, which supports a lot of new mappers including some obscure mappers such as one for unlicensed NES ROM's.
- ↑ Only supports netplay.
- ↑ redditorcpj's comment about Ares NES core.
- ↑ List of Nintendo Entertainment System accessories
- ↑ ProblemKaputt: NES controllers
