Nintendo Entertainment System emulators

From Emulation General Wiki
Jump to: navigation, search
The Nintendo Entertainment System (NES)
The Nintendo Entertainment System (NES) is an 8-bit, third-generation console released in 1983 in Japan, where it was known as the Family Computer or Famicom.

The Family Computer Disk System (FDS) is a Japan-only add-on which played games from a special Nintendo-only magnetic disk format strongly reminiscent of floppy disks of the time. Emulation for the NES is robust, with several high quality emulators for various systems.

Emulators[edit]

Name Operating System(s) Latest Version FDS Libretro Core Accuracy Active Recommended
PC
Mesen Windows, Linux 0.9.3 Cycle
Nestopia UE Windows, Linux 1.48 Cycle
puNES Windows, Linux 0.102 Cycle
Nintendulator Windows 0.975 Beta Cycle
3DNES Windows, Mac, Linux 1.4 ?
BizHawk Windows 2.2 Cycle
MyNes Windows, Linux 6.3.10 ?
cxNES Windows, Linux 0.3.3 ?
FakeNES GT Windows, Linux, Mac, MS-DOS 0.59 b3 Mid
FCEUX Multi-platform 2.2.3 Mid
FCEUmm Multi-platform 98.13mm Mid
HDNes Windows Git Low
higan Windows, Linux, OS X 0.105 ✓ (as bnes v0.83) Cycle
Jnes Windows 1.2.1 Low
MAME Multi-platform 0.192 Mid
nemulator Windows 4.2 High
nesemu2 Linux Git Cycle
NESticle Windows, DOS x.xx DOS
0.42 Windows
Low
QuickNES Multi-platform v1 Low
RockNES Windows 5.53 High
VirtuaNES Windows 0.97 Low
Consoles
NesterJ* PlayStation Portable 1.13 beta 2/AoEX Mid ?
Virtual Console Wii, 3DS, Wii U varies per system Minimal
Nestopia** PS3, 360, Wii 1.44 Mid ?
FCEUX Wii, Gamecube 2.2.1
3.3.2
Mid ?
NESBox Xbox One v4 ?
Mobile
Nestopia*** Android, iOS 1.44 High ?
Jnes Android 1.4.8.55 Android Low
Nostalgia.NES Android 1.12.2

* AoEX is based on NesterJ 1.12 Plus 0.61 RM, so it 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.
** Only available on consoles as a libretro core (e.g. RetroArch).
*** Only available on mobile as a libretro core (e.g. RetroArch).


Comparisons[edit]

  • Mesen is the most accurate NES emulator according to currently established NES test ROM suites.[1] It should be the emulator of choice for those who desire the utmost accuracy. Mesen is also very user-friendly and supports a lot of features that other emulators are missing such as netplay, auto-updating, good built in filters, both .zip and goodmerged file loading etc.
  • PuNES is the second most accurate NES emulator according to a separate test battery run by the TASVideos community.[2] While Mesen has more overall mapper support, it should be noted that PuNES has one mapper that Mesen doesn't: 116. This allows games like Kart Fighter and Somari to be supported.
  • Nestopia also has a high ranking in those same tests.[2] Even so, 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 is a fork of Nestopia meant to keep it alive and fix the aforementioned bugs. This version is generally recommended over vanilla. Even the libretro core for Nestopia is Undead Edition in libretro form.
  • Nintendulator and MyNes also have a fairly high ranking in those tests.[2]
  • FCEUX scores rather low in these tests, despite being a recommended emulator on TAS Videos. The New PPU is more accurate than the Old PPU, thankfully. The emulator is still useful, though, thanks to its robust Lua scripting and incorporating FCEUmm into its feature set.
  • VirtuaNES also scores quite low in the tests, but in turn supports several obscure peripherals that are not available on other emulators.
  • For official emulation, use Virtual Console. It has the backing of many of the developers, including Nintendo, Capcom, Square Enix and Namco. The Wii has 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 way are covered here.

Emulation Issues[edit]

Overscan[edit]

Example of faulty visuals that are exposed when no overscan is cropped. Note the blank blue area to the left and the green garbage on the right. On NTSC CRT TVs, these areas may or may not be visible
Several NES games need their overscan to be cropped to look proper. Unfortunately, there is seemingly no standard level of overcropping. Many games appear to require different levels for best results. For example, SMB3 requires quite a lot of cropping, however the same level of cropping will certainly obscure the letters of the status bar in Castlevania games.

Color Palette[edit]

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.

Peripherals[edit]

There were many accessories released for the NES but Emulation 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 D-PAD, SELECT, START, A, and B button commands. 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.[3]

Zapper[edit]

This accessory was very common. It's a light gun, used for many games such as Duck Hunt, Wild Gunman, and Hogan's Alley, to name three examples. When the trigger is pulled, the screen flashes black for a period of 1-2 frames while displaying a white rectangle (indicating the target to shoot at). If the gun detects it is pointing at the white rectangle, it tells the game to register a hit. On real hardware this could be quite unreliable unless the lenses were thoroughly clean. The Zapper plugged into the P2 port and mainly worked with old CRT TVs; newer LCD TVs will not register with the Zapper. Many emulators support this accessory with 100% accurate hit detection in the form of a mouse click (PC), tap (for mobile), remote (Wii ports of NES emulators), or faked pointers using a controller.

Arkanoid/Vaus Controller[edit]

This controller was released by Taito with one button to "fire" and a dial to control back and forth movement. Arkanoid is the only NES game to utilize it, but it is still optional even so. Mesen supports this.

Miracle Piano Teaching System[edit]

By the Software Toolworks, the Miracle Piano Teaching System used an electronic piano keyboard as input. It is unknown if any emulator supports this feature.

Family Trainer/Family Fun Fitness/Power Pad[edit]

This was designed to be used with your feet, typically by running in place on numbered circles to represent the button presses. It plugs into the P2 port and has 12 different buttons. Notable games such as Stadium Events, World Class Track Meet, and Athletic World, utilize this, and trying to use a standard controller is not an option. Despite being less accurate than puNES or Mesen, FCEUX actually supports this.

NES Four Score/NES Satellite/4-Player Adaptor[edit]

This turned the standard two controller ports into four by plugging into both P1 and P2. A few games utilized this capability, such as LJN's A Nightmare on Elm Street. Many emulators support this feature by having an option to switch between 2-player and 4-player mode or just enabling/disabling Player 3 and Player 4's controller.

Microphone[edit]

Technically not a peripheral because it was physically part of each Model 1 Famicom, on the second player's controller is a microphone and volume slider instead of having START and SELECT buttons. One noteworthy game that makes use of this is the Japanese Legend of Zelda. Pols Voice, an enemy, is destroyed if the player makes a loud sound into the microphone (the US version changed this to merely firing an arrow to 1-shot them). Another game to make use of the microphone is Takeshi no Chōsenjō (Takeshi's Challenge). VirtuaNES supports this, activated by tapping the 'M' key on default settings. Mesen also supports this.

Karaoke Studio[edit]

Separate from the built-in microphone, Bandai made Karaoke Studio, which is a special game cartridge that has a microphone attached to it. It is unknown if any emulator supports this.

Family Computer Disk System[edit]

A Japan-only peripheral using a magnetic disk format instead of cartridges, with its own unique game library. Some of these were later ported to the regular NES/Famicom cartridge format with significant downgrades (particularly the loss of enhanced FDS hardware audio). This accessory made it possible to save game data without needing battery-backed ROM, but only for the game contained on each of the disks.

You'll need the BIOS file to emulate games made for this add-on. It's interesting to note there are actually two versions of the BIOS; Nintendo's peripheral and Sharp's Twin Famicom. The only difference is Nintendo's displays Nintendo while Sharp's displays Famicom when the hardware is first booted. Other than that, they function identically.

Famicom Keyboard[edit]

Only one game used a keyboard to program in BASIC on the Famicom and that was Family BASIC. VirtuaNES supports it.

Data Recorder[edit]

The Data Recorder is an accessory related to the Famicom Keyboard. Three games and one accessory supported the Data Recorder: Excitebike, Mach Rider, Wrecking Crew, and Family BASIC. These sent an analog audio stream through the keyboard to a cassette tape deck, but really any device capable of analog audio recording/playback can work with it. The "sounds" are really just 0s and 1s to represent the data the games are trying to write. VirtuaNES supports this accessory, controlled from the "Tape" menu.

ASCII Turbo File[edit]

Different from either battery-backed ROM cartridge or the FDS, ASCII Corporation (based in Japan) created their own method to save game data with the ASCII Turbo File. VirtuaNES supports this too.

Oeka Kids tablet[edit]

This accessory was a tablet for the Famicom games Oeka Kids: Anpanman no Hiragana Daisuki and Oeka Kids: Anpanman to Oekaki Shiyou!!.[4] Mesen supports it.

CompuTrainer Pro[edit]

This is very rare and was only used in the unlicensed game RacerMate Challenge II. No known emulator supports it. [5]

Game Genie[edit]

Although most emulators in general have a GUI to manage cheats and don't rely on real hardware cheating devices, FCEUX can cheat authentically using a Game Genie ROM.

Hardware Variants[edit]

VS System[edit]

An arcade system based on the NES released for the US. Most emulators have an option to let you "Insert Coin(s)".

ROMs made with VS System in mind which are 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.

Famicom Box[edit]

Also re-released later as Sharp's FamicomStation. A bulky metal cube, with a slot to insert money and secured with tons of locks. It was distributed in select hotels and stores and can hold up to 15 select Famicom releases at once, and 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.

Neither the cartridges nor the BIOS have been dumped or tested with an emulator, unlike the Super Famicom Box (which has had both its BIOS' and most of its ROMs dumped).

Dendy[edit]

A pirate NES Famicom clone which was sold in Russia and Eastern Europe, with the blueprint later reused for other Famiclones. Here's a link to a CC-subtitled Kinaman video for more details. It's a very quirky NTSC NES optimized for 50Hz, 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.

MESS supports this console, and some other emulators (such as Mesen, puNES and FCEUX) introduced support for it in r3134, along with the already included 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.


Resources[edit]

  • Nesdev Wiki - A place for all your NES programming/NES emulator programming needs.
  • Nesdev Forum - Discussion of NES Wii Virtual Console accuracy.

References[edit]