Changes

Jump to navigation Jump to search

Nintendo Entertainment System emulators

242 bytes added, 21:40, 23 December 2022
Grammar
}}
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 . On October 18, 1985, it was released in the US. It retailed for {{Inflation|USD|179.99|1985}}. It had a Ricoh 2A03 CPU at 1.79 MHz with 2KB 2 KBs 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 small maximum ROM size), how the graphics are were loaded onscreen, just the native sound processing is was available, no saving... To solve this problem, Nintendo came up with two solutions:
* The '''Family Computer Disk System''' (FDS), a . A Japan-only add-on which that played games from a semi-custom variant of Mitsumi's Quick Disk format. It offered slightly higher data storage and slightly enhanced sound processing. It also had a microphone never found anywhere else. There were plans to release it in the US; however, 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.* '''Memory Management Controllers''' (MMC), also known colloquially as '''mappers'''. They solved every single aforementioned 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.
Emulation for the NES is robust, with many high-quality emulators for various systems.
|Cycle
|{{✓}}
|{{~}}<ref group=N>The [https://github.com/libretro/Mesen/commits/master libretro core] and [https://github.com/NovaSquirrel/Mesen-X/ NovaSquirrel's fork] is are still active.</ref>
|{{✓}}
|-
|{{✗}}
|{{✗}}
|Cycle<ref group=N>[https://prilik.com/ANESE/#disclaimers The CPU is instruction-cycle accurate, but not sub-instruction cycle accurate (TODO ). While this inaccuracy doesn’t affect most games, there are some that that rely on sub-instruction level timings.]</ref>
|{{✓}}
|{{~}}
!colspan="9"|Mobile / ARM
|-
|Nestopia<ref group=N name=libretro>Only available as a libretro core (e.g. , [[RetroArch]]).</ref>
|align=left|{{Icon|Android|iOS}}
|1.44
|{{✓}}
|-
|NesterJ<ref group=N>AoEX is based on NesterJ 1.12 Plus 0.61 RM, so it 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>
|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]
===Comparisons===
*[[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. The standalone emulator has ceased development for unknown reasons, but the [https://github.com/libretro/Mesen libretro] and [https://github.com/NovaSquirrel/Mesen-X NovaSquirrel's fork] is are still active.*[[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> *[[Nestopia]] also has a high ranking in those same tests.<ref name="nestas"/> Even so, Nestopia has issues with [https://en.wikipedia.org/wiki/The_Young_Indiana_Jones_Chronicles_(video_game) ''The Young Indiana Jones Chronicles ''] and doesn't display the status bar in [https://en.wikipedia.org/wiki/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 in the Undead Edition.*[[Nintendulator]] and My Nes also have a fairly high ranking in those tests.<ref name="nestas"/>. NintendulatorNRS is a fork of Nintendulator which has support for that supports the Famicom Disk System, rare mappers, VRT chipsets, and many unlicensed and bootleg carts and systems.
*[[FCEUX]] scores rather low in these tests, despite being a recommended emulator on TAS Videos. The New PPU is more accurate than the Old PPU, thankfully. The emulator is still useful, though, thanks to its robust Lua scripting and incorporating FCEUmm into its feature set.
*[[VirtuaNES]] also scores quite low in the testsbut, 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.
==Emulation issues==
===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 ([https://www.mediafire.com/file/l56fw5ozxu1w36d/nintendulatorNRS-src-mappers_2022-09-12.7z/file NintendulatorNRS], [https://github.com/mamedev/mame/commits/master/src/mame/nintendo MAME], [https://github.com/NovaSquirrel/Mesen-X/commits/master/Core Mesen-X], [https://github.com/punesemu/puNES/commits/master/src/core/mappers puNES], [https://github.com/0ldsk00l/nestopia/commits/master/source/core/board Nestopia UE]) 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. At the same time, 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".
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 romhacksROM hacks).
===QD FDS support===
* '''.fds format''': Most common format. Ubiquitous in ROM sets (GoodSets, No-Intro). Omits some checksum data.
* '''.qd format''' (stands for QuickDisk): Only ever used in official Nintendo re-releases. Almost identical to fdsFDS, but 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. As of now, no NES emulators support the alternate , more complete dumps, as well as and 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.
===Overscan===
{{Main|Overscan}}
[[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 the best results. For example, [https://en.wikipedia.org/wiki/Super_Mario_Bros._3 ''Super Mario Bros. 3 ''] requires quite a bit of cropping, however. However, the same level of cropping will obscure the letters of the status bar in [https://en.wikipedia.org/wiki/Castlevania#Games ''Castlevania ''] games.
===Color palette===
==Peripherals==
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>
<div style="max-width:100%; overflow:auto;">
|-
!Zapper
|An electronic light gun accessory that allowing allows players to aim at the display and shoot various objects that appear on the screen.
|''[[Wikipedia:Duck Hunt|Duck Hunt]]''<br/>''[[Wikipedia:Wild Gunman|Wild Gunman]]''<br/>''[[Wikipedia:Hogan's Alley (video game)|Hogan's Alley]]''
|Various
|-
!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
|-
!Power Pad<br/>Family Trainer<br/>Family Fun Fitness
|A game controller that allows players stepping to step 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]]
|-
!NES Four Score<br/>NES Satellite<br/>4-Player Adaptor
|A multitap accessory that allows players to enable enables 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 the 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
|''[[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
|The BIOS file (which can be found [[Emulator_Files#NES_.2F_Famicom|here]]) is required for FDS emulation. Note that there's are 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 a different intro during the first boot.
|-
!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.
|''[[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/>[[puNES]]<ref group=N name=microphone/><br/>[[VirtuaNES]]<ref group=N name=microphone/><br/>[[Virtual Console]]<ref group=N>Through an actual microphone.</ref>
|-
!Family BASIC
|A Japan-exclusive peripheral that includes a enchanced dialect of with an enhanced [[Wikipedia:BASIC|BASIC]] programming language that allow dialect. It allows users to create programs in the Famicom. It comes with has a special specially designed cartridge, keyboard, and the Data Recorder.
|''Family BASIC''
|[[Mesen]]<br/>[[Nestopia|Nestopia UE]]<br/>[[FCEUX]]<br/>[[puNES]]<br/>[[VirtuaNES]]
|-
!Famicom 3D System
|A Japan-exclusive active shutter glasses headset which that allowed compatible games to display a stereoscopic image for a 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 are needed for RetroArch to simulate the 3D experience with a [[Virtual reality|VR]] headset, 3D TV, 3D projector or Android phone with cardboard.
|-
!Miracle Piano Teaching System
|-
!ASCII TurboFile<br/>ASCII TurboFile II
|A Japan-exclusive external storage devices device 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]]
|-
!RacerMate CompuTrainer Pro
|A rare series of peripherals for the game ''RacerMate Challenge II''. It comes with a has an interface box, a bike trainer as well as , and a handlebar display.<ref>[http://www.nesmuseum.com/racermate.html NES Museum: RacerMate Challenge II]</ref>
|''RacerMate Challenge II''
|N/A
|-
!Game Genie
|A pass-through devices device that is attached between a cartridge and the console, allowing that allows 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/>
|-
!Family Computer Network System<br/>Famicom Modem
|A Japan-exclusive network peripheral that allowed users to connect to a Nintendo server which 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
==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 . The later have has double chipsets on the PCB and is capable of handling two different programs or simply two separate copies of a single program simultaneously.
Most emulators support games in Vs. UniSystem cabinet by setting up different DIP switches. But 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 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 available 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 . It had many more hardware lockout chips and pins with different behavior than usual (it also only supported cartridges using memory mapper 0). Sports a unique boot screen for both models released.
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' BIOSes and most of its ROMs dumped).
===Dendy===
A pirate NES Famicom clone which that 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 50Hz50 Hertz, with many other changes from the official PAL NES as well- through . Though these differences often break the compatibility of Dendy-specific releases on most emulators.
MESS supports this console, and some other emulators (such as Mesen, puNES, and FCEUX) 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.
Differences between VTxx series chips and regular NES could be checked on [https://www.nesdev.org/wiki/VTxx NesDev Wiki].
VTxx is often being used in those low-quality , plug & play consoles, or keyboard-shaped , so-called educational computers.
V.R technology Technology provides an emulator called [http://www.vrt.com.tw/download.htm EmuVT] as official development & debugging tool, which supports the emulation of multiple kinds of VTxx series chips, and . It seems to be modded out of an old emulator called [https://web.archive.org/web/20110317151619/http://www.emulation9.com/nnnesterj/ NNNesterJ].
===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 for the NES Classic, and the success of the Super NES Classic Edition console, Nintendo re-introduced the NES Classic on June 29, 2018. Production was discontinued again in December 2018.
==Resources==
136
edits

Navigation menu