Difference between revisions of "Nintendo Entertainment System emulators"

From Emulation General Wiki
Jump to navigation Jump to search
m (Emulators)
m (Emulators)
Line 132: Line 132:
 
|style="text-align:center;"|Browser (Flash or Javascript) or Windows 8.1/RT/Phone (Microsoft App Store)
 
|style="text-align:center;"|Browser (Flash or Javascript) or Windows 8.1/RT/Phone (Microsoft App Store)
 
|style="text-align:center;"|nesbox.com
 
|style="text-align:center;"|nesbox.com
|style="text-align:center;"|
+
|style="text-align:center;"|?
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|?
 
|style="text-align:center;"|?

Revision as of 01:53, 19 October 2015

The Nintendo Entertainment System (NES)

The Nintendo Entertainment System (NES) is an 8-bit, 3rd generation console released in 1983 in Japan, where it was known as the Famicom.

The Famicom Disk System (FDS) is a Japan-only add-on which played special versions of games. It featured an extra FM sound channel, which allowed for richer sounds and music than is possible on the regular console.

Emulation for the NES is robust, with several high quality emulators for various systems.

Emulators

PC
Name OS Version FDS Libretro Core Accuracy Recommended
Nestopia UE Windows, Linux 1.46 Very High
puNES Windows, Linux 0.98 Very High (Currently Most Accurate)
Nintendulator Windows SVN Very High
BizHawk Windows 2.9.1 Mid
nemulator Windows 3.4 High
FCEUX Multi-platform 2.2.2 Mid
FCEUmm Multi-platform 98.13mm Mid
higan Windows, Linux, OS X 0.94 ✓ (as bnes v0.83) Mid
MESS Multi-platform 0.264 Mid
FakeNES GT Windows, Linux, Mac, MS-DOS 0.59 b3 Mid
QuickNES Multi-platform v1 Low
HDNes Windows Git Low
Jnes Windows 1.1.1 Windows Low
NESticle Windows, DOS x.xx DOS
0.42 Windows
Low
Nesbox Browser (Flash or Javascript) or Windows 8.1/RT/Phone (Microsoft App Store) nesbox.com ? ?
Consoles
Name Operating System(s) Latest Version FDS Libretro Core Accuracy Recommended
NesterJ* PlayStation Portable 1.13 beta 2/AoEX Mid
Virtual Console Wii, 3DS, Wii U varies per system Mid-High
Nestopia** PS3, 360, Wii 1.44 Mid
FCEUX Wii, Gamecube 2.2.1
3.3.2
Mid

*AoEX is based on NesterJ 1.12 Plus 0.61 RM, so it includes features like rewind mode, cheat codes support, rotated/mirrored screen, sepia palette, support to rare mappers (the pirate bootleg FF7 works on it), etc, but its compatibility is inferior to 1.13 beta 2.

**Only available on consoles as a libretro core (e.g. RetroArch).

Mobile
Name Operating System(s) Latest Version FDS Libretro Core Accuracy Recommended
Nestopia* Android, iOS 1.44 High
Jnes Android 1.4.8.55 Android Low
Nostalgia.NES Android 1.12.2

*Only available on mobile as a libretro core (e.g. RetroArch).


Comparisons

  • PuNES is the most accurate NES emulator according to tests.[1] These test ROMs used for determining accuracy in tests unfortunately, don't test everything that matters for accurate emulation (and in some cases, test stuff that doesn't matter for emulating any games). So just because an emulator has high ratings doesn't mean it is free of issues.
  • Nestopia has a high ranking in those same tests.[1] 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 (abv. Nestopia UE) is a fork of Nestopia meant to keep it alive and fixes the aforementioned bugs. This is generally the recommended standalone version. The libretro core for Nestopia fixes all known graphical glitches with the emulator.
  • FCEUX scores fairly low in the same tests, despite being a recommended emulator on TAS Videos. The New PPU is more accurate than the Old PPU, however. The emulator is still useful, though, thanks to its robust Lua scripting features and incorporating FCEUmm into its feature set.
  • For official emulation, use Virtual Console. It is very accurate and 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 NES emulators not listed here, as the NES has more emulators than any other system, plus new ones are started all of the time. Only the ones that are well known or stand out in some way will be listed.

Emulation Issues

Overscan

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 the overscan to be cropped to look proper. There is however, seemingly no standard level of overcropping. Many games seem to require different levels of overcropping. SMB3 requires a lot of cropping, however the same level of cropping will obscure of the letters in the status bar in Castlevania games. It did not seem that there was standardization until the next generation of consoles.

Color Palette

Palette Type Nestopia decoder preset Description
YUV 15° Canonical Based of the standard method of NTSC decoding.
RGB RGB PlayChoice-10 PPU palette.
YUV (Sony CXA2025AS) Consumer Based on an NTSC decoder found in Sony TVs.
YUV with yellow boost Alternative Based on decoders in certain NTSC-J TVs.[2]
Raw Luma and Chroma Raw* The raw chroma, level, and emphasis output of the NES PPU represented in RGB color channels[3]

*Only available as an option on the libretro port of Nestopia.

Unlike consoles like the SNES, which natively generate the image in pure RGB, the Famicom normally generates and outputs an encoded NTSC video signal, which must then be decoded by the TV's built-in NTSC decoder. This means the resulting color palette often varies depending on the display's decoder. This is why NES games appear to have different colors on different TV sets.

NES emulators are similarly afflicted by this issue, as they each have their own algorithms for generating the NES color palette, meaning they all have slightly to wildly varying palettes. As such, there isn't really a "true" NES color palette, and which emulator has the "best" palette often comes down to preference, or whichever looks closest to how the real console looks on a user's own particular TV. FCEU based emulators come with a load of different preset palettes based on different people's perceptions of the NES colors, while emulators such as Nestopia have the ability for the user to edit the color palette to their liking, including the use of custom palettes that define the NES palette in any way the user wishes, such as this palette used in Mega Man 9.

Some arcade machines based on the NES hardware, such as the PlayChoice-10 and the Versus series of cabinets, did generate a native RGB signal, however. The colors on these cabinets tend to be very vibrant and saturated, giving games a very distinct look compared to how they would look on the real console. Nestopia gives the user the choice to use the RGB palette featured in these cabinets, though it is not usually considered to be the definitive or "real" NES palette.

The libretro port of Nestopia has the option to output the raw chroma, level, and emphasis from the PPU through the RGB color channels. This by itself produces an image with completely bizarre colors, but this can be decoded by shaders to generate actual colors, the main example being GTU-Famicom.

Resources

  • Nesdev Wiki - A place for all your NES programming, and NES emulator programming needs.

References