Changes

Jump to navigation Jump to search

Nintendo Entertainment System emulators

5,299 bytes added, 27 March
Comparisons
{{Infobox console
|title = Nintendo Entertainment System
|logo image = Family Computer.png|image2 = nes-t.png|imagecaption = The Family Computer (above) and Nintendo Entertainment System (below).
|developer = [[:Nintendo]]
|type = [[:Category:Home consoles|Home video game console]]
|discontinued = 2003
|predecessor = [[First_and_second_generations_of_video_game_consoles|Color TV-Game]]
|successor = [[Super Nintendo emulators|SNESSuper Family Computer / Super Nintendo Entertainment System]]
|emulated = {{✓}}
}}
==Emulators==
???add 2 emulators: [https://github.com/jsgroth/jgenesis jgenesis] and [https://github.com/jsgroth/jgnes jgnes]???
Like for [[Game Boy/Game Boy Color emulators|Game Boy/Color]], tons of NES emulators exist. For a list of open-source projects, see this [https://github.com/search?utf8=%E2%9C%93&q=nes+emulator&type=Repositories GitHub query].
<div style="maxoverflow-x:auto;width:100%; overflow:auto;">{| class="wikitable" style="text-align:center;width:100%"
! scope="col"|Name
! scope="col"|Platform(s)
|{{Y}}
|{{Y}}
|[https://github.com/punesemu/puNES/commits/master/src/core/#electric_plug-supported-mappers Unlicensed]
|Cycle
|{{✓}}
|{{✗}} (WIP)
|-
|[[jgnes]]jgenesis
|align=left|{{Icon|Windows|Linux}}
|[https://github.com/jsgroth/jgnes/releases 0.6.2jgenesis {{jgenesisVer}}]||||||{{?}}|{{}}||-|[https://jsgroth.dev/jgnes jgnes]|align=left|{{?Icon|Windows|Linux|Web}}|?[https://github.com/jsgroth/jgnes git]||||Licensed
|Cycle-based
|{{?}}
|{{✓}}
|{{}}|
|-
|[https://prilik.com/ANESE ANESE]
|{{✓}}
|-
|[httphttps://www.explusalpha.com/homecontents/nes-emu NES.emu]
|align=left|{{Icon|Android|Pyra}}
|[https://play.google.com/store/apps/details?id=com.explusalpha.NesEmu&hl=en_IN&gl=US {{.emuVer}}][https://github.com/Rakashazi/emu-ex-plus-alpha git]<small> (Android)</small><br/>[https://pyra-handheld.com/repo/apps/80 1.5.46.02]<small> (Pyra)</small>
|vNES
|align=left|{{Icon|Java|Symbian}}
|[http://web.archive.org/web/20111010231155/http://www.vampent.com/vnes.htm 1.7 (S60v3)][https://github.com/Summeli/vNes-Asha git]<br/>[https://web.archive.org/web/20061202055857/http://www.vampent.com:80/files/vNesJ2ME.zip 1.2][httphttps://web.archive.org/web/20211119171128/https://emul.lark.ru/dendy/emu/vnes.html alt]
|?
|?
|?
|Unlicensed
|?Cycle
|{{✓}}
|{{✗}}
|-
|[[FCEUX|FCE Ultra GX]]
|align=left|{{Icon|GCN|Wii|WiiU}}
|[https://github.com/dborth/fceugx/releases {{FCEUXGXVer}}]
|?
|{{~}}
|-
|[[Nintendo Switch Online<br/>]] <small>([[L-CLASSICS]])</small>
|align=left|{{Icon|Switch}}
|2.3.0
|{{✓}}
|{{✗}}
|-
|Mega Everdrive Pro
|align=left|{{Icon|MD}}
|N/A
|?
|?
|?
|?
|?
|{{✗}}
|{{✓}}
|{{~}}
|-
|NesterJ<ref group=N>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.</ref>
===Comparisons===
*[[Mesen|Mesen]] is a [[Emulation_accuracy|cycle-accurate]] NES emulator. Also, it is very user-friendly and supports lots of [[#Enhancements|enhancements]], [[#Peripherals|peripherals]], [[#Hardware_variants|variants]] and [[#Mappers|mappers]] that other emulators are missing. On top of these its It also supports [[GoodTools|goodmerged]]. Latest versions require [https://dotnet.microsoft.com/en-us/download/dotnet .NET 6]. This is the most compatible NES emulator of the cycle-accurate variety. *[[puNES]] is another [[Emulation_accuracy|cycle-accurate]] NES/FDS emulator.It is deemed as the second most compatible NES emulator of the cycle-accurate variety. 
*[[Nestopia]] also is a [[Emulation_accuracy|cycle-accurate]] NES/FDS emulator. Nestopia has issues with [[Wikipedia:The_Young_Indiana_Jones_Chronicles_(video_game)|''The Young Indiana Jones Chronicles'']] and doesn't display the status bar in [[Wikipedia:Mickey%27s_Safari_in_Letterland|''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 the Undead Edition.
 
*[[Nintendulator]] also is a [[Emulation_accuracy|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.
 
*[[FCEUX]] is a [[Emulation_accuracy|highly-accurate]] NES/FDS emulator and it supports lots of [[#Mappers|unlicensed mappers]], on top of this it's a [https://tasvideos.org/EmulatorResources recommended emulator on TAS Videos]. The New PPU implementation is more [[Emulation_accuracy|accurate]] than the Old PPU implementation. The emulator is very useful; thanks to its robust Lua scripting and incorporating FCEUmm into its feature set.
 *BeesNES is aiming for [[Emulation_accuracy|subcycle accuracy]]. Currently it is a work-in-progress, but it is already including [[#Enhancements|enhancements]] like; [[NTSC_filters#NTSC-CRT_by_LMP88959_.28EMMIR.29|NTSC-CRT]], [https://github.com/L-Spiro/BeesNES#other-features debugger, disassembler, assembler and various TAS features]. *breakNES is aiming for [[Emulation_accuracy|gate-level accuracy]]. Currently it is a work-in-progress and requires [https://dotnet.microsoft.com/en-us/download/dotnet .NET 6]. *MetalNES is aiming for [[Emulation_accuracy|transistor-level accuracy]], however it is a currently work-in-progress. 
*For official emulation, there is Nintendo's own [[Virtual Console]] or [[L-CLASSICS|Nintendo Switch Online]]. The Wii has a significantly larger library of NES games to choose from than the 3DS or Wii U, especially from third-party publishers.
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 were not 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.
==Enhancements==
{{Stub}}<div style="overflow-x:auto;width:100%">{|class="wikitable" style="text-align:center; vertical-align:middle;width:100%"
|- style="font-weight:bold;"
! colspan=2 | Name
| {{Y}}[https://www.mesen.ca/docs/debugging/scriptwindow.html *]
| {{Y}}
|{{N}}
|
|
| Rewind
| {{Y}}[https://www.mesen.ca/docs/configuration/emulation.html#general-options *]
|{{N}}|{{Y}}
|
|
| Fast-Forward/Turbo Speed
| {{Y}}[https://www.mesen.ca/docs/configuration/emulation.html#general-options *]
|{{Y}}|{{Y}}
|
|
| Savestates
| {{Y}}
|{{Y}}|{{Y}}
|
|
| [https://tasvideos.org/Movies Movie recording/playback]
| {{Y}}[https://www.mesen.ca/docs/tools.html#movies *]
|{{Y}}|{{Y}}
|
|
|
|-
| rowspan=2 4 | Post-Processing
| [[Shaders_and_filters|Filters]]
| {{Y}}
| {{?}}
| {{Y}}
|-
|[[Shaders_and_filters#AI-powered filters|AI-powered filter compatible]]<br/><small>([https://www.nvidia.com/en-us/geforce/news/gfecnt/nvidia-freestyle-ansel-enhancements-geforce-experience-article/ Freestyle])</small>
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
|-
| [[Shader_Presets|Shader Chain]]
|
|-
|[[High_dynamic_range#Inverse_tone_mapping|Inverse tone mapping compatible]]| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}|-| rowspan=5 6 | Quality of life
| Per-Game Profiles
| {{Y}}[https://www.mesen.ca/docs/configuration/video.html#overscan *]
| {{?}}
| {{?Y}}
| {{?}}
| {{?}}
| {{Y}}[https://www.mesen.ca/docs/tools.html#cheats *]
| {{?}}
| {{Y}}
| {{?}}
| {{?}}| {{?Y}}[https://old.reddit.com/r/emulation/comments/1ay6fm1/ares_v136_released/krslaki/ *]
| {{Y}}
| {{Y}}
|-
| Built-in [http://forum.arcadecontrols.com/index.php/topic,106405 Custom resolution/CRTSwitchRes]<br/><small>For using this on Windows OS you need [http://geedorah.com/eiusdemmodi/forum/viewtopic.php?pid=1009#p1009 CRT Emudriver].<br/>Another option is using EDID editor tool such as "Custom Resolution Utility".</small>
| colspan=11 | Exclusive to [https://docs.libretro.com/guides/crtswitchres/ libretro cores] and [[GroovyMAME]] at the moment.<br/>Also there is a [https://github.com/psakhis/Groovy_MiSTer 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.
|-
| [[Save_disk_space_for_ISOs|Streamable compression format]]
| {{?}}
|
|-
| [[Frontends#Graphical_User_Interfaces_.28GUIs.29|Big Picture Mode]]
| {{~}}<ref group=N2 name=RA>Exclusive to [https://docs.libretro.com/library/fceumm/ FCEUmm], [https://docs.libretro.com/library/mesen/ Mesen], [https://docs.libretro.com/library/nestopia_ue/ Nestopia] libretro cores. Also there is a [https://github.com/RetroAchievements/RANes modified version of fceux] that supports RetroAchievements.</ref>
| {{~}}<ref group=N2 name=RA></ref>
| {{~}}<ref group=N2 name=RA></ref>
| {{~}}<ref group=N2 name=RA></ref>
| {{N}}
| {{Y}}
| {{Y}}
|
|
|
| {{Y}}
|-
| rowspan=1 | Controls
|
|-
| rowspan=3 4 | Misc
| [[Netplay#NES|<abbr title="Should not be confused with Famicom Modem emulation, see #Peripherals section for more information.">Netplay</abbr>]]
| {{Y}}[https://www.mesen.ca/docs/tools.html#netplay *]
| {{Y}}
| {{YN}}
| {{Y}}
| {{X}}
| {{?}}
| {{Y}}
|-
| [[Virtual_reality#VR_game_room_simulations|EmuVR support]]
| colspan=11 | Exclusive to [https://www.emuvr.net/wiki/Installation_Guide#Downloads libretro cores] at the moment.
|-
| [https://retroachievements.org/gameList.php?c=7 RetroAchievements]
| {{~}}<ref group=N2 name=RA>Exclusive to [https://docs.libretro.com/library/fceumm/ FCEUmm], [https://docs.libretro.com/library/mesen/ Mesen], [https://docs.libretro.com/library/nestopia_ue/ Nestopia] libretro cores. Also there is a [https://github.com/RetroAchievements/RANes modified version of fceux] that supports RetroAchievements.</ref>
| {{~}}<ref group=N2 name=RA></ref>
| {{N}}
| {{Y}}[https://www.mesen.ca/docs/debugging.html *]
| {{Y}}
| {{?N}}
| {{?}}
| {{?}}
| {{N}}
|}
</div>
<references group=N2/>
==Peripherals==
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 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.<ref>[[Wikipedia:List of Nintendo Entertainment System accessories|List of Nintendo Entertainment System accessories]]</ref><ref>[https://problemkaputt.de/everynes.htm#controllers ProblemKaputt: NES controllers]</ref>
<div style="maxoverflow-x:auto;width:100%; overflow:auto;">{| class="wikitable" style="text-align:center;width:100%"! scope="col" style="width:200px;"| Picture! scope="col" style="width:200px"|Name(s)! scope="col" style="width:300px;"|Description! scope="col" style="width:150px;"|Game(s)
! scope="col" style="width:100px;text-align:center"|Support emulator(s)
! scope="col" style="width:300px;"|Note
|-
|[[File:NES Zapper.png|200px]]
!Zapper
|An electronic light gun accessory that allows players to aim at the display and shoot various objects that appear on the screen.
|''[[Wikipedia:The Adventures of Bayou Billy|The Adventures of Bayou Billy]]''<br/>''[[Wikipedia:Barker Bill's Trick Shooting|Barker Bill's Trick Shooting]]''<br/>''[[Wikipedia:Day Dreamin' Davey|Day Dreamin' Davey]]''<br/>''[[Wikipedia:Duck Hunt|Duck Hunt]]''<br/>''[[Wikipedia:Wild GunmanFreedom Force (video game)|Freedom Force]]''<br/>''[[Wikipedia:Gotcha! The Sport!|Gotcha! The Sport!]]''<br/>''[[Wikipedia:Gumshoe (video game)|Gumshoe]]''<br/>''[[Wikipedia:The Hunt for Red October (console game)|Wild GunmanThe Hunt for Red October]]''<br/>''[[Wikipedia:Hogan's Alley (video game)|Hogan's Alley]]''<br/>''[[Wikipedia:Laser Invasion|Laser Invasion]]''<br/>''[[Wikipedia:The Lone Ranger (video game)|The Lone Ranger]]''<br/>''[[Wikipedia:Mechanized Attack|Mechanized Attack]]''<br/>''[[Wikipedia:Operation Wolf|Operation Wolf]]''<br/>''[[Wikipedia:Shooting Range (video game)|Shooting Range]]''<br/>''[[Wikipedia:To the Earth|To the Earth]]''<br/>''[[Wikipedia:Track & Field II|Track & Field II]]''<br/>''[[Wikipedia:Wild Gunman|Wild Gunman]]''
|Various
|Emulated in the form of a mouse click (PC), tap (for mobile), remote ([[Wii emulators|Wii]] ports of NES emulators), or faked pointers using a controller.
|-
|[[File:ArkanoidVausController.jpg|200px]]
!Arkanoid/Vaus Controller
|A specific game controller with one button to "fire" and a dial to control back-and-forth movement.
|N/A
|-
|[[File:NES-power-pad.jpg|200px]][[File:Family Trainer.jpg|200px]][[File:FamilyFunFitness A.png|200px]][[File:FamilyFunFitness B.png|200px]]
!Power Pad<br/>Family Trainer<br/>Family Fun Fitness
|A game controller that allows players to step on a gray floor mat with 12 pressure-sensors embedded between flexible plastic to control gameplay.
|N/A
|-
|[[File:NES-Four-Score.jpg|200px]][[File:NES Satellite.png|200px]]
!NES Four Score<br/>NES Satellite<br/>4-Player Adaptor
|A multitap accessory that enables up to 4-player gameplay using infrared wireless communication.
|Emulated by having the option to switch between 2-player and 4-player mode or just enabling/disabling Player 3 and Player 4's controller.
|-
|[[File:Family Computer Disk System.png|200px]]
!Family Computer Disk System & FDS
|''See above''
|The BIOS file (which can be found [[Emulator_Files#NES_.2F_Famicom|here]]) is required for FDS emulation. Note that there are two versions of the BIOS: one that comes with FDS and another that comes with Sharp's [[Wikipedia:Twin Famicom|Twin Famicom]]. They function identically despite showing a different intro during the first boot.
|-
|[[File:DATACH JOINT ROM SYSTEM.png|200px]]
!DATACH <br> <small><i>Datach Joint ROM System</i><small>
|Bandai add-on that lets the Family Computer play a few suitable games. Swiping cards to obtain a character.
|[https://dragonball.fandom.com/wiki/Dragon_Ball_Z:_Gekit%C5%8D_Tenkaichi_Bud%C5%8Dkai Dragon Ball Z: Gekitō Tenkaichi Budōkai]<br/>[[Wikipedia:Crayon Shin-Chan: Ora to Poi Poi|Crayon Shin-Chan: Ora to Poi Poi]]<br/>[https://strategywiki.org/wiki/Yu_Yu_Hakusho:_Bakutou_Ankoku_Bujutsukai Yu Yu Hakusho: Bakutou Ankoku Bujutsukai]<br/>[https://retrostuff.org/2019/03/23/bandai-datach-ultraman-club-spokon-fight-barcodes-for-mame/ Ultraman Club: Supokon Fight!]<br>[https://retrostuff.org/2019/05/12/bandai-datach-sd-gundam-gundam-wars-barcodes-for-mame/ SD Gundam: Gundam Wars]<br>[[Wikipedia:Battle Rush: Build Up Robot Tournament|Battle Rush: Build Up Robot Tournament]]<br>[[Wikipedia:J. League Super Top Players|J. League Super Top Players]]
|[[MAME]]<ref group=N name=barcode>Input box by entering the barcode number on the card.</ref><br>[[Mesen]]<ref group=N name=barcode>Input box by entering the barcode number on the card.</ref><br/>[[puNES]]<ref group=N name=barcode>Input box by entering the barcode number on the card.</ref><br/>[[FCEUX]]<ref group=N name=barcode>Input box by entering the barcode number on the card.</ref>
|N/A
|-
|[[File:Famicom Controller Microphone.png|200px]]
!Microphone
|A Japan-exclusive, built-in feature in the original Player 2 Famicom controller that allows players to use an external sound source (e.g., the player's voice) as input.
|N/A
|-
|[[File:Family BASIC.png|200px]]
!Family BASIC
|A Japan-exclusive peripheral with an enhanced [[Wikipedia:BASIC|BASIC]] programming language dialect. It allows users to create programs in the Famicom. It has a specially designed cartridge, keyboard, and Data Recorder.
|N/A
|-
|[[File:Famicom Data Recorder.jpg|200px]]
!Famicom Data Recorder
|A Japan-exclusive compact cassette tape data interface as an addition to the Family BASIC to save data from BASIC programs created by users.
|N/A
|-
|[[File:Famicom 3D System.jpg|200px]]
!Famicom 3D System
|A Japan-exclusive active shutter glasses headset that allowed compatible games to display a stereoscopic image for a 3D experience.
|[https://github.com/libretro/glsl-shaders/tree/master/stereoscopic-3d GLSL shaders] are needed for RetroArch to simulate the 3D experience with a [[Virtual reality|VR]] headset, 3D TV, 3D projector or Android phone with cardboard.
|-
|[[File:Miracle Piano Teaching System.png|200px]]
!Miracle Piano Teaching System
|An accessory that used an electronic MIDI keyboard as input.
|N/A
|-
|[[File:ASCII TurboFile I.png|200px]][[File:ASCII TurboFile II.png|200px]]
!ASCII TurboFile<br/>ASCII TurboFile II
|A Japan-exclusive external storage device for saving game positions on Famicom.
|N/A
|-
|[[File:Oeka Kids Tablet.jpg|200px]]
!Oeka Kids Tablet
|A Japan-exclusive drawing tablet for the Famicom ''Oeka Kids'' series.<ref>[https://web.archive.org/web/20160927112920/http://www.ne.jp/asahi/oroti/famicom/ish15.html ファミコンの周辺機器が大集合! ザ☆周辺機器ズ 15] (Archived)</ref>
|N/A
|-
|[[File:RacerMate CompuTrainer Pro.png|200px]]
!RacerMate CompuTrainer Pro
|A rare series of peripherals for the game ''RacerMate Challenge II''. It has an interface box, a bike trainer, and a handlebar display.<ref>[http://www.nesmuseum.com/racermate.html NES Museum: RacerMate Challenge II]</ref>
|N/A
|-
|[[File:NES Game Genie.png|200px]]
!Game Genie
|A pass-through device that is attached between a cartridge and the console that allows the player to manipulate various aspects of games and access unused assets and functions by temporarily modify game data.
|Most emulators have a GUI to manage cheats and don't rely on real hardware cheating devices.
|-
|[[File:Family Computer Network System.png|200px]]![[Early_Online_Services|Family Computer Network System<br/>Famicom Modem]]
|A Japan-exclusive network peripheral that allowed users to connect to a Nintendo server that provided extra content such as jokes, news, game tips, weather forecasts, horse betting and downloadable content via dial-up modem.
|N/A
|N/A
|-
|[[File:SNES Mouse.png|200px]]
!SNES Mouse
|There have been quite a few NES romhacks coming out that add support for the SNES mouse to NES games.
Since most VS. System games have palettes that differ from the standard RGB NES palette, ROMs made with VS. System, 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.
These emulators only supports UniSystem cabinet: [https://github.com/0ldsk00l/nestopia/blob/master/source/core/vssystem/NstVsSystem.cpp#L292 nestopia UE], [https://github.com/libretro/libretro-fceumm/blob/master/src/drivers/libretro/libretro.c#L1490 FCEumm] and [https://github.com/TASEmulators/fceux/blob/master/src/vsuni.cpp#L187 FCEUX], [https://tasvideos.org/Forum/Topics/17971?CurrentPage=9&Highlight=443471#443471 BizHawk], [[FinalBurn_Neo#List_of_emulated_systems|FinalBurn Neo]]
===Famicom Box===
* '''.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. [https://github.com/punesemu/puNES/releases/tag/v0.111 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 imagewith those, stripping the checksum data with a custom script is needed.
===Overscan===
*[http://forums.nesdev.com/viewtopic.php?t=2818 Nesdev Forum] - Discussion of NES Wii Virtual Console accuracy.
*[http://rec0ded88.com/play-nes-games Rec0deD:88] - Play a NES emulator.
*[https://www.copetti.org/writings/consoles/nes/ Copetti] - NES Architecture (A practical analysis by Rodrigo Copetti).
==References==

Navigation menu