Difference between pages "Game engine recreations and source ports" and "Project Nested"

From Emulation General Wiki
(Difference between pages)
Jump to navigation Jump to search
(Single game engine)
(Tags: Mobile edit, Mobile web edit)
 
 
Line 1: Line 1:
Sometimes a full system emulator is overkill. This is especially true when a developer only wants to get one game (or a number of games that use the same engine) working. In that case, reimplementing that game alone would save more time than implementing the platform it runs on. These kinds of projects are common when abandonware has large communities; when the original developer has disbanded and can no longer support or update it, an effort is then made to get it running natively on newer versions of-- and/or entirely different-- operating systems and platforms.
+
{{Infobox emulator
 +
|logo =
 +
|logowidth =
 +
|version = 1.4.2
 +
|active = Yes
 +
|platform = [[Emulators on SNES|Super Famicom (SNES)]]
 +
|target = [[Nintendo Entertainment System emulators|NES]]
 +
|developer = Myself086 (Laurent Courville)
 +
|prog-lang = 65C816 assembly, C#
 +
|website = [https://github.com/Myself086/Project-Nested GitHub page]
 +
|license = MIT License
 +
|source = [https://github.com/Myself086/Project-Nested GitHub]
 +
}}
  
* When the developer only has a binary to work with (and not the [[source code]]), they recreate the engine rather than port it, hence the term '''[[wikipedia:Game engine recreation|game engine recreations]]''' (or alternatively '''game engine re-implementations'''). How the developers go about this process depends on their philosophy; they may opt to decompile the original executable and have their own program rely on the original until all of its functions have been remade, at which point the original binary is no longer needed. Alternatively, they can be remade based on a clean room design, in which the project implements the abstract features without having to disassemble the original, going by how components are expected to be used rather than how the game uses them. Some engines come about simply because they were inspired by the original game, and the programmer felt confident enough that no reverse engineering was necessary to make an engine that does the same thing.
+
'''Project Nested''' is an open-source [[Nintendo Entertainment System emulators|Famicom (NES)]] emulator for the [[Super Nintendo emulators|Super Famicom (SNES)]] written 3/4 in 65C816 assembly and 1/4 C#.
* In rare cases, games are released as open-source by the publishers themselves, allowing developers to perform a '''source port''' of the code. This skips the step of figuring out how the game works. The most common example that's often used is id Software's release of Doom in 1997. It led to [[wikipedia:List of Doom source ports|so many ports being released]] that the community began to joke about what devices haven't gotten it running yet.
 
  
Some projects are implemented in ways that the original developer did not intend; for example, for a platform other than which publishers marketed it for. And they're not just limited to game engines either; [https://webamp.org/ Webamp] is a JavaScript application that reimplements Winamp in the web browser. These projects are almost always open-source which also allows new programmers to fix bugs that could have been difficult to track down during development (alternatively, the bugs may be emulated to allow old mods to continue to safely exploit them). When most of the effort is on programming, the project will usually require the original game's assets (such as files in the installation directory or ROMs) until those ever get remade. This lets the developers claim they aren't infringing the game's copyrights since the player must obtain the original to use it; if the game is still being sold, this could allow the publisher to even earn revenue from the project.
+
==Download==
 +
{| cellpadding="4"
 +
|-
 +
|align=center|{{Icon|SNES-big}}
 +
|'''[https://github.com/Myself086/Project-Nested/releases Official releases]'''
 +
|}
  
For the sake of brevity, most of these projects often refer to themselves under some variety of '''fan remakes'''. The [[#External links|External links]] section has lists for a number of known and available projects.
+
==History==
 +
The project began in 2015 as a NES emulator on PC. The emulator was running at full speed, and development was going "pretty well", but was not considered challenging, so it was decided to move it to the SNES. After three years of casual development and thinking about how to achieve 100% performance (otherwise it would have been considered pointless) until summer 2018, the emulator began official development.
  
==Multi game engine==
+
As of v1.3, the model has been improved since, but not by much. The speed was calculated by multiplying the average amount of times each instruction executed each frame and the overhead. However, the maths were 5 percent off on first implementation. Most implementations were made after approximately one month.
{| class="wikitable" style="text-align:center;"
+
 
|-
+
==Overview==
! scope="col"|Name
+
The emulator 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.
! scope="col"|Operating System(s)
+
 
! scope="col"|Latest Version
+
Emulation works by converting NES ROMs into SNES ROMs using a JIT (Just-In-Time) and AOT (Ahead-of-Time) compiler (with various options) for Windows, allowing them to run on SNES hardware.
! scope="col"|[[libretro|Libretro Core]]
+
 
! scope="col"|Active
+
Save files are created after the software title runs for a while. These can then be added to the ROM, often improving performance, vastly with some titles, and not much with others.
! scope="col"|[[Recommended Emulators|Recommended]]
+
 
! scope="col"|Supported game(s)
+
The following are required:
|-
+
* Up to 8MB of fast HiROM (slow HiROM support planned)
!colspan="9"|Action-adventure (3rd-person)
+
* 8KB to 256KB of SRAM (at least 16KB is required to create feedback for the exe)
|-
+
* A battery if required by the software title
|[https://opentomb.github.io/ OpenTomb]
+
 
|align=left|{{Icon|Windows|Linux|macOS}}
+
===Compatibility===
|[https://github.com/opentomb/OpenTomb/releases git]
+
* [https://docs.google.com/spreadsheets/d/1xKZIyNz1DSI3ZBdMfaTEaa_9b6IEABx-ZPwOb6XqcLQ/edit?usp=sharing Compatibility List]
|{{✗}} ||{{✓}} ||{{✓}}
 
|Tomb Raider 1–5
 
|-
 
|[http://xproger.info/projects/OpenLara/ OpenLara]<ref group=N>OpenLara was inspired by OpenTomb</ref>
 
|align=left|{{Icon|Windows|Linux|macOS|Android|LinuxARM|3DS|Switch}}
 
|[https://github.com/XProger/OpenLara/releases git]
 
|{{✓}} ||{{✓}} ||{{~}}
 
|Tomb Raider 1–4
 
|-
 
!colspan="9"|Adventure
 
|-
 
|[[ResidualVM]]
 
|Multi-platform
 
|[http://www.residualvm.org/downloads 0.3.1]
 
|{{✗}} ||{{✗}}<ref group=N>ResidualVM has merged with ScummVM</ref> ||{{✓}}
 
|3D adventure games (Grim Fandango, Escape from Monkey Island, Myst III: Exile & The Longest Journey)
 
|-
 
|[[ScummVM]]
 
|Multi-platform
 
|[https://www.scummvm.org/downloads {{ScummVMVer}}]
 
|{{✓}} ||{{✓}} ||{{✓}}
 
|Adventure games and RPGs (LucasArts, Sierra, Activision, Humongous & more. Over [[wikipedia:ScummVM#Supported_games|250 games]].)
 
|-
 
!colspan="9"|FPS
 
|-
 
|[https://m210.duke4.net BuildGDX]
 
|{{Icon|Windows|Linux|macOS}}
 
|[https://m210.duke4.net Website]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Blood, Duke Nukem 3D, Shadow Warrior, Powerslave/Exhumed, Redneck Rampage, Redneck Rampage Rides Again, Witchaven, Witchaven II, TekWar, Legend of the Seven Paladins
 
|-
 
|Raze
 
|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/coelckers/Raze/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Duke Nukem 3D, Blood, Redneck Rampage, Shadow Warrior and Exhumed/Powerslave, Nam, WW2 GI
 
|-
 
|[https://www.eduke32.com EDuke32] <br/>VoidSW <ref group=N>VoidSW is included with EDuke32</ref>
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[https://dukeworld.com/eduke32/synthesis/latest/?s=d&o=d&dir=eduke32/synthesis/latest Website]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|''EDuke32:'' Duke Nukem 3D, Ion Fury, NAM, World War II GI <br/>''VoidSW:'' Shadow Warrior
 
|-
 
|[https://nukeykt.retrohost.net RedNukem]
 
|{{Icon|Windows|Linux}}
 
|[https://github.com/nukeykt/NRedneck/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Duke Nukem 3D, Duke Nukem 64, Redneck Rampage, Redneck Rampage Rides Again, NAM, World War II GI
 
|-
 
|Metaforce
 
|{{Icon|Windows|Linux|macOS}}
 
|[https://releases.axiodl.com/ Dev builds]<br/>[https://github.com/AxioDL/metaforce git]
 
|{{✗}} ||{{✓}} ||{{✗}} <small>(WIP)</small>
 
|Metroid Prime 1–3
 
|-
 
|XLEngine
 
|{{Icon|Windows|Linux}}
 
|[https://github.com/Mindwerks/XLEngine/releases git]
 
|{{✗}} ||{{✗}} ||{{✓}}
 
|Star Wars: Dark Forces, Daggerfall<br/>''Later:'' Outlaws, Blood, Shadow Warrior
 
|-
 
|[https://zdoom.org/index ZDoom]
 
|{{Icon|Windows|Linux|macOS}}
 
|[https://zdoom.org/downloads 2.81]
 
|{{✗}} ||{{✗}}<ref group=N>ZDoom has been discontinued. However the development of its replacements, GZDoom and LZDoom, is still active.</ref> ||{{✓}}
 
|Doom I–II, Final Doom, Heretic, Hexen: Beyond Heretic, Chex Quest I–III, Strife: Quest for the Sigil, Hacx: Twitch 'n Kill
 
|-
 
!colspan="9"|Platform
 
|-
 
|[http://clonekeenplus.sourceforge.net Commander Genius]
 
|{{Icon|Windows|Linux|macOS|Switch}}
 
|[http://clonekeenplus.sourceforge.net/download.php 2.8.2]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Commander Keen in Invasion of the Vorticons, Commander Keen in Keen Dreams, Commander Keen in Goodbye Galaxy, Commander Keen in Aliens Ate My Babysitter
 
|-
 
!colspan="9"|Racing
 
|-
 
|OpenNFS
 
|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/OpenNFS/OpenNFS/releases git]
 
|{{✗}} ||{{✓}} ||{{~}}
 
|Need for Speed I–III, Need for Speed: High Stakes, Need for Speed: Porsche Unleashed, Need for Speed: Hot Pursuit 2
 
|-
 
!colspan="9"|RPG
 
|-
 
|[[EasyRPG]]
 
|Multi-platform
 
|[https://easyrpg.org/player/downloads {{EasyRPGVer}}]
 
|{{✓}} ||{{✓}} ||{{✓}}
 
|RPG Maker 2000/2003 games
 
|-
 
|[http://www.gemrb.org GemRB]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD|Android}}
 
|[https://github.com/gemrb/gemrb/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Infinity Engine <br/>(Baldur's Gate series (1998–2001), Planescape: Torment, Icewind Dale series (2000–2002))
 
|-
 
|[[Neko RPGXP Player]]
 
|{{Icon|Android}}
 
|[https://play.google.com/store/apps/details?id=net.kernys.rgss&hl 2.01]
 
|{{✗}} ||{{✓}} ||{{~}}
 
|RPG Maker XP/VX/VA/MV games
 
|-
 
|[https://xoreos.org/ xoreos]
 
|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/xoreos/xoreos 0.0.6]
 
|{{✗}} ||{{✓}} ||{{✗}} <small>(WIP)</small>
 
|BioWare's Aurora engine & derivatives <br/>(BioWare's 7 PC/console RPGs, Sonic Chronicles: The Dark Brotherhood, The Witcher)
 
|-
 
!colspan="9"|RTS
 
|-
 
|[https://openage.sft.mx openage]
 
|align=left|{{Icon|Windows|Linux|macOS|BSD}}
 
|[https://github.com/SFTtech/openage/releases git]
 
|{{✗}} ||{{✓}} ||{{~}}
 
|Age of Empires, AoE II (HD), Star Wars: Galactic Battlegrounds
 
|-
 
|[http://www.openra.net OpenRA]
 
|{{Icon|Windows|Linux|macOS|BSD|PSVita}}
 
|[https://github.com/OpenRA/OpenRA/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Early Westwood games (Command & Conquer, C&C: Red Alert). <br/>''Soon:'' 2nd-gen C&C (C&C: Tiberian Sun).
 
|-
 
|[https://github.com/TheAssemblyArmada/Vanilla-Conquer Vanilla Conquer]
 
|{{Icon|Windows|Linux|macOS|BSD}}
 
|[https://github.com/OpenRA/OpenRA/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Early Westwood games (Command & Conquer, C&C: Red Alert, Dune 2000). <br/>Based on the official source code release by EA, with the goal of serving as a portable drop-in replacement for the original executables as well as a platform for mod developers.
 
|-
 
|[http://timjones.io/blog/tags/opensage OpenSAGE]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/OpenSAGE/OpenSAGE/releases git]
 
|{{✗}} ||{{✓}} ||{{✗}} <small>(WIP)</small>
 
|EA's Command & Conquer games <br/>(C&C: Generals, C&C: Generals - Zero Hour) <br/>''Soon:'' The Battle for Middle-earth series (2004–2006), C&C 3 & expansion.
 
|-
 
|[https://stratagus.com/stratagus.html Stratagus]
 
|align=left|{{Icon|Windows|Linux|macOS|Android}}
 
|[https://github.com/Wargus/stratagus 3.1.2]
 
|{{✗}} ||{{✓}}<ref group=N>Stargus is in pre-alpha but development has been halted. Stratagus, Wargus, and War1gus are being updated regularly.</ref> ||{{✓}}<ref group=N>StarCraft is only partially playable in Stargus in Stargus's current stage. The other games for the other engines work well if installed correctly.</ref>
 
|''[https://github.com/Wargus/wargus Wargus]:'' Warcraft II: Tides of Darkness + Beyond the Dark Portal, Aleona's Tale<br/>''[https://github.com/Wargus/war1gus War1gus]:'' Warcraft: Orcs & Humans<br/>''[https://github.com/Wargus/stargus Stargus]:'' StarCraft (partially playable)<br/>''Stratagus:'' Wyrmsun
 
|-
 
!colspan="9"|Shoot 'em up
 
|-
 
|[https://rec98.nmlgc.net ReC98]
 
|Multi-platform
 
|[https://github.com/nmlgc/ReC98 git]
 
|{{✗}} ||{{✓}} ||{{✗}} <small>(WIP)</small>
 
|Touhou 1–5 (PC-98)
 
|}
 
  
==Single game engine==
+
Emulation occurs at up to 60FPS (frames per second) with audio support, but occasional minor slowdown may occur. Software titles that use mappers 0-4 and 7 are playable, with mappers 1 and 4 having minor glitches, which may reduce compatibility levels with titles that use them, mappers 5, 6, 8, 11, 12, 16, 18, 21-26, 32-34, 36-38, 40, 42 and 66 unplayable, mappers 9 and 10 unlikely to be supported due to it being declared impossible to accurately emulate CHR bank switching, and 14 and 17 due to being "copier mappers", and the rest, up to 255, being unknown. Additionally, iNES 2.0 is not supported.
{| class="wikitable" style="text-align:center;"
 
|-
 
! scope="col"|Name
 
! scope="col"|Platform(s)
 
! scope="col"|Latest Version
 
! scope="col"|[[libretro|Libretro Core]]
 
! scope="col"|Active
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
! scope="col"|Supported game(s)
 
|-
 
!colspan="9"|Action-adventure
 
|-
 
|OpenJK
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://builds.openjk.org Build]<br/>[https://github.com/JACoders/OpenJK git]
 
|{{✗}} ||{{✓}} ||{{~}}
 
|Star Wars Jedi Knight II: Jedi Outcast, Star Wars Jedi Knight: Jedi Academy
 
|-
 
!colspan="9"|Adventure
 
|-
 
|The Ur-Quan Masters
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[http://sc2.sourceforge.net/downloads.php 0.8.0]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Star Control II
 
|-
 
!colspan="9"|FPS
 
|-
 
|Aleph One
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://alephone.lhowon.org/download.html 1.4]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Marathon 1-2, Marathon Infinity
 
|-
 
|[http://bibendovsky.github.io/bstone BStone]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/bibendovsky/bstone/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Blake Stone: Aliens of Gold, Blake Stone: Planet Strike
 
|-
 
|Crispy Doom <br/>Crispy Heretic
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/fabiangreffrath/crispy-doom/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|''Crispy Doom:'' Doom 1-2, Final Doom <br/>''Crispy Heretic:'' Heretic
 
|-
 
|[https://dhewm3.org dhewm3]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD|Amiga}}
 
|[https://github.com/dhewm/dhewm3/releases git]
 
|{{✓}} ||{{✓}} ||{{✓}}
 
|Doom 3 (Original)
 
|-
 
|[https://doom64ex.wordpress.com Doom64 EX]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://sourceforge.net/projects/doom64ex/files/doom64ex/2.5 2.5]
 
|{{✗}} ||{{✗}} ||{{✓}}
 
|Doom 64 (Original)
 
|-
 
|[http://www.descent2.de D2X-XL] <br/>[https://www.dxx-rebirth.com DXX-Rebirth]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://sourceforge.net/projects/d2x-xl 1.18.74] <br/>[https://github.com/dxx-rebirth/dxx-rebirth/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Descent, Descent II
 
|-
 
|ECWolf
 
|align=left|{{Icon|Windows|Linux|macOS|Android}}
 
|[http://maniacsvault.net/ecwolf/download.php 1.3.3]
 
|{{✓}} ||{{✓}} ||{{✓}}
 
|Wolfenstein 3D, Spear of Destiny, Super 3D Noah’s Ark
 
|-
 
|Hammer of Thyrion
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[http://uhexen2.sourceforge.net 1.5.9]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Hexen II
 
|-
 
|[https://ioquake3.org ioquake3]
 
|align=left|{{Icon|Windows|Linux|macOS|Amiga}}
 
|[https://ioquake3.org/get-it 1.36]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Quake III: Arena
 
|-
 
|iortcw
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/iortcw/iortcw/releases git]
 
|{{✗}} ||{{~}} ||{{✓}}
 
|Return to Castle Wolfenstein
 
|-
 
|[http://nukeykt.retrohost.net NBlood]
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/nukeykt/NBlood/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Blood
 
|-
 
|OpenMoHAA
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://sourceforge.net/projects/openmohaa/]
 
|{{✗}} ||{{✗}} ||{{✗}}
 
|Medal of Honour: Allied Assault
 
|-
 
|OpenXRay
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/OpenXRay/xray-16/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|S.T.A.L.K.E.R.: Clear Sky, S.T.A.L.K.E.R.: Call of Pripyat
 
|-
 
|[http://pcex.retrohost.net PCExhumed]
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://lerppu.net/wannabethesis/pcexhumed/]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Powerslave (PC)
 
|-
 
|[https://powerslaveex.wordpress.com Powerslave EX]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/svkaiser/PowerslaveEX git]
 
|{{✗}} ||{{✗}} ||{{✓}}
 
|Powerslave (Console)
 
|-
 
|[https://docs.libretro.com/library/prboom PrBoom]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[https://github.com/libretro/libretro-prboom git]
 
|{{✓}} ||{{~}}<ref group=N>PrBoom-plus is still active</ref> ||{{✓}}
 
|Doom 1-2, Final Doom
 
|-
 
|[http://quakespasm.sourceforge.net Quakespasm] <br/>vkQuake<ref group=N>vkQuake is based on Quakespasm, but uses Vulkan instead of OpenGL for rendering</ref>
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://sourceforge.net/projects/quakespasm 0.93.2] <br/>[https://github.com/Novum/vkQuake/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Quake 1
 
|-
 
|RBDOOM-3-BFG
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/RobertBeckebans/RBDOOM-3-BFG/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Doom 3 (BFG Edition)
 
|-
 
|[https://icculus.org/rott Rise of the Triad for Linux]
 
|align=left|{{Icon|Windows7|Linux|DC}}
 
|[https://icculus.org/rott/releases git]
 
|{{✗}} ||{{✗}} ||{{✗}}
 
|Rise of the Triad: Dark War
 
|-
 
|rottexpr
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/LTCHIPS/rottexpr/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Rise of the Triad: Dark War
 
|-
 
|Shockolate
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[https://github.com/Interrupt/systemshock/releases git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|System Shock 1
 
|-
 
|[https://theforceengine.github.io The Force Engine]
 
|align=left|{{Icon|Windows}}
 
|[https://theforceengine.github.io/downloads.html 0.01.006]
 
|{{✗}} ||{{✓}} ||{{✗}} <small>(WIP)</small>
 
|Star Wars: Dark Forces, Outlaws
 
|-
 
|[https://disenchant.net/tyrquake Tyrquake]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[https://disenchant.net/git/tyrquake.git git]
 
|{{✓}} ||{{✓}} ||{{✓}}
 
|Quake 1
 
|-
 
|vitaQuake II
 
|align=left|{{Icon|Windows|Linux|macOS|Vita}}
 
|[https://github.com/Rinnegatamante/vitaQuakeII git], [http://vitadb.rinnegatamante.it/#/info/278 PS Vita]
 
|{{✓}} ||{{✓}} ||{{✓}}
 
|Quake 2
 
|-
 
|[https://xash.su/xash3d.html Xash3D]
 
|align=left|{{Icon|Windows|Linux|Android}}
 
|[https://xash3d.ru/doku.php?id=downloads 0.99]
 
|{{✗}} ||{{~}} ||{{✓}}
 
|Half-Life 1
 
|-
 
|[https://www.yamagi.org/quake2 Yamagi Quake II]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[https://deponie.yamagi.org/quake2 8.00]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Quake 2
 
|-
 
!colspan="9"|Platform
 
|-
 
|[https://github.com/deathkiller/jazz2 Jazz² Resurrection]
 
|align=left|{{Icon|Windows|Linux|macOS|Android}}
 
|[https://github.com/deathkiller/jazz2/releases 0.6.6]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Jazz Jackrabbit 2
 
|-
 
|NXEngine <br/>[https://github.com/nxengine/nxengine-evo nxengine-evo]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[http://nxengine.sourceforge.net 1.0.0.6] <br/>[https://github.com/nxengine/nxengine-evo/releases 2.6.5]
 
|{{✓}} ||{{✗}} ||{{✓}}
 
|Cave Story
 
|-
 
|[http://www.alister.eu/jazz/oj/about.php OpenJazz]
 
|align=left|{{Icon|Windows|Linux|macOS|Pandora|GP32|DC}}
 
|[https://github.com/AlisterT/openjazz/releases 20190106]
 
|{{✗}} ||{{~}} ||{{✓}}
 
|Jazz Jackrabbit 1
 
|-
 
|R.E.L.I.V.E.
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/AliveTeam/alive_reversing Git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Oddworld: Abe's Oddysee, Oddworld: Abe's Exoddus
 
|-
 
|[https://github.com/cyxx/rawgl rawgl]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/cyxx/rawgl/releases 0.2.1]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Another World/Out of This World
 
|-
 
|REminiscence
 
|align=left|{{Icon|Windows|Android}}
 
|[http://cyxdown.free.fr/reminiscence/ 0.4.8]
 
|{{✓}} ||{{✓}} ||{{✓}}
 
|Flashback (Another World's spiritual sequel)
 
|-
 
|[https://github.com/lethal-guitar/RigelEngine Rigel Engine]
 
|align=left|{{Icon|Windows|Linux|macOS|LinuxARM}}
 
|[https://github.com/lethal-guitar/RigelEngine/releases 0.7.1]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Duke Nukem II
 
|-
 
|[https://www.popot.org/get_the_games.php?game=SDLPoP SDLPoP]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/NagyD/SDLPoP/releases 1.2.2]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Prince of Persia (1989)
 
|-
 
|[[ Super Mario 64 Port]]
 
|Multi-platform
 
|Depends on port
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Super Mario 64 (N64)
 
|-
 
|[http://www.bigorno.net/xrick/ xrick]
 
|align=left|{{Icon|Windows|Linux|GameCube|BeOS|Amiga|GP32}}
 
|[http://www.bigorno.net/xrick/download.html #021212]
 
|{{✓}} ||{{✗}} ||{{✓}}
 
|Rick Dangerous
 
|-
 
!colspan="9"|Puzzle
 
|-
 
|[https://github.com/mjfwalsh/lemmini Lemmini]
 
|align=left|{{Icon|Windows|macOS}}
 
|[https://github.com/mjfwalsh/lemmini/releases 0.82]
 
|{{✗}} ||{{✗}} ||{{✓}}
 
|Lemmings
 
|-
 
!colspan="9"|Racing
 
|-
 
|[https://github.com/djyt/cannonball CannonBall]
 
|align=left|{{Icon|Windows|Linux|macOS|Pandora|LinuxARM}}
 
|[https://github.com/djyt/cannonball/wiki 0.34]
 
|{{✓}} ||{{✗}} ||{{✓}}
 
|OutRun
 
|-
 
|[https://github.com/zaps166/NFSIISE NFSIISE]
 
|align=left|{{Icon|Windows|Linux|macOS|Android}}
 
|[https://github.com/zaps166/NFSIISE/releases Git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Need for Speed II: SE
 
|-
 
|[https://github.com/jeff-1amstudios/OpenC1 OpenC1]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[http://1amstudios.com/projects/openc1/ 1.4]
 
|{{✗}} ||{{✗}} ||{{✓}}
 
|Carmageddon
 
|-
 
|OpenLGR
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/james-knippes/openlgr Git]
 
|{{✗}} ||{{✗}} ||{{✗}}
 
|Lego Racers
 
|-
 
|[https://github.com/LRFLEW/OpenMC2 OpenMC2]
 
|align=left|{{Icon|Linux|macOS}} (via [[Wine]])
 
|[https://github.com/LRFLEW/OpenMC2/releases 0.0.2]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Midnight Club II
 
|-
 
|[https://openswe1r.github.io/ OpenSWE1R]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/OpenSWE1R/openswe1r Git]
 
|{{✗}} ||{{✓}} ||{{✗}} <small>(WIP)</small>
 
|Star Wars Episode 1: Racer
 
|-
 
|[https://yethiel.gitlab.io/RVDocs/ RVGL]
 
|align=left|{{Icon|Windows|Linux|Android|LinuxARM|Pandora}}
 
|[https://rvgl.re-volt.io 21.0125a]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Re-Volt
 
|-
 
|REDriver2
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/SoapyMan/REDRIVER2 Git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Driver 2
 
|-
 
|[https://pyra-handheld.com/boards/threads/stunt-car-remake.79671/ stuntcarremake]<ref group=N>Based on Stunt Car Racer Remake for Windows</ref>
 
|align=left|{{Icon|Windows7|Linux|Pandora}}
 
|[https://repo.openpandora.org/?page=detail&app=stuntcarremake_ptitseb Build 08]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Stunt Car Racer (Amiga / AtariST)
 
|-
 
!colspan="9"|RPG
 
|-
 
|[http://arx-libertatis.org/ Arx Libertatis]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[https://github.com/arx/ArxLibertatis/releases 1.1.2-r1]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Arx Fatalis
 
|-
 
|[https://github.com/Interkarma/daggerfall-unity Daggerfall Unity]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://www.dfworkshop.net/projects/daggerfall-unity/live-builds/ Beta 0.11.4]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|The Elder Scrolls II: Daggerfall
 
|-
 
|[https://github.com/diasurgical/devilutionX DevilutionX]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD|Haiku|Switch}}
 
|[https://github.com/diasurgical/devilutionX/releases 1.2.1]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Diablo
 
|-
 
|REGoth
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/REGoth-project/REGoth-bs Git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Gothic, Gothic II
 
|-
 
|[https://makipl.github.io/OpenVIII-monogame/ OpenVIII]
 
|align=left|{{Icon|Windows|Linux}} <!-- planned: {{Icon|Android|iOS}} -->
 
|[https://github.com/MaKiPL/OpenVIII Git]
 
|{{✗}} ||{{✓}} ||{{✗}}
 
|Final Fantasy VIII
 
|-
 
|[https://opendiablo2.com/ OpenDiablo2]
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/OpenDiablo2/OpenDiablo2 Git]
 
|{{✗}} ||{{✓}} ||{{✗}}
 
|Diablo II
 
|-
 
|[https://openmw.org/ OpenMW]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://openmw.org/downloads/ 0.46.0]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|The Elder Scrolls III: Morrowind
 
|-
 
|[https://github.com/afritz1/OpenTESArena OpenTESArena]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/afritz1/OpenTESArena/releases 0.13.0]
 
|{{✗}} ||{{✓}} ||{{✗}} <small>(WIP)</small>
 
|The Elder Scrolls I: Arena
 
|-
 
!colspan="9"|RTS
 
|-
 
|[https://github.com/OpenDUNE/OpenDUNE OpenDUNE]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[https://github.com/OpenDUNE/OpenDUNE/releases 0.9]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Dune II: The Building of a Dynasty
 
|-
 
|[http://www.ta3d.org/home-en.php TA3D]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/zuzuf/TA3D/releases 0.6.0]
 
|{{✗}} ||{{✗}} ||{{~}}
 
|Total Annihilation
 
|-
 
!colspan="9"|RTT
 
|-
 
|[http://freesynd.sourceforge.net/ FreeSynd]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://sourceforge.net/projects/freesynd/ 0.7.5]
 
|{{✗}} ||{{✗}} ||{{✗}}
 
|Syndicate (1993)
 
|-
 
|[http://swars.vexillium.org/ Syndicate Wars Port]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[http://swars.vexillium.org/#download 0.3]
 
|{{✗}} ||{{✗}} ||{{✓}}
 
|Syndicate Wars
 
|-
 
!colspan="9"|TBS
 
|-
 
|[https://ctp2.darkdust.net/ civctp2]
 
|align=left|{{Icon|Windows|Linux|Pandora}} Pyra
 
|[https://github.com/civctp2/civctp2/releases 2010-04-01] <br/>([https://github.com/ptitSeb/ctp2 ctp2] for Linux/Pandora/Pyra])
 
|{{✗}} ||{{~}} ||{{✓}}
 
|Call to Power II
 
|-
 
|[http://www.civone.org/ CivOne]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/SWY1985/CivOne Git]
 
|{{✗}} ||{{✓}} ||{{✗}} <small>(WIP)</small>
 
|Sid Meier's Civilization
 
|-
 
|[https://openxcom.org/ OpenXcom]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://openxcom.org/git-builds/ Git]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|UFO: Enemy Unknown (X-Com: UFO Defense), X-COM: Terror From the Deep
 
|-
 
!colspan="9"|Sandbox
 
|-
 
|[https://openrw.org/ OpenRW]
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[https://github.com/rwengine/openrw Git]
 
|{{✗}} ||{{✓}} ||{{~}}
 
|Grand Theft Auto III
 
|-
 
|re3<br/>reVC
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/GTAmodding/re3 re3] <br/>[https://github.com/GTAmodding/re3/tree/miami/ reVC]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Grand Theft Auto III, Grand Theft Auto: Vice City
 
|-
 
|[https://github.com/GTA-ASM/SanAndreasUnity San Andreas Unity]
 
|align=left|{{Icon|Windows|Linux|macOS|Android}}
 
|[https://github.com/GTA-ASM/SanAndreasUnity/releases 3.5]
 
|{{✗}} ||{{✓}} ||{{~}}
 
|Grand Theft Auto: San Andreas
 
|-
 
!colspan="9"|Shoot 'em up
 
|-
 
|[https://github.com/opentyrian/opentyrian OpenTyrian]
 
|align=left|{{Icon|Windows|Linux|Android}}
 
|[https://github.com/opentyrian/opentyrian/releases 2.1.20130907]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Tyrian
 
|-
 
!colspan="9"|Sim - City-building
 
|-
 
|[https://bitbucket.org/dalerank/caesaria/wiki/Home CaesarIA]
 
|align=left|{{Icon|Windows|Linux|macOS|Android|Haiku}}
 
|[https://sourceforge.net/projects/opencaesar3/files/ 0.5] (2016)
 
|{{✗}} ||{{✗}} ||{{✗}}
 
|Caesar III
 
|-
 
|[https://github.com/bvschaik/julius Julius]<br />[https://github.com/Keriew/augustus Augustus] <small>(Gameplay changes)</small>
 
|align=left|{{Icon|Windows|Linux|macOS|Vita|Switch}}
 
|[https://github.com/bvschaik/julius/releases 1.6]<br />[https://github.com/Keriew/augustus/releases 3.0.1]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Caesar III
 
|-
 
!colspan="9"|Sim - Construction/Management
 
|-
 
|[http://corsixth.com/ CorsixTH]
 
|align=left|{{Icon|Windows|Linux|macOS|BSD}}
 
|[https://github.com/CorsixTH/CorsixTH/releases 0.65]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Theme Hospital
 
|-
 
|[https://www.reddit.com/r/locomotion/ OpenLoco]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/OpenRCT2/OpenLoco/releases 21.05]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Chris Sawyer's Locomotion
 
|-
 
|[https://openrct2.org/ OpenRCT2]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/OpenRCT2/OpenRCT2/releases 0.3.3]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|RollerCoaster Tycoon 2
 
|-
 
|[https://www.openttd.org/en/ OpenTTD]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/OpenTTD/OpenTTD/releases 1.11.2]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Transport Tycoon Deluxe
 
|-
 
!colspan="9"|Sim - Flight Combat
 
|-
 
|[https://github.com/jtrfp/terminal-recall terminal-recall]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/jtrfp/terminal-recall Git] <br/>[https://sourceforge.net/projects/terminal-recall/files/nightly-builds/ Nightly Builds]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Terminal Volocity, Fury3
 
|-
 
!colspan="9"|TPS
 
|-
 
|[https://github.com/fgsfdsfgs/max_vita/ max_vita]
 
|align=left|{{Icon|Vita}}
 
|[https://github.com/fgsfdsfgs/max_vita/releases release 4]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|Max Payne
 
|-
 
!colspan="9"|Visual novel
 
|-
 
|[https://github.com/CommitteeOfZero/nitrosharp NitroSharp]
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/CommitteeOfZero/nitrosharp/releases Git]
 
|{{✗}} ||{{✓}} ||{{~}} <small>(WIP)</small>
 
|ChäoS;HEAd NoAH
 
|}
 
  
==Notes==
+
Out of the 456 tested titles, 37 (7.96%) are fully playable, 92 (19.78%) are playable but need a full playthrough to test, 47 (10.11%) are mostly playable, 161 (34.62%) crash in the intro or early in-game, 127 (27.31%) are unplayable and 1 (0.22%) is unlikely to be supported. For example:
<references group=N />
+
* Punch-Out!!! is unlikely to be supported due to using mapper 9/MMC2, due to difficulties in implementing mid-scanline memory bank changes when drawing characters FE or FD, or sprites, the hardest to implement. This is not as problematic with the background, as the window can be used to draw and switch the characters.
 +
* The graphics in Super Mario Bros. 2 displayed incorrectly and the American version reset after hitting a Shy Guy until v1.4. Some time before the [https://www.youtube.com/watch?v=TthFh27Mx5k Sharopolis interview] on July 10, 2021, the latter issue was reverse engineered and figured out, also fixing many other games that mistakenly reset.
 +
* Elite is being used as a model to "aggressively" optimize the EXE in AOT compilation, making emulation run at the same speed, or faster if possible. The game runs slowly with flicker and does not support shooting as of v1.3.
  
==External links==
+
Additionally, one fully playable title, Battle City, was mostly playable from v1.1 until v1.3, when it hung after the game over screen with visual glitches in [[Mesen]].
* [https://osgameclones.com/ Open Source Game Clones] (Likely the best and most complete list.)
 
* [https://github.com/leereilly/games Games on GitHub] by Lee Reilly ([https://github.com/leereilly/games/blob/master/README.md Master list] in wider view. This list from leereilly contains Table of Contents and categories with highlighted links to Git repos.)
 
* [https://trilarion.github.io/opensourcegames/ Open Source Games on GitHub] by Trilarion ([https://github.com/Trilarion/opensourcegames/blob/master/entries/tocs/_games.md#Games Master list]. As good as OSGC site above & frighteningly far larger list than leereilly's Git list. Over [https://github.com/Trilarion/opensourcegames/blob/master/README.md 1200 game entries]!)
 
* [https://en.wikipedia.org/wiki/Game_engine_recreation#Methods Game engine recreation] on Wikipedia (Has links to lists of: 1) commercial video games with source code; 2) source ports; and 3) game engine recreations.)
 
* [https://en.wikipedia.org/wiki/List_of_open-source_video_games List of open-source video games] on Wikipedia (Not very complete, and the different categories are somewhat confusing.)
 
* [https://libregamewiki.org/Main_Page LibreGameWiki] (Small learning curve applies for navigating around the wiki. Tends to focus more on indigenous open-source engines.)
 
* [https://directory.fsf.org/wiki/Category/Game Game category of the Free software directory] (Wiki with fairly basic content. Tends to focus more on indigenous open-source engines.)
 
  
:<u>Curated Lists:</u>
+
Others run with minor glitches or require certain options, such as NMI at vblank or stack native return, to be disabled. Overall, at least 50% of games are expected to run in the future. The official compatibility list is available [https://docs.google.com/spreadsheets/d/1xKZIyNz1DSI3ZBdMfaTEaa_9b6IEABx-ZPwOb6XqcLQ/edit#gid=253005073 here].
:* [https://thingsiplay.game.blog/2020/03/13/open-source-drm-free-games/ Tuncay  D.'s recommendations for OS, DRM-free games] (thingsiplay.game.blog. Mar 13, 2020. Not for game recreations. Some selections have similarities to old commercial games.)
 
:* [https://thingsiplay.game.blog/2020/05/19/open-source-and-alike-games/ Tuncay  D.'s recommendations for OS & alike games] (thingsiplay.game.blog. May 19, 2020. Focused on game recreations and engines similar to other games.)
 
  
'''News:'''
+
==See also==
* [https://www.gamingonlinux.com/articles/category/Game_Engine GamingOnLinux.com] (For the latest news on releases and updates of game recreations and source ports that work on Linux)
+
* [[NeMul]]
* [https://www.reddit.com/r/opensourcegames/ Reddit feed] (Aggregation quality is a little bit spotty. You have to wade through the news posts a bit for the relevant software.)
+
* [https://www.youtube.com/watch?v=zUSTG--CkSA&t=1s Project Nested -- Play NES games on the SNES!]
* [https://www.reddit.com/r/pcgaming/comments/hiuizr/list_of_open_source_games_list_of_open_source/ List of Open Source Games on Reddit] (Thread by u/AMD_CEO. Wed Jul 1, 2020. Had added recommendations to links also seen above.)
 
  
 +
{{Nes}}
  
[[Category:Game engine recreations]]
+
[[Category:Emulators]]
[[Category:Not really emulators]]
+
[[Category:Consoles' emulators]]
 +
[[Category:Home consoles' emulators]]
 +
[[Category:Nintendo Entertainment System emulators]]
 +
[[Category:Super Nintendo emulation software]]

Revision as of 08:36, 27 September 2021

Project Nested
Developer(s) Myself086 (Laurent Courville)
Latest version 1.4.2
Active Yes
Platform(s) Super Famicom (SNES)
Emulates NES
Website GitHub page
Programmed in 65C816 assembly, C#
License MIT License
Source code GitHub

Project Nested is an open-source Famicom (NES) emulator for the Super Famicom (SNES) written 3/4 in 65C816 assembly and 1/4 C#.

Download

Super Nintendo Official releases

History

The project began in 2015 as a NES emulator on PC. The emulator was running at full speed, and development was going "pretty well", but was not considered challenging, so it was decided to move it to the SNES. After three years of casual development and thinking about how to achieve 100% performance (otherwise it would have been considered pointless) until summer 2018, the emulator began official development.

As of v1.3, the model has been improved since, but not by much. The speed was calculated by multiplying the average amount of times each instruction executed each frame and the overhead. However, the maths were 5 percent off on first implementation. Most implementations were made after approximately one month.

Overview

The emulator 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.

Emulation works by converting NES ROMs into SNES ROMs using a JIT (Just-In-Time) and AOT (Ahead-of-Time) compiler (with various options) for Windows, allowing them to run on SNES hardware.

Save files are created after the software title runs for a while. These can then be added to the ROM, often improving performance, vastly with some titles, and not much with others.

The following are required:

  • Up to 8MB of fast HiROM (slow HiROM support planned)
  • 8KB to 256KB of SRAM (at least 16KB is required to create feedback for the exe)
  • A battery if required by the software title

Compatibility

Emulation occurs at up to 60FPS (frames per second) with audio support, but occasional minor slowdown may occur. Software titles that use mappers 0-4 and 7 are playable, with mappers 1 and 4 having minor glitches, which may reduce compatibility levels with titles that use them, mappers 5, 6, 8, 11, 12, 16, 18, 21-26, 32-34, 36-38, 40, 42 and 66 unplayable, mappers 9 and 10 unlikely to be supported due to it being declared impossible to accurately emulate CHR bank switching, and 14 and 17 due to being "copier mappers", and the rest, up to 255, being unknown. Additionally, iNES 2.0 is not supported.

Out of the 456 tested titles, 37 (7.96%) are fully playable, 92 (19.78%) are playable but need a full playthrough to test, 47 (10.11%) are mostly playable, 161 (34.62%) crash in the intro or early in-game, 127 (27.31%) are unplayable and 1 (0.22%) is unlikely to be supported. For example:

  • Punch-Out!!! is unlikely to be supported due to using mapper 9/MMC2, due to difficulties in implementing mid-scanline memory bank changes when drawing characters FE or FD, or sprites, the hardest to implement. This is not as problematic with the background, as the window can be used to draw and switch the characters.
  • The graphics in Super Mario Bros. 2 displayed incorrectly and the American version reset after hitting a Shy Guy until v1.4. Some time before the Sharopolis interview on July 10, 2021, the latter issue was reverse engineered and figured out, also fixing many other games that mistakenly reset.
  • Elite is being used as a model to "aggressively" optimize the EXE in AOT compilation, making emulation run at the same speed, or faster if possible. The game runs slowly with flicker and does not support shooting as of v1.3.

Additionally, one fully playable title, Battle City, was mostly playable from v1.1 until v1.3, when it hung after the game over screen with visual glitches in Mesen.

Others run with minor glitches or require certain options, such as NMI at vblank or stack native return, to be disabled. Overall, at least 50% of games are expected to run in the future. The official compatibility list is available here.

See also