Project Nested

From Emulation General Wiki
Jump to navigation Jump to search
Project Nested
Developer(s) Myself086
Latest version v1.1 (emulator)
v1.1 (converter)
Active Yes
Platform(s) Super Famicom (SNES)
Emulates NES
Website GitHub page
Programmed in C#
License MIT License
Source code Git

Project Nested is an open-source Famicom (NES) emulator for the Super Famicom (SNES) written in C#.

Download[edit]

Super Nintendo Official releases
GitHub releases

Overview[edit]

Nested was inspired by the SNES originally being designed to be backwards-compatible with the NES and Myself086 wanting to code a JIT (Just-In-Time) compiler. Work on the emulator began in 2015, when math would be done on its potential performance for three years until one day in 2018, when the design could theoretically run games at full speed. Development started in 2018.

A JIT (Just-In-Time) and AOT (Ahead-of-Time) compiler (available for Windows) is used to convert NES ROMs into SNES ROMs. This is used to allow software titles for the NES to run on SNES hardware.

The emulator does not use any enhancement chips, but requires the following to run on a flash cartridge or a reproduction cartridge:

  • Up to 8MB of fast HiROM (additional support for slow HiROM planned)
  • 16KB of SRAM (additional support for anywhere else from 0KB to 256KB of SRAM, depending on the software title and settings, planned)
  • A battery if the software title requires it

Compatibility[edit]

The emulator can emulate the NES at a full 60FPS (frames per second), with support for audio. Software titles that use mappers 0-2 and 4 are playable (however, mappers 1 and 4 have minor glitches, which may reduce compatibility levels with titles that use them), with mappers 3, 5-8, 11, 12, 16, 18, 21-26, 32-34, 36-38, 40, 42 and 66 having unplayable support, and mappers 9 and 10 being unlikely to be supported due to it being declared impossible to accurately emulate CHR bank switching, which both mappers perform. Additionally, there is no support for iNES 2.0.

Out of the 332 tested titles, 11 (3.31%) are fully playable, 37 (11.14%) are playable but need a full playthrough to test, 29 (8.73%) are mostly playable, 95 (28.61%) crash in the intro or early in-game, and 160 (48.19%) are unplayable. The fully playable titles are Crystalis, Donkey Kong, Donkey Kong Jr., Donkey Kong 3, Mario Bros., Millipede, Popeye no Eigo Asobi, Super Mario Bros., Tennis, The Legend of Zelda and Volleyball (and formerly (as of v1.0.2) Battle City, which is now only mostly playable due to hanging after the game over screen with visual glitches), some of which run with minor glitches or require NMI mode "At vblank" to be turned off. The official compatibility list is available here.

See also[edit]