Difference between pages "Nintendo Entertainment System emulators" and "RetroArch"

From Emulation General Wiki
(Difference between pages)
Jump to navigation Jump to search
m (Changed protection level for "Nintendo Entertainment System emulators" ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only administrators] (indefinite)))
 
(Mobile/Console Versions)
(Tags: Mobile edit, Mobile web edit)
 
Line 1: Line 1:
{{Infobox console
+
{{Infobox software
|title = Nintendo Entertainment System
+
|logo          = Retroarch.png
|logo = nes-t.png
+
|logowidth = 250
|developer = [[:Nintendo]]
+
|developer     = Squarepusher, themaister, others
|type = [[:Category:Home consoles|Home video game console]]
+
|version      = {{RetroArchVer}}
|generation = [[:Category:Third-generation video game consoles|Third generation]]
+
|active        = Yes
|release = 1983
+
|platform      = [[Emulators on PC|Windows]]<br/>[[Emulators on macOS|macOS]]<br/>Linux<br/>[[Emulators on Android|Android]]<br/>[[Emulators on iOS|iOS]] (jailbroken)<br/>Raspberry Pi<br/>[[Emulators on Pandora|Pandora]]<br/>[[Emulators on DragonBox Pyra|Pyra]]<br/>[[Emulators on PS2|PlayStation 2]]<br/>[[Emulators on PS3|PlayStation 3]]<br/>[[Emulators on PS4|PlayStation 4]] (Unofficial)<br/>[[Emulators on PSP|PlayStation Portable]]<br/>[[Emulators on Vita|PlayStation Vita/TV]]<br/>[[Emulators on Xbox|Xbox]]<br/>[[Emulators on Xbox 360|Xbox 360]]<br/>[[Emulators on Xbox One|Xbox One]]<br/>[[Emulators on GameCube|GameCube]]<br/>[[Emulators on Wii|Wii]]<br/>[[Emulators on Wii U|Wii U]]<br/>[[Emulators on Switch|Nintendo Switch]]<br/>[[Emulators on 3DS|Nintendo 3DS]]<br/>GCW Zero (Unofficial)<br/>OpenDingux<br/>BlackBerry<br/>Steam Link
|discontinued = 2003
+
|type          = [[libretro]] frontend
|predecessor = [[First_and_Second_Generations_of_video_game_consoles|Color TV-Game]]
+
|prog-lang = C, C++
|successor = [[Super Nintendo emulators|SNES]]
+
|website      = [http://www.libretro.com/ libretro.com]
|emulated = {{✓}}
+
|support = [https://www.patreon.com/libretro Patreon], [https://www.retroarch.com/index.php?page=donate Donate]
 +
|source        = [https://github.com/libretro GitHub]
 +
|license      = GNU GPLv3
 
}}
 
}}
The '''[https://en.wikipedia.org/wiki/Nintendo_Entertainment_System Nintendo Entertainment System]''' (NES) is an 8-bit, third-generation console released on July 15, 1983 in Japan, where it was known as the '''Family Computer''' or '''Famicom''', and on October 18, 1985, it released in the US. It retailed for {{Inflation|USD|179.99|1985}}. It had a Ricoh 2A03 CPU at 1.79 MHz with 2KB 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 low maximum ROM size), how the graphics are loaded onscreen, just the native sound processing is available, no saving... To solve this problem, Nintendo came up with two solutions:
+
'''[[wikipedia:RetroArch|RetroArch]]''' (formerly '''SSNES''') is an open-source, multi-platform [[libretro]] [[Frontends|frontend]] written in C or C++. It is designed to be fast, lightweight, and portable.
  
* The '''Family Computer Disk System''' (FDS), a Japan-only add-on which played games from a semi-custom variant of Mitsumi's Quick Disk format. It offered slightly higher data storage and slightly enhanced sound processing. It also had a microphone never found anywhere else. There were plans to release it in the US, however since the NES itself had its launch delayed to late 1985, and the mapper solution obsoleted it, the add-on was never exported and some of its exclusives were ported as regular cartridge releases.
+
==Downloads==
* '''Memory Management Controllers''' (MMC), also known colloquially as '''mappers'''. They solved every single problem above 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.
+
*[https://buildbot.libretro.com/stable/ RetroArch Stable Builds]
 +
*[https://buildbot.libretro.com/nightly/ RetroArch Nightly Builds]
 +
*[https://buildbot.libretro.com/nightly/windows/ Windows RetroArch-Nightly-Installer]
 +
*Ubuntu PPAs: [https://launchpad.net/~libretro/+archive/ubuntu/stable Stable], [https://launchpad.net/~libretro/+archive/ubuntu/testing Nightly/Testing]
 +
*Arch Linux User Repositories: [https://aur.archlinux.org/packages/retroarch/ Stable], [https://aur.archlinux.org/packages/retroarch-git/ Testing], [https://aur.archlinux.org/packages.php?O=0&K=libretro&do_Search=Go All], [https://aur.archlinux.org/packages/libretro-super-git/ libretro-super]
  
Emulation for the NES is robust, with many high-quality emulators for various systems.
+
===Mobile/Console Versions===
 +
*[https://play.google.com/store/apps/details?id=com.retroarch RetroArch for Android on Play Store], 32-bit & 64-bit ARM (also [https://play.google.com/store/apps/details?id=com.retroarch.aarch64 Plus version])
 +
*[https://buildbot.libretro.com/stable/{{RetroArchVer}}/apple/ios/RetroArch.ipa RetroArch for iOS] ({{RetroArchVer}})
 +
*[https://buildbot.libretro.com/stable/{{RetroArchVer}}/playstation/psp/RetroArch.7z RetroArch for Playstation Portable] ({{RetroArchVer}})
 +
*[https://buildbot.libretro.com/stable/{{RetroArchVer}}/playstation/vita/RetroArch.vpk RetroArch for PlayStation Vita/TV] ({{RetroArchVer}})
 +
*[https://buildbot.libretro.com/stable/{{RetroArchVer}}/playstation/ps2/RetroArch_elf.7z RetroArch for Playstation 2] ({{RetroArchVer}})
 +
*[https://xbins.org/libretro/stable/1.9.0/playstation/ps3 RetroArch for PlayStation 3 (DEX)] (1.9.0)
 +
*[https://bintray.com/osirizx/libretro/ps4/latest#files RetroArch for PlayStation 4] (1.8.8) {Unofficial port}
 +
*[https://xbins.org/libretro/stable/1.7.7/xbox/xbox/RetroArch.zip RetroArch for Xbox] (1.7.7)
 +
*[https://digiex.net/threads/retroarch-360-0-9-8-3-download-sega-sens-gameboy-finalburn-emulator-for-xbox-360.12395/ RetroArch for Xbox 360] (0.9.8.3)
 +
*[https://buildbot.libretro.com/stable/{{RetroArchVer}}/windows-msvc2017-uwp/x64/RetroArch-msvc2017-UWP_x64.appxbundle RetroArch for Xbox One / Universal Windows Platform] ({{RetroArchVer}})
 +
*[https://buildbot.libretro.com/stable/{{RetroArchVer}}/nintendo/ngc/RetroArch.7z RetroArch for GameCube] ({{RetroArchVer}})
 +
*[https://buildbot.libretro.com/stable/{{RetroArchVer}}/nintendo/wii/RetroArch.7z RetroArch for Wii] ({{RetroArchVer}})
 +
*[https://buildbot.libretro.com/stable/{{RetroArchVer}}/nintendo/wiiu/RetroArch.7z RetroArch for Wii U] ({{RetroArchVer}})
 +
*[https://buildbot.libretro.com/stable/{{RetroArchVer}}/nintendo/3ds/RetroArch_cia.7z RetroArch for Nintendo 3DS (.cia)] ({{RetroArchVer}})
 +
*[https://buildbot.libretro.com/stable/{{RetroArchVer}}/nintendo/switch/libnx/RetroArch.7z RetroArch for Nintendo Switch] ({{RetroArchVer}})
 +
*[https://pyra-handheld.com/boards/threads/retroarch-1-7-2.81254/ RetroArch for Pandora on OpenPandora's repo] (1.7.3) and [http://repo.openpandora.org/?page=detail&app=retroarch.lifning.001 old 2013 variant] (0.9.9.1)
 +
*[https://pyra-handheld.com/repo/apps/53 RetroArch for Pyra] (1.9.6)
 +
*[https://boards.dingoonity.org/gcw-development/(test-release)-retroarch-for-gcw0/ RetroArch for GCW Zero (.opk)] (0.1b) {Unofficial test build}
 +
*[https://buildbot.libretro.com/stable/1.7.7/steam/steamlink/RetroArch.zip RetroArch for Steam Link] (1.7.7)
  
==Emulators==
+
==Supported Systems==
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].
+
{{Main|libretro#Cores}}
{| class="wikitable" style="text-align:center;"
 
! scope="col"|Name
 
! scope="col"|Platform(s)
 
! scope="col"|Latest Version
 
! scope="col"|[[Wikipedia:Family Computer Disk System|FDS]]
 
! scope="col"|[[libretro|Libretro Core]]
 
! scope="col"|[[Emulation Accuracy|Accuracy]]
 
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
 
! scope="col"|Active
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
|-
 
!colspan="9"|PC / x86
 
|-
 
|[[Mesen]]
 
|align=left|{{Icon|Windows|Linux}}
 
|[http://www.mesen.ca {{MesenVer}}]
 
|{{✓}}
 
|{{✓}}
 
|Cycle
 
|{{✓}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|[[Nestopia|Nestopia UE]]
 
|align=left|{{Icon|Windows|Linux|FreeBSD}}
 
|[http://0ldsk00l.ca/nestopia/ {{NestopiaVer}}]
 
|{{✓}}
 
|{{✓}}
 
|Cycle
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|[[puNES]]
 
|align=left|{{Icon|Windows|Linux|FreeBSD}}
 
|[https://github.com/punesemu/puNES/releases {{PuNESVer}}]
 
|{{✓}}
 
|{{✗}}
 
|Cycle
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|NintendulatorNRS<ref group=N>NintendulatorNRS is a fork of Nintendulator which has support for the Famicom Disk System, rare mappers, and many unlicensed and bootleg carts and systems.</ref>
 
|align=left|{{Icon|Windows}}
 
|[http://unlicensed.games/libg/static.php?page=NintendulatorNRS 202105282224]
 
|{{✓}}
 
|{{✗}}
 
|Cycle
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|[[3dSen]]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[http://www.geodstudio.net/ {{3dSenVRVer}}]
 
|{{✗}}
 
|{{✗}}
 
|?
 
|{{✗}}
 
|{{✓}}
 
|{{~}}
 
|-
 
|[[FinalBurn Neo]]
 
|align=left|{{Icon|Windows}}
 
|[https://github.com/finalburnneo/FBNeo-WIP-Storage-Facility/releases/tag/appveyor-build WIP builds]
 
|{{✓}}
 
|{{✓}}
 
|?
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|[https://fms.komkon.org/iNES iNES]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD|Solaris}}
 
|[https://fms.komkon.org/iNES {{INESVer}}]
 
|{{✓}}
 
|{{✗}}
 
|High
 
|?
 
|{{✓}}
 
|{{✓}}
 
|-
 
|[[RockNES]]
 
|align=left|{{Icon|Windows}}
 
|[http://rocknes.web.fc2.com {{RockNESVer}}]
 
|{{✓}}
 
|{{✗}}
 
|High
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|Gearnes
 
|align=left|{{Icon|Windows|macOS|Lin|LiA}}
 
|[https://github.com/drhelius/Gearnes git]
 
|{{✓}}
 
|{{✓}}
 
|High
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|[[Nintendulator]]
 
|align=left|{{Icon|Windows}}
 
|[http://www.qmtpro.com/~nes/nintendulator/#downloads 0.985 Beta] [https://github.com/quietust/nintendulator git]
 
|{{✗}}
 
|{{✗}}
 
|Cycle
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|Nintaco
 
|align=left|{{Icon|Windows}}
 
|[https://nintaco.com/ 2020-05-01]
 
|{{✓}}
 
|{{✗}}
 
|Cycle
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|My Nes
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/alaahadid/My-Nes/releases git]
 
|{{✗}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|[[BizHawk]]
 
|align=left|{{Icon|Windows|Linux}}
 
|[http://tasvideos.org/BizHawk/ReleaseHistory.html {{BizHawkVer}}]
 
|{{✓}}
 
|{{✗}}
 
|Cycle
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|[[higan]]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/higan-emu/higan/releases {{higanVer}}]
 
|{{✓}}
 
|{{✓}} <small>(as bsnes v083)</small>
 
|Cycle
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|[https://prilik.com/ANESE ANESE]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/daniel5151/ANESE/releases git]
 
|{{✗}}
 
|{{✗}}
 
|Cycle
 
|{{✓}}
 
|{{~}}
 
|{{✓}}
 
|-
 
|[http://www.nesemu2.com nesemu2]
 
|align=left|{{Icon|Windows|Linux|MacOS}}
 
|[https://github.com/holodnak/nesemu2 git]
 
|{{✗}}
 
|{{✗}}
 
|Cycle
 
|?
 
|{{✗}}
 
|{{~}}
 
|-
 
|[[nemulator]]
 
|align=left|{{Icon|Windows}}
 
|[http://nemulator.com/downloads.html {{NemulatorVer}}]
 
|{{✗}}
 
|{{✗}}
 
|High
 
|?
 
|{{✓}}
 
|{{~}}
 
|-
 
|Nesemu
 
|align=left|{{Icon|macOS}}
 
|[https://github.com/tsalvo/nes-emu-ios git]
 
|{{✓}}
 
|{{✗}}
 
|High
 
|{{✓}}
 
|{{✓}}
 
|{{~}}
 
|-
 
|cxNES
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/perilsensitive/cxnes/releases git]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|FakeNES GT
 
|align=left|{{Icon|Windows|Linux|macOS|DOS}}
 
|[[sourceforge:projects/fakenes/|0.59 b3]]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|[[FCEUX]]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD|Sol}}
 
|[http://www.fceux.com/web/download.html {{FCEUXVer}}]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|[http://cah4e3.shedevr.org.ru/fceultra.php FCEUmm]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[https://sourceforge.net/projects/fceumm/ 98.13mm] (Windows)<br />[https://github.com/libretro/libretro-fceumm git] (libretro)
 
|{{✗}}
 
|{{✓}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|[[MAME]]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[http://www.mamedev.org/release.html {{MAMEVer}}]
 
|{{✓}}
 
|{{✓}}
 
|Mid
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|[[HDNes]]
 
|align=left|{{Icon|Windows}}
 
|[http://forums.nesdev.com/viewtopic.php?f=3&t=9935#p109627 git]
 
|{{✗}}
 
|{{✗}}
 
|Low
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|[[Jnes]]
 
|align=left|{{Icon|Windows}}
 
|[http://www.jabosoft.com/categories/3 1.2.1]
 
|{{✓}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|Pocket Nester+
 
|align=left|{{Icon|WinMobile}}
 
|[https://www.zophar.net/wmsphone/nes/pocketnester+.html 0.9]
 
|{{✓}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|[[NESticle]]
 
|align=left|{{Icon|DOS|Windows9x}}
 
|[http://web.archive.org/web/20070227191851/http://www.zophar.net/NESticle/nestcxxx.zip x.xx] (DOS) <br /> [https://web.archive.org/web/20070116124329/http://www.zophar.net:80/NESticle/nestc042.zip 0.42] (Win9x)
 
|{{✗}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|[[QuickNES]]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[https://web.archive.org/web/20180904003223/https://kode54.net/fb2k/QuickNES.zip 0.7.0b1] (Windows)<br />[https://github.com/libretro/QuickNES_Core git] (libretro)
 
|?
 
|{{✓}}
 
|Low
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|[[VirtuaNES]]
 
|align=left|{{Icon|Windows}}
 
|[http://virtuanes.s1.xrea.com/ 0.97]
 
|{{~}}
 
|{{✗}}
 
|Low
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|[http://freezesms.emuunlim.com/ FreezeSMS]
 
|align=left|{{Icon|Windows}}
 
|[http://freezesms.emuunlim.com/download.html 4.6]
 
|{{✗}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|[https://web.archive.org/web/20131022152846/http://www.dridus.com:80/~nyef/darcnes/ DarcNES]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[https://web.archive.org/web/20131031224033/http://www.dridus.com/~nyef/dn_bin/ 9b0401/9b0313]
 
|{{✗}}
 
|{{✗}}
 
|Low
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|Nescala
 
|align=left|{{Icon|Linux|macOS}}
 
|[https://github.com/hywelandrews/nescala git]
 
|{{✗}}
 
|{{✗}}
 
|?
 
|{{✓}}
 
|{{~}}
 
|{{✗}}
 
|-
 
|[https://nin.nax.io Nin]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/Nax/nin/releases git]
 
|{{✗}}
 
|{{✗}}
 
|?
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|CoolNESs
 
|align=left|{{Icon|AmigaOS|MorphOS}}
 
|[https://www.zophar.net/download_file/28 0.78]
 
|?
 
|{{✗}}
 
|?
 
|?
 
|{{✗}}
 
|{{✗}}
 
|-
 
|InfoNES
 
|align=left|{{Icon|Win|Linux}}
 
|[https://www.zophar.net/nes/infones.html 0.93]
 
|?
 
|{{✗}}
 
|?
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
!colspan="9"|Mobile / ARM
 
|-
 
| [http://www.explusalpha.com/home/nes-emu NES.emu]<br/><small>(based on fceux 2020.05.03 git)</small>
 
|align=left|{{Icon|Android|Pyra}}
 
|[https://play.google.com/store/apps/details?id=com.explusalpha.NesEmu&hl=en_IN&gl=US 1.5.54][https://github.com/Rakashazi/emu-ex-plus-alpha git]<small> (Android)</small><br/>[https://pyra-handheld.com/repo/apps/80 1.5.46.01]<small> (Pyra)</small>
 
|{{✓}}
 
|{{✗}}
 
|High
 
|{{✓}}<small> (Android only)</small>
 
|{{✓}}
 
|{{✓}}
 
|-
 
| FreeiNES
 
|align=left|{{Icon|Android|Maemo|Symbian}}
 
| [https://play.google.com/store/apps/details?id=com.fms.ines.free&hl=en_US&gl=US 6.1]<small> (Android)</small><br/>[https://fms.komkon.org/iNES/ines_3.6.5-1_armel.deb 3.6.5]<small> (Maemo)</small><br/>[https://www.mobiles24.co/downloads/s/229852-184-ines 3.6]<small> (Symbian)</small>
 
|{{✓}}
 
|{{✗}}
 
|High
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
| Retro8
 
|align=left|{{Icon|Android}}
 
| [https://play.google.com/store/apps/details?id=com.neutronemulation.retro8&hl=en_US&gl=US 1.1.15]
 
|{{✓}}
 
|{{✗}}
 
|High
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|VGBANext
 
|align=left|{{Icon|Android}}
 
|[https://play.google.com/store/apps/details?id=com.fms.emu&hl=en&gl=US {{VGBANextVer}}]
 
|{{✓}}
 
|{{✗}}
 
|High
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|Gearnes
 
|align=left|{{Icon|iOS}}
 
|[https://github.com/drhelius/Gearnes git]
 
|{{✓}}
 
|{{✓}}
 
|High
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|Nesemu
 
|align=left|{{Icon|iOS|AppleTV}}
 
|[https://github.com/tsalvo/nes-emu-ios git]
 
|{{✓}}
 
|{{✗}}
 
|High
 
|{{✓}}
 
|{{✓}}
 
|{{~}}
 
|-
 
|Nostalgia.NES
 
|align=left|{{Icon|Android}}
 
|[https://play.google.com/store/apps/details?id=com.nostalgiaemulators.neslite 2.0.9]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|John NESS
 
|align=left|{{Icon|Android}}
 
|[https://play.google.com/store/apps/details?id=com.johnemulators.johnness 1.09]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|Multiness
 
|align=left|{{Icon|Android}}
 
|[https://play.google.com/store/apps/details?id=com.hqgame.networknes 1.0.3.1.7]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|[[Jnes]]
 
|align=left|{{Icon|Android}}
 
|[https://play.google.com/store/apps/details?id=com.jabosoft.silverarrow 1.2.6.26]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|NESDroid
 
|align=left|{{Icon|Android}}
 
|[https://play.google.com/store/apps/details?id=ca.halsafar.nesdroid&hl=en_IN&gl=US 1.14.5]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|Nestopia<ref group=N name=libretro>Only available as a libretro core (e.g. [[RetroArch]]).</ref>
 
|align=left|{{Icon|Android|iOS}}
 
|1.44
 
|{{✓}}
 
|{{✓}}
 
|High
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|GPFCE
 
|align=left|{{Icon|Linux|Pandora|GP2X|Wiz}}
 
|[http://repo.openpandora.org/?page=detail&app=package.gpfce.notaz 0.81.0.r2]<small> (Pandora)</small>[https://dl.openhandhelds.org/cgi-bin/gp2x.cgi?0,0,0,0,71,2136 0.4 r313]<small> (GP2X)</small><br/>[https://dl.openhandhelds.org/cgi-bin/wiz.cgi?0,0,0,0,71,51 0.4+]<small> (Wiz)</small>
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|nesemu
 
|align=left|{{Icon|Pandora|Wiz|Dingoo}}
 
|[https://code.google.com/archive/p/nesemu/downloads 0.2.3 Beta Preview]<br/><small> (Pandora)</small>[https://dl.openhandhelds.org/cgi-bin/wiz.cgi?0,0,0,0,71,235 V1]<small> (Wiz)</small><br/>[https://dl.openhandhelds.org/cgi-bin/dingoo.cgi?0,0,0,0,71,181 0.2]<small> (Dingoo)</small>
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|[[Nestopia]]
 
|align=left|{{Icon|Pandora}}
 
|[https://repo.openpandora.org/?page=detail&app=nestopia-app V2]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|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][http://emul.lark.ru/dendy/emu/vnes.html alt]
 
|?
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
| Jamicom
 
|align=left|{{Icon|Java}}
 
| [http://genergabasa.php0h.com/upload.php?i=1 2007]
 
|?
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
| MFC
 
|align=left|{{Icon|Java}}
 
| ?
 
|?
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
| NESx65
 
|align=left|{{Icon|Java}}
 
| [http://cbn.narod.ru/English.htm 2013]
 
|?
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
| NESx75
 
|align=left|{{Icon|Java}}
 
| [http://cbn.narod.ru/English.htm 2013][http://emul.lark.ru/dendy/str/75.html alt]
 
|?
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
| NesCube
 
|align=left|{{Icon|Java}}
 
| [https://phoneky.com/games/?s=download&id=j4j67064 3.2]
 
|?
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
| NESGo
 
|align=left|{{Icon|Java}}
 
| [https://sourceforge.net/p/nesgo/code/HEAD/tree Source]
 
|?
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|InfoNES32
 
|align=left|{{Icon|GP32}}
 
|[https://dl.openhandhelds.org/cgi-bin/gp32.cgi?0,0,0,0,5,32 0.3]
 
|{{✓}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|fNES32
 
|align=left|{{Icon|GP32}}
 
|[https://www.zophar.net/consoles/gp32/nes/fnes32.html 06/28/02]
 
|{{✓}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|LittleJohnGP
 
|align=left|{{Icon|GP32}}
 
|[https://dl.openhandhelds.org/cgi-bin/gp32.cgi?0,0,0,0,5,15 0.4]
 
|{{✓}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|NesterGP
 
|align=left|{{Icon|GP32}}
 
|[https://dl.openhandhelds.org/cgi-bin/gp32.cgi?0,0,0,0,5,36 1.2]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|NesterGPd
 
|align=left|{{Icon|GP32}}
 
|[https://dl.openhandhelds.org/cgi-bin/gp32.cgi?0,0,0,0,5,11 1.5a]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|LittleJohn Zod
 
|align=left|{{Icon|Zodiac}}
 
|[https://dl.openhandhelds.org/cgi-bin/zodiac.cgi?0,0,0,0,71,530 1.2]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|FCE-Ultra GP2x
 
|align=left|{{Icon|GP2X}}
 
|[https://dl.openhandhelds.org/cgi-bin/gp2x.cgi?0,0,0,0,71,1141 0.3]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|FishyNES
 
|align=left|{{Icon|GP2X}}
 
|[https://dl.openhandhelds.org/cgi-bin/gp2x.cgi?0,0,0,0,71,1379 0.01d]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|InfoNES2x
 
|align=left|{{Icon|GP2X}}
 
|[https://dl.openhandhelds.org/cgi-bin/gp2x.cgi?0,0,0,0,71,1372 0.1]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|NES2x
 
|align=left|{{Icon|GP2X}}
 
|[https://dl.openhandhelds.org/cgi-bin/gp2x.cgi?0,0,0,0,71,909 R4]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|Phamicom
 
|align=left|{{Icon|GP2X}}
 
|[https://dl.openhandhelds.org/cgi-bin/gp2x.cgi?0,0,0,0,71,1129 0.3]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|Nintendo
 
|align=left|{{Icon|GP2X}}
 
|[https://dl.openhandhelds.org/cgi-bin/gp2x.cgi?0,0,0,0,71,2438 0.2]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|NES
 
|align=left|{{Icon|Dingoo}}
 
|[https://dl.openhandhelds.org/cgi-bin/dingoo.cgi?0,0,0,0,71,282 1]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|FCEU320
 
|align=left|{{Icon|Dingoo}}
 
|[https://dl.openhandhelds.org/cgi-bin/dingoo.cgi?0,0,0,0,71,291 0.3 Beta]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|FCEUX
 
|align=left|{{Icon|Dingoo|RetroFW}}
 
|[https://dl.openhandhelds.org/cgi-bin/dingoo.cgi?0,0,0,0,71,592 V1]<small> (Dingoo)</small><br/>[https://github.com/retrofw/fceux git]<small> (RetroFW)</small>
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}<small> (RetroFW only)</small>
 
|{{✗}}
 
|{{✓}}
 
|-
 
|Nofrendo
 
|align=left|{{Icon|Wiz}}
 
|[https://dl.openhandhelds.org/cgi-bin/dingoo.cgi?0,0,0,0,71,116 r1]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|GPFCE 4 Caanoo
 
|align=left|{{Icon|Caanoo}}
 
|[https://dl.openhandhelds.org/cgi-bin/caanoo.cgi?0,0,0,0,71,623 0.4+]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|NESGP2x for Caanoo
 
|align=left|{{Icon|Caanoo}}
 
|[https://dl.openhandhelds.org/cgi-bin/caanoo.cgi?0,0,0,0,71,515 1.0]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| NESizm
 
|align=left|{{Icon|Prizm}}
 
|[https://github.com/tswilliamson/nesizm git]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
| NES84
 
|align=left|{{Icon|TI84+CE}}
 
|[https://github.com/Skyluker4/NES84 git]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
| NESEmulator
 
|align=left|{{Icon|WatchOS}}
 
|[https://github.com/giginet/NESEmulator-watchOS git]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|NESpire
 
|align=left|{{Icon|Nspire}}
 
|[https://www.ticalc.org/archives/files/fileinfo/432/43217.html 0.30]<br/>[https://github.com/tangrs/nespire-tangrs-mod git]<small> (tangrs-mod)</small>
 
|{{~}}
 
|{{✗}}
 
|Mid
 
|{{✓}}<small> (tangrs-mod)</small>
 
|{{✗}}
 
|{{✓}}
 
|-
 
|LameNES
 
|align=left|{{Icon|Nspire}}
 
|[https://github.com/gameblabla/lamenes-nspire git]
 
|{{~}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|[https://zardam.github.io/webnofrendo numworks-nofrendo]
 
|align=left|{{Icon|Numworks}}
 
|[https://github.com/zardam/numworks-nofrendo git]
 
|{{~}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✓}}
 
|{{~}}
 
|-
 
|GizNester
 
|align=left|{{Icon|Gizmondo}}
 
|[https://app.box.com/s/uciqhge60t7lc4kekudh5yyomvqnvkpn 0.3.1]
 
|{{~}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|FCEUXpb
 
|align=left|{{Icon|BB}}
 
|[http://www.mediafire.com/file/7uttd7x6zkzcq1f/FCEUXpb-1_0_0_18.bar/file 1.0.0.18]
 
|{{~}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|Berry FC
 
|align=left|{{Icon|BB}}
 
|?
 
|{{~}}
 
|{{✗}}
 
|?
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|FCEUX
 
|align=left|{{Icon|LeapsterGS}}
 
|?
 
|{{✗}}
 
|{{✗}}
 
|?
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|8bkc-nofrendo
 
|align=left|{{Icon|PocketSprite}}
 
|[https://github.com/PocketSprite/8bkc-nofrendo git]
 
|{{✗}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
!colspan="9"|Consoles
 
|-
 
|[[L-CLASSICS|Switch Online]]
 
|align=left|{{Icon|Switch}}
 
|2.3.0
 
|{{✓}}
 
|{{✗}}
 
|High
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
| pNES
 
|align=left|{{Icon|Switch|Vita}}
 
|[https://github.com/Cpasjuste/pemu/releases git]
 
|{{✓}}
 
|{{✗}}
 
|High
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
| NoiES
 
|align=left|{{Icon|Switch}}
 
|[https://github.com/Hydr8gon/NoiES/releases git]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
| LaiNES
 
|align=left|{{Icon|Switch}}
 
|[https://github.com/Kevoot/LaiNESwitch/releases git]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| NESwitch
 
|align=left|{{Icon|Switch}}
 
|[https://github.com/FreakDev/NESwitch git]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{~}}
 
|-
 
| NES4Vita
 
|align=left|{{Icon|Vita}}
 
|[https://wololo.net/2015/08/03/nes4vita-1-0-released-smoke-updates-his-nes-emu-on-the-ps-vita 1.0]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| PS4NES
 
|align=left|{{Icon|PS4}}
 
|[https://www.psx-place.com/threads/update-v1-01-ps4-nes-full-speed-nes-emulator-5-05-fw-by-m0rph3us1987.21092 1.01]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| PNES
 
|align=left|{{Icon|PS4}}
 
|[https://www.psxhax.com/threads/ps4-nintendo-entertainment-system-nes-emulator-by-m0rph3us1987.6033 rel]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| FCEU PS3
 
|align=left|{{Icon|PS3}}
 
|[https://ps3.brewology.com/downloads/download.php?id=12480&mcid=4 1.4]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| [[Nestopia]]
 
|align=left|{{Icon|PS3}}
 
|[https://ps3.brewology.com/downloads/download.php?id=12225&mcid=4 r2]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| BD-J
 
|align=left|{{Icon|PS3}}
 
|[https://forums.afterdawn.com/threads/nes-emulator-for-ps3-via-bd-j-format-released.655885 0.0.3]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
| FakeNES
 
|align=left|{{Icon|PS3}}
 
|[https://www.zophar.net/consoles/ps3/nes/fakenes.html 0.5.9 Beta 3]
 
|{{✓}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
| FCEUltra for PS2
 
|align=left|{{Icon|PS2}}
 
|[https://www.emuparadise.me/Nintendo_Entertainment_System_Emulators/Playstation_2/FCEUltra/146 0.9.3]<br/>[https://mundowiihack.wordpress.com/tag/fce-ultra 0.90i Mod]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| FCEUmm-PS2
 
|align=left|{{Icon|PS2}}
 
|[https://github.com/ps2homebrew/Fceumm-PS2/releases git]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| InfoNES
 
|align=left|{{Icon|PS2}}
 
|[https://mundowiihack.wordpress.com/tag/infones 0.91 LbFn]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| pNESx
 
|align=left|{{Icon|PS2}}
 
|[https://mundowiihack.wordpress.com/tag/pnesx 0.34b]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|NesterJ<ref group=N>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.</ref>
 
|align=left|{{Icon|PSP}}
 
|[http://filetrip.net/psp-downloads/homebrew/download-nesterj-113-beta-2-f27533.html 1.13 beta 2]<br />[http://filetrip.net/psp-downloads/homebrew/download-nesterj-112aoex-r3-f29028.html AoEX]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| NES for PSP
 
|align=left|{{Icon|PSP}}
 
| [https://archive.org/details/nes-05.7z 0.5]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| InfoNES
 
|align=left|{{Icon|PSP}}
 
| [https://archive.org/details/info-nes-r-03.7z 0.95J]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| Famicontest
 
|align=left|{{Icon|PSP}}
 
|[https://archive.org/details/famicontest031.7z 0.31]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| FCEUltra-PSP (FCEUPSP)
 
|align=left|{{Icon|PSP}}
 
| [https://archive.org/details/fceultra-j.-7z 0.3j][https://archive.org/details/fceu-psp.7z 0.3][https://github.com/phoe-nix/fceupsp git]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| PSPFceUltra
 
|align=left|{{Icon|PSP}}
 
|[https://archive.org/details/pspfceultra_rls_2.7z r2]
 
|{{✓}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
| Little John PSP
 
|align=left|{{Icon|PSP}}
 
| [https://archive.org/details/lj-nes-psp.7z POC]
 
|{{✓}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
| {{✗}}
 
|-
 
|LameNES
 
|align=left|{{Icon|3DO}}
 
|[https://github.com/gameblabla/lamenes-3do git]
 
|{{~}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|[[Virtual Console]]
 
|align=left|{{Icon|Wii|3DS|WiiU}}
 
|N/A
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|Nestopia<ref group=N name=libretro/>
 
|align=left|{{Icon|PS3|360|Wii}}
 
|1.44
 
|{{✓}}
 
|{{✓}}
 
|Mid
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|[[FCEUX|FCE Ultra GX]]
 
|align=left|{{Icon|GCN|Wii}}
 
|[https://github.com/dborth/fceugx/releases {{FCEUXGXVer}}]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|[https://hcs64.com/neon64.html Neon64]
 
|align=left|{{Icon|N64}}
 
|[https://github.com/hcs64/neon64v2 git]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|VNES
 
|align=left|{{Icon|N64}}
 
|[https://www.zophar.net/consoles/n64/nes/vnes.html 0.12]
 
|{{✓}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|NestopiaX
 
|align=left|{{Icon|Xbox}}
 
|[https://digiex.net/threads/nestopiax-v1-3-download-nes-emulator-for-xbox.13696 1.3]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|FCEUltraX
 
|align=left|{{Icon|Xbox}}
 
|[https://digiex.net/threads/fceultrax-v17-download-nes-emulator-for-xbox.13693 V17]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|FCE360
 
|align=left|{{Icon|Xbox360}}
 
|[https://digiex.net/threads/fce360-0-6-nes-emulator-for-xbox-360.8245 0.6]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|imbNES
 
|align=left|{{Icon|PS1}}
 
|[http://web.archive.org/web/20090221132233/http://imbnes.gamebase.ca:80/downloads.html 1.3.2]
 
|{{✗}}
 
|{{✗}}
 
|Low
 
|{{✓}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|FCEmu
 
|align=left|{{Icon|PS1}}
 
|[https://www.zophar.net/consoles/psx/nes/fcemu.html 0.10]
 
|{{✗}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|PNESx
 
|align=left|{{Icon|PS1}}
 
|[https://www.zophar.net/consoles/psx/nes/pnesx.html 06/12/00]
 
|{{✗}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|NESBox
 
|align=left|{{Icon|XB1}}
 
|[https://nesbox.com v4]
 
|{{✗}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✓}}
 
|{{~}}
 
|-
 
|VirtuaNES for 3DS
 
|align=left|{{Icon|3DS}}
 
|[https://github.com/TBirdSoars/VirtuaNES git]
 
|{{✓}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
|3DNES
 
|align=left|{{Icon|3DS}}
 
|[https://github.com/st4rk/3DNES git]
 
|{{~}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|FCEUmm-3DS
 
|align=left|{{Icon|3DS}}
 
|[https://www.gamebrew.org/wiki/FCEUMM3DS 1.0]
 
|{{~}}
 
|{{✗}}
 
|Low
 
|{{✓}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|Nestopia 3DS
 
|align=left|{{Icon|3DS}}
 
|?
 
|{{✗}}
 
|{{✗}}
 
|?
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|[[Project Nested]]
 
|align=left|{{Icon|SNES}}
 
|[https://github.com/Myself086/Project-Nested/releases {{ProjectNestedVer}}]
 
|{{?}}
 
|{{✗}}
 
|Low
 
|{{✓}}
 
|{{✓}}
 
|{{~}}
 
|-
 
|FrNES
 
|align=left|{{Icon|DC}}
 
|[https://github.com/maslevin/FrNES git][https://dcemulation.org/index.php?title=FrNES 0.60]
 
|{{?}}
 
|{{✗}}
 
|Low
 
|{{✓}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|NesterDC
 
|align=left|{{Icon|DC}}
 
|[https://dcemulation.org/index.php?title=NesterDC 1.7]
 
|{{~}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|NesterDC SE
 
|align=left|{{Icon|DC}}
 
|[https://dcemulation.org/index.php?title=NesterDC_SE 1.1 (Unofficial)]
 
|{{~}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{✓}}
 
|-
 
| TuxNES-DC
 
|align=left|{{Icon|DC}}
 
|[https://dcemulation.org/index.php?title=TuxNES-DC 0.2]
 
|{{~}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|Gleam!
 
|align=left|{{Icon|DC}}
 
|[https://dcemulation.org/index.php?title=Gleam! 103000]
 
|{{~}}
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|DarcDC
 
|align=left|{{Icon|DC}}
 
|[https://dcemulation.org/index.php?title=DarcDC Beta 1]
 
|{{~}}
 
|{{✗}}
 
|Mid
 
|{{✗}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|FCE Ultra DC
 
|align=left|{{Icon|DC}}
 
|[https://dcemulation.org/index.php?title=FCE_Ultra_DC 0.1]
 
|{{~}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|CrabEmu
 
|align=left|{{Icon|DC}}
 
|[https://dcemulation.org/index.php?title=CrabEmu 0.2.0]
 
|{{~}}
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|[[NeMul]]
 
|align=left|{{Icon|MD}}
 
|[http://pscd.ru/games/smd/nsmd/1247-nemul.html 1.0]
 
|?
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|PocketNES
 
|align=left|{{Icon|GBA}}
 
|[https://www.dwedit.org/gba/pocketnes_2013_07_01.zip 7-1-2013]
 
|?
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
| InfoNES
 
|align=left|{{Icon|GBA}}
 
| [https://www.zophar.net/consoles/gameboy/nes/infones.html V0]
 
|?
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
| Famicom Advance
 
|align=left|{{Icon|GBA}}
 
| [https://www.zophar.net/consoles/gameboy/nes/famicom-advance.html 0.1]
 
|?
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
| HCVA
 
|align=left|{{Icon|GBA}}
 
| [https://www.zophar.net/consoles/gameboy/nes/hcva.html 1.40]
 
|?
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|nesDS
 
|align=left|{{Icon|NDS}}
 
|[https://sourceforge.net/projects/nesds/files/nesds1.3a.zip/download 1.3a]
 
|?
 
|{{✗}}
 
|Low
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
!colspan="9"|Other
 
|-
 
|NESDUE
 
|align=left|{{Icon|Arduino}}
 
|[https://github.com/nathalis/NESDUE-Arduino_DUE_Nintendo_emulator git]
 
|?
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{~}}
 
|-
 
|nofrendo-arcada
 
|align=left|{{Icon|Arduino}}
 
|[https://github.com/adafruit/nofrendo_arcada git]
 
|?
 
|{{✗}}
 
|Mid
 
|{{✓}}
 
|{{✗}}
 
|{{~}}
 
|}
 
<references group=N />
 
  
 +
==Features==
 +
*Consistency across multiple platforms, using the same UI structure and a fully featured command line interface.
 +
*Gamepad controlled menu system with multiple styles available, such as XMB or Material UI. (There's also a [https://www.youtube.com/watch?v=hfuioGjCItw QT-based 'WIMP' desktop-style interface] for PC platforms that was announced before and released in version [https://www.libretro.com/index.php/retroarch-1-7-3-released/ 1.7.3].)
 +
*Gamepad auto-configuration profiles, so that gamepads are mapped automatically when connected. XInput controller autoconfig is built into the application, with other controller types available as external profiles.
 +
*Per-core and per-game configuration overrides
 +
*Custom resolution and refresh rate for video output, with exclusive fullscreen mode and monitor index for multi-monitor setups.
 +
*Dynamic rate control for smooth audio and video, even when the game's output rate is different from your system. Especially obvious with systems like GBA that do not run 60Hz.
 +
*Basic fast forward, SRAM saving, savestate, etc. It supports serialization of the emulation state which is used to provide real-time rewind and netplay.
 +
*[[Shaders and Filters|Pixel shaders]], primarily using Cg and GLSL, with HLSL on Xbox 360. The shader format it uses is flexible and fairly easy to use, allowing for complex multi-pass effects with adjustable runtime parameters. Also supports traditional video filter plugins that are run in software.
 +
*Supports audio DSP filter plugins through .dsp configuration files.
 +
*Custom overlay support.
 +
*FFmpeg recording and playback support. It can record either the native resolution output of the core or the post-processed output of the frontend. Playback is handled through an internal FFmpeg libretro core.
 +
*Streaming support. By adding your twitch account to RetroArch and making some small [https://www.retroarch.com/index.php?page=recording setup], it is possible to stream on Twitch the content of the game played.
 +
*[[GGPO]]-like netplay (latency hiding rollback). It should be lag-free if everyone involved emulates at full speed, doesn't live on opposite sides of the world and has decent internet speeds. It uses peer-to-peer UDP and supports two players. Due to rollback, it requires a fair amount of CPU power to run, and only works with cores that support serialization.
 +
*Options for decreasing input latency related to vsync by eliminating buffering by the video driver, as well as using frame delay to delay polling of inputs until right before a vsync occurs on the display.
 +
*Run-ahead to reduce latency. This setting allows cycle-accuracy emulators to run ahead of mandatory 1 or 2 frames of input lag. It allows emulators to [https://www.libretro.com/index.php/retroarch-1-7-2%E2%80%8A-%E2%80%8Aachieving-better-latency-than-original-hardware-through-new-runahead-method/ achieve better latency than original hardware] (Official debut in version 1.7.2).
  
===Comparisons===
+
==Building RetroArch==
*[[Mesen]] is the most accurate NES emulator according to currently established NES test ROM suites.<ref name="mesentest">http://www.mesen.ca/TestResults.php</ref> 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; [[Texture_Packs|HD packs]], [[netplay]], auto-updating, [[Shaders and Filters|good built-in filters]], both .zip and [[GoodTools|goodmerged]] file loading, etc.
+
{{Main|Building RetroArch}}
*[[puNES]] is the second most accurate NES/FDS emulator according to a separate test battery run by the TASVideos community.<ref name="nestas">http://tasvideos.org/EmulatorResources/NESAccuracyTests.html</ref> It should be noted that puNES used to have one mapper that Mesen didn't: 116, which allows games like Kart Fighter and Somari to be supported. This has since been added to Mesen.
+
==Using RetroArch==
*[[Nestopia]] also has a high ranking in those same tests.<ref name="nestas"/> 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 in the Undead Edition.
+
{{Main|Using RetroArch}}
*[[Nintendulator]] and My Nes also have a fairly high ranking in those tests.<ref name="nestas"/>
+
==RetroArch for Dummies==
*[[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.
+
{{Main|Dummies Guide: RetroArch}}
*[[VirtuaNES]] also scores quite low in the tests, but in turn supports several obscure [[#Peripherals|peripherals]] that are not available on other emulators.
 
*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.
 
  
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.
+
==Netplay==
 +
Netplay is now usable from the menu in current builds, under Settings>Netplay Options. You can get it to work with the [https://github.com/libretro/RetroArch/wiki/Using-command-line command line] or the long-deprecated [http://www.mediafire.com/download/yrydc78bl6y82z4/retroarch-phoenix.7z RetroArch-Phoenix Launcher] as well in older builds.
  
==Emulation issues==
+
You must specify whether you will be hosting (server) or joining (client) the game. If joining, you must also enter the host's IP address in the field below. Make sure your firewall is open on port 55435 (default; you can change it if you like) and that the port is forwarded in your router, if applicable. You can also specify 'spectator mode,' which will allow an arbitrary number of spectators to join and watch you play without being able to play themselves.
===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 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 more accurate emulators (Mesen, FCEUX) 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 sufficient to describe the cartridge and emulate it, so emulators have to include the layout and behavior of these mappers in their code, while 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".
+
Delay frames denote the maximum number of frames RetroArch's libretro cores will need to emulate at once to maintain synchronization due to actual network latency. You can figure out an appropriate ballpark for this number by pinging the other player and dividing the time (in milliseconds) by 16 (roughly the number of milliseconds in a frame from a game running at 60 fps). If the gameplay is a bit choppy, try increasing the number of delay frames a bit.
  
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 romhacks).
+
Similar to the GGPO platform, RetroArch creates a constant stream of savestates which, along with button presses, are exchanged and compared between the server and client machines. If the savestates start to diverge, the game rolls back in time to a point where they both agree and then the libretro cores emulates the missing frames all at once to get back to the appropriate spot. This gives the illusion of completely lagless inputs, which is invaluable for twitchy, fine controls.
  
===QD FDS Support===
+
If you try to connect to a server and it immediately says client disconnected, open your log and make sure your ROMs match exactly (it will complain about a hash mismatch otherwise). If it gives you a weird time-out error, just close the window and try to connect again and it should work itself out (sometimes excessive spikes in network latency can cause the states to diverge catastrophically, resulting in this error).
Games dumped off the Famicom Disc System come into two major types:
 
  
* '''.fds format''': Most common format. Ubiquitous in ROM sets (GoodSets, No-Intro). Omits some checksum data.
+
==Alternative Launchers and Frontends==
* '''.qd format''' (stands for QuickDisk): Only ever used in official Nintendo re-releases. Almost identical to fds, but a full dump with checksum data. May omit padding.
+
There are plenty of other frontends that can either work as a launcher for RetroArch or you can replace it entirely with another [[Frontends#Libretro|libretro frontend]].
  
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. As of now, no NES emulators support the alternate more complete dumps, as well as fudging that check's result to always return a negative. To emulate a .qd image, stripping the checksum data with a custom script is needed.
+
{{Main|Frontends}}
  
===Overscan===
+
==External links==
{{Main|Overscan}}
+
*[https://docs.libretro.com/ Libretro Documentation] (Contains extensive documentation on the usage of Libretro, Retroarch, and its cores.)
 +
*[https://forums.libretro.com/ Official forums]
 +
*[https://discordapp.com/invite/27Xxm2h Official Discord server]
 +
*[https://www.youtube.com/user/Libretro/ Official Youtube channel]
  
[[File:Retroarch_2013-08-16_06-32-24-62.png|thumb|250px|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 no standard level of overcropping. Many games require different levels for 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.
+
[[Category:RetroArch|*]]
 
+
[[Category:Frontends]]
===Color Palette===
+
[[Category:Netplay]]
{{Main|Famicom Color Palette}}
+
[[Category:Windows emulation software‏‎]]
 
+
[[Category:Linux emulation software]]
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.
+
[[Category:macOS emulation software]]
 
+
[[Category:Raspberry Pi emulation software]]
The 3DS 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.
+
[[Category:Pandora emulation software]]
 
+
[[Category:Android emulation software]]
==Peripherals==
+
[[Category:iOS emulation software]]
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.<ref>[[Wikipedia:List of Nintendo Entertainment System accessories|List of Nintendo Entertainment System accessories]]</ref>
+
[[Category:PlayStation Portable emulation software]]
 
+
[[Category:PlayStation Vita emulation software]]
{| class="wikitable" style="text-align:center;"
+
[[Category:PlayStation 2 emulation software]]
! scope="col" style="width:200px;"|Name(s)
+
[[Category:PlayStation 3 emulation software]]
! scope="col" style="width:300px;"|Description
+
[[Category:PlayStation 4 emulation software]]
! scope="col" style="width:150px;"|Game(s)
+
[[Category:GameCube emulation software]]
! scope="col" style="width:100px;text-align:center"|Support emulator(s)
+
[[Category:Wii emulation software]]
! scope="col" style="width:300px;"|Note
+
[[Category:Wii U emulation software]]
|-
+
[[Category:3DS emulation software]]
!Zapper
+
[[Category:Switch emulation software]]
|An electronic light gun accessory that allowing players to aim at the display and shoot various objects that appear on the screen.
+
[[Category:Xbox emulation software]]
|''[[Wikipedia:Duck Hunt|Duck Hunt]]''<br/>''[[Wikipedia:Wild Gunman|Wild Gunman]]''<br/>''[[Wikipedia:Hogan's Alley (video game)|Hogan's Alley]]''
+
[[Category:Xbox 360 emulation software]]
|Various
+
[[Category:Xbox One emulation software]]
|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.
+
[[Category:Web emulation software]]
|-
 
!Arkanoid/Vaus Controller
 
|A specific game controller with one button to "fire" and a dial to control back and forth movement.
 
|''[[Wikipedia:Arkanoid|Arkanoid]]''<br/>''[[Wikipedia:Arkanoid: Revenge of Doh|Arkanoid: Revenge of Doh]]''<br/>''[[Wikipedia:Chase H.Q.|Chase H.Q.]]''
 
|Various
 
|N/A
 
|-
 
!Power Pad<br/>Family Trainer<br/>Family Fun Fitness
 
|A game controller that allows players stepping on a gray floor mat with 12 pressure-sensors embedded between flexible plastic to control gameplay.
 
|''[[Wikipedia:Stadium Events|Stadium Events]]''<br/>''[[Wikipedia:Dance Aerobics|Dance Aerobics]]''<br/>''Athletic World''
 
|[[FCEUX]]
 
|N/A
 
|-
 
!NES Four Score<br/>NES Satellite<br/>4-Player Adaptor
 
|A multitap accessory that allows players to enable up to 4-player gameplay using infrared wireless communication.
 
|''[[Wikipedia:R.C. Pro-Am II|R.C. Pro-Am II]]''<br/>''[[Wikipedia:Bomberman II|Bomberman II]]''<ref group=N>Up to three players only.</ref><br/>''[[Wikipedia:Gauntlet II|Gauntlet II]]''<br/>''[[Wikipedia:Nintendo World Cup|Nintendo World Cup]]''<br/>''[[Wikipedia:A Nightmare on Elm Street (franchise)#Video games|A Nightmare on Elm Street]]''
 
|Various
 
|Emulated by having an option to switch between 2-player and 4-player mode or just enabling/disabling Player 3 and Player 4's controller.
 
|-
 
!Family Computer Disk System
 
|''See above''
 
|''[[Wikipedia:The Legend of Zelda (video game)|Legend of Zelda: The Hyrule Fantasy]]''<br/>''[[Wikipedia:Zelda II: The Adventure of Link|Zelda II: The Adventure of Link]]''<br/>''[[Wikipedia:Metroid|Metroid]]''<br/>''[[Wikipedia:Kid Icarus|Light Mythology: Palutena's Mirror]]''<br/>''[[Wikipedia:Castlevania (1986 video game)|Akumajō Dracula]]''<br/>''[[Wikipedia:Ice Hockey (1988 video game)|Ice Hockey]]''
 
|Various
 
|BIOS file (which can be found [[Emulator_Files#NES_.2F_Famicom|here]]) is required for FDS emulation. Note that there's two versions of the BIOS: the one that comes with FDS and another one that comes with Sharp's [[Wikipedia:Twin Famicom|Twin Famicom]]. They function identically despite showing different intro during first boot.
 
|-
 
!Microphone
 
|A Japan-exclusive built-in feature in the original Player 2 Famicom controller that allows players to use external sound source (e.g. player's voice) as input.
 
|''[[Wikipedia:The Legend of Zelda (video game)|Legend of Zelda: The Hyrule Fantasy]]''<br/>''[[Wikipedia:Kid Icarus|Light Mythology: Palutena's Mirror]]''<br/>''[[Wikipedia:The Legend of Zelda (video game)|Kaiketsu Yanchamaru]]''
 
|[[Mesen]]<ref group=N name=microphone>Cheated by pressing any specific key ("M" by default).</ref><br/>[[VirtuaNES]]<ref group=N name=microphone/><br/>[[Virtual Console]]<ref group=N>Through an actual microphone.</ref>
 
|N/A
 
|-
 
!Family BASIC
 
|A Japan-exclusive peripheral that includes a enchanced dialect of [[Wikipedia:BASIC|BASIC]] programming language that allow users to create programs in Famicom. It comes with a special designed cartridge, keyboard, and the Data Recorder.
 
|''Family BASIC''
 
|[[Mesen]]<br/>[[Nestopia|Nestopia UE]]<br/>[[FCEUX]]<br/>[[VirtuaNES]]
 
|N/A
 
|-
 
!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.
 
|''Family BASIC''
 
|[[Mesen]]<br/>[[Nestopia|Nestopia UE]]<br/>[[VirtuaNES]]
 
|N/A
 
|-
 
!Famicom 3D System
 
|A Japan-exclusive active shutter glasses headset which allowed compatible games to display a stereoscopic image for 3D experience.
 
|''[[Wikipedia:List of Mario racing games#Famicom Grand Prix II: 3D Hot Rally|Famicom Grand Prix II: 3D Hot Rally]]''<br/>''[[Wikipedia:Rad Racer|Highway Star]]''<br/>''[[Wikipedia:Falsion|Falsion]]''
 
|[[RetroArch]]
 
|[https://github.com/libretro/glsl-shaders/tree/master/stereoscopic-3d GLSL shaders] is needed for RetroArch to simulate the 3D experience with [[Virtual Reality|VR]] headset, 3D TV, 3D projector or Android phone with cardboard.
 
|-
 
!Miracle Piano Teaching System
 
|An accessory that used an electronic MIDI keyboard as input.
 
|''[[Wikipedia:Miracle Piano Teaching System|Miracle Piano Teaching System]]''
 
|N/A
 
|N/A
 
|-
 
!ASCII TurboFile<br/>ASCII TurboFile II
 
|A Japan-exclusive external storage devices for saving game positions on Famicom.
 
|''[[Wikipedia:Wizardry: Proving Grounds of the Mad Overlord|Wizardry: Proving Grounds of the Mad Overlord]]''<br/>''[[Wikipedia:Wizardry II: The Knight of Diamonds|Wizardry II: The Knight of Diamonds]]''<br/>''[[Wikipedia:River City Ransom|Downtown Nekketsu Monogatari]]''<br/>''[[Wikipedia:Miracle Warriors: Seal of the Dark Lord|Haja no Fūin]]''
 
|[[VirtuaNES]]
 
|N/A
 
|-
 
!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>
 
|''Oeka Kids: Anpanman no Hiragana Daisuki''<br/>''Oeka Kids: Anpanman to Oekaki Shiyou!!''
 
|[[Mesen]]<br/>[[Nestopia|Nestopia UE]]<br/>[[FCEUX]]<br/>[[puNES]]<br/>[[VirtuaNES]]
 
|N/A
 
|-
 
!RacerMate CompuTrainer Pro
 
|A rare series of peripherals for the game ''RacerMate Challenge II''. It comes with a interface box, a bike trainer as well as a handlebar display.<ref>[http://www.nesmuseum.com/racermate.html NES Museum: RacerMate Challenge II]</ref>
 
|''RacerMate Challenge II''
 
|N/A
 
|N/A
 
|-
 
!Game Genie
 
|A pass-through devices that attached between a cartridge and the console, allowing the player to manipulate various aspects of games and access unused assets and functions by temporarily modify game data.
 
|Various
 
|[[FCEUX]]<ref group=N name=gamegenie>Cheat authentically by using a Game Genie ROM.</ref><br/>[[puNES]]<ref group=N name=gamegenie/>
 
|Most emulators have a GUI to manage cheats and don't rely on real hardware cheating devices.
 
|-
 
!Family Computer Network System<br/>Famicom Modem
 
|A Japan-exclusive network peripheral that allowed users to connect to a Nintendo server which provided extra content such as jokes, news, game tips, weather forecasts, horse betting and downloadable content via dial-up modem.
 
|N/A
 
|N/A
 
|N/A
 
|}
 
<references group=N/>
 
 
 
==Hardware Variants==
 
===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''', which the later have 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 for games in Vs. DualSystem cabinet, [[MAME]] is the only choice.
 
 
 
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.
 
 
 
===Famicom Box===
 
Also re-released later as Sharp's FamicomStation. The hybrid NES/Famicom arcade box [http://famicomworld.com/system/other/famicombox/ 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 games available. You can see it in action in season 18 of [http://www.gamingcx.com/ Game Center CX]. 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 has 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===
 
A pirate NES Famicom clone which was sold in Russia and Eastern Europe, with the blueprint later reused for other Famiclones. Here's [http://www.youtube.com/watch?v=kne6AKyYUuM 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- through 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) 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.
 
 
 
===NES Classic Edition===
 
{{main|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 of 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.
 
 
 
==Resources==
 
*[http://wiki.nesdev.com/w/index.php/Nesdev_Wiki Nesdev Wiki] - A place for all your NES programming/NES emulator programming needs.
 
*[http://forums.nesdev.com/viewtopic.php?t=2818 Nesdev Forum] - Discussion of NES Wii Virtual Console accuracy.
 
 
 
==References==
 
{{Reflist}}
 
 
 
 
{{Nintendo}}
 
 
 
[[Category:Consoles]]
 
[[Category:Home consoles]]
 
[[Category:Nintendo consoles]]
 
[[Category:Nintendo Entertainment System emulators|*]]
 
[[Category:Third-generation video game consoles]]
 

Revision as of 10:53, 6 September 2021

RetroArch
Retroarch.png
Developer(s) Squarepusher, themaister, others
Latest version 1.18.0
Active Yes
Platform(s) Windows
macOS
Linux
Android
iOS (jailbroken)
Raspberry Pi
Pandora
Pyra
PlayStation 2
PlayStation 3
PlayStation 4 (Unofficial)
PlayStation Portable
PlayStation Vita/TV
Xbox
Xbox 360
Xbox One
GameCube
Wii
Wii U
Nintendo Switch
Nintendo 3DS
GCW Zero (Unofficial)
OpenDingux
BlackBerry
Steam Link
Type libretro frontend
Programmed in C, C++
Website libretro.com
Support ($) Patreon, Donate
License GNU GPLv3
Source code GitHub

RetroArch (formerly SSNES) is an open-source, multi-platform libretro frontend written in C or C++. It is designed to be fast, lightweight, and portable.

Downloads

Mobile/Console Versions

Supported Systems

Main article: libretro#Cores

Features

  • Consistency across multiple platforms, using the same UI structure and a fully featured command line interface.
  • Gamepad controlled menu system with multiple styles available, such as XMB or Material UI. (There's also a QT-based 'WIMP' desktop-style interface for PC platforms that was announced before and released in version 1.7.3.)
  • Gamepad auto-configuration profiles, so that gamepads are mapped automatically when connected. XInput controller autoconfig is built into the application, with other controller types available as external profiles.
  • Per-core and per-game configuration overrides
  • Custom resolution and refresh rate for video output, with exclusive fullscreen mode and monitor index for multi-monitor setups.
  • Dynamic rate control for smooth audio and video, even when the game's output rate is different from your system. Especially obvious with systems like GBA that do not run 60Hz.
  • Basic fast forward, SRAM saving, savestate, etc. It supports serialization of the emulation state which is used to provide real-time rewind and netplay.
  • Pixel shaders, primarily using Cg and GLSL, with HLSL on Xbox 360. The shader format it uses is flexible and fairly easy to use, allowing for complex multi-pass effects with adjustable runtime parameters. Also supports traditional video filter plugins that are run in software.
  • Supports audio DSP filter plugins through .dsp configuration files.
  • Custom overlay support.
  • FFmpeg recording and playback support. It can record either the native resolution output of the core or the post-processed output of the frontend. Playback is handled through an internal FFmpeg libretro core.
  • Streaming support. By adding your twitch account to RetroArch and making some small setup, it is possible to stream on Twitch the content of the game played.
  • GGPO-like netplay (latency hiding rollback). It should be lag-free if everyone involved emulates at full speed, doesn't live on opposite sides of the world and has decent internet speeds. It uses peer-to-peer UDP and supports two players. Due to rollback, it requires a fair amount of CPU power to run, and only works with cores that support serialization.
  • Options for decreasing input latency related to vsync by eliminating buffering by the video driver, as well as using frame delay to delay polling of inputs until right before a vsync occurs on the display.
  • Run-ahead to reduce latency. This setting allows cycle-accuracy emulators to run ahead of mandatory 1 or 2 frames of input lag. It allows emulators to achieve better latency than original hardware (Official debut in version 1.7.2).

Building RetroArch

Main article: Building RetroArch

Using RetroArch

Main article: Using RetroArch

RetroArch for Dummies

Main article: Dummies Guide: RetroArch

Netplay

Netplay is now usable from the menu in current builds, under Settings>Netplay Options. You can get it to work with the command line or the long-deprecated RetroArch-Phoenix Launcher as well in older builds.

You must specify whether you will be hosting (server) or joining (client) the game. If joining, you must also enter the host's IP address in the field below. Make sure your firewall is open on port 55435 (default; you can change it if you like) and that the port is forwarded in your router, if applicable. You can also specify 'spectator mode,' which will allow an arbitrary number of spectators to join and watch you play without being able to play themselves.

Delay frames denote the maximum number of frames RetroArch's libretro cores will need to emulate at once to maintain synchronization due to actual network latency. You can figure out an appropriate ballpark for this number by pinging the other player and dividing the time (in milliseconds) by 16 (roughly the number of milliseconds in a frame from a game running at 60 fps). If the gameplay is a bit choppy, try increasing the number of delay frames a bit.

Similar to the GGPO platform, RetroArch creates a constant stream of savestates which, along with button presses, are exchanged and compared between the server and client machines. If the savestates start to diverge, the game rolls back in time to a point where they both agree and then the libretro cores emulates the missing frames all at once to get back to the appropriate spot. This gives the illusion of completely lagless inputs, which is invaluable for twitchy, fine controls.

If you try to connect to a server and it immediately says client disconnected, open your log and make sure your ROMs match exactly (it will complain about a hash mismatch otherwise). If it gives you a weird time-out error, just close the window and try to connect again and it should work itself out (sometimes excessive spikes in network latency can cause the states to diverge catastrophically, resulting in this error).

Alternative Launchers and Frontends

There are plenty of other frontends that can either work as a launcher for RetroArch or you can replace it entirely with another libretro frontend.

Main article: Frontends

External links