Difference between revisions of "Arcade emulators"

From Emulation General Wiki
Jump to navigation Jump to search
m
(Emulators: Flycast's arcade compat is spotty and definitely not as good as Demul's. Please study projects' compat lists & issues carefully.)
(23 intermediate revisions by 15 users not shown)
Line 15: Line 15:
 
{{Main|http://www.system16.com/base.php System16's arcade museum}} ''(See more examples here)''
 
{{Main|http://www.system16.com/base.php System16's arcade museum}} ''(See more examples here)''
 
* '''[[Nintendo Entertainment System emulators|NES]]:''' Nintendo PlayChoice-10 ([[FCEUX]], [[Mesen]]), Nintendo VS System
 
* '''[[Nintendo Entertainment System emulators|NES]]:''' Nintendo PlayChoice-10 ([[FCEUX]], [[Mesen]]), Nintendo VS System
 +
* '''[[Master System emulators|SMS]]:''' SEGA System E
 +
* '''[[Sega Genesis emulators|Genesis]]:''' SEGA System C/C-2
 
* '''[[Super Nintendo emulators|SNES]]:''' Nintendo Super System
 
* '''[[Super Nintendo emulators|SNES]]:''' Nintendo Super System
 
* '''[[Nintendo 64 emulators|N64]]:''' Aleck-64 ([[Project64]] + modded images)
 
* '''[[Nintendo 64 emulators|N64]]:''' Aleck-64 ([[Project64]] + modded images)
 +
* '''[[Panasonic M2|3DO M2]]:''' Konami M2
 
* '''[[GameCube emulators|GameCube]]:''' Triforce ([[Dolphin]] fork)
 
* '''[[GameCube emulators|GameCube]]:''' Triforce ([[Dolphin]] fork)
 
* '''[[Sega Saturn emulators|Saturn]]:''' STV ([[SSF]])
 
* '''[[Sega Saturn emulators|Saturn]]:''' STV ([[SSF]])
 
* '''[[Sega Dreamcast emulators|Dreamcast]]:''' Atomiswave ([[DEmul]]), Naomi 1/2 ([[DEmul]])
 
* '''[[Sega Dreamcast emulators|Dreamcast]]:''' Atomiswave ([[DEmul]]), Naomi 1/2 ([[DEmul]])
 
* '''[[Xbox emulators|Xbox]]:''' Chihiro ([[Cxbx-Reloaded]], [[XQEMU]] <small>(WIP)</small>)
 
* '''[[Xbox emulators|Xbox]]:''' Chihiro ([[Cxbx-Reloaded]], [[XQEMU]] <small>(WIP)</small>)
* '''[[PlayStation emulators|PlayStation]]:''' Konami System 573, Namco System 10/11/12, Sony ZN-1/ZN-2
+
* '''[[PlayStation emulators|PlayStation]]:''' Konami System 573, Konami Twinkle, Namco System 10/11/12 ([[ZiNc]]), Sony ZN-1/ZN-2 ([[ZiNc]])
* '''[[PlayStation 2 emulators|PlayStation 2]]:''' Namco System 246/256/Super System 256
+
* '''[[PlayStation 2 emulators|PlayStation 2]]:''' Namco System 246/256/Super System 256, Konami Python 1/2 ([[PCSX2]] fork)
 
* '''[[PlayStation 3 emulators|PlayStation 3]]:''' Namco System 357/369
 
* '''[[PlayStation 3 emulators|PlayStation 3]]:''' Namco System 357/369
 +
* '''[[PlayStation 4 emulators|PlayStation 4]]:''' Taito Dissidia Final Fantasy Arcade Hardware
  
 
===Converted PC Hardware===
 
===Converted PC Hardware===
Based on normal PC architecture with a variation of Windows 7 Embedded or Linux installed and tons of DRM and custom drivers. These can still be run on computers using the right launchers (Game loader All RH, SpiceTools, idmacx tools, TekParrot...) but most likely won't be emulated by MAME anytime soon, and not just because of their policies on what hardware is too recently commercialized to cover.
+
Based on normal PC architecture with a variation of Windows 7 Embedded or Linux installed and tons of DRM and custom drivers. These can still be run on computers using the right launchers (Game loader All RH, SpiceTools, idmacx tools, TeknoParrot...) but most of them likely won't be emulated by MAME anytime soon, and not just because of their policies on what hardware is too recently commercialized to cover.
 
{{Main|http://www.system16.com/base.php#11 System16's arcade museum}} (See more examples here)
 
{{Main|http://www.system16.com/base.php#11 System16's arcade museum}} (See more examples here)
 
 
* '''Windows XP Embedded:''' [[wikipedia:Taito_Type_X#Taito_Type_X.2FX.2B|Taito Type X/X+]], [[wikipedia:Taito_Type_X#Taito_Type_X7|Taito Type X7]], [[wikipedia:Taito_Type_X#Taito_Type_X.C2.B2|Taito Type X²]]
 
* '''Windows XP Embedded:''' [[wikipedia:Taito_Type_X#Taito_Type_X.2FX.2B|Taito Type X/X+]], [[wikipedia:Taito_Type_X#Taito_Type_X7|Taito Type X7]], [[wikipedia:Taito_Type_X#Taito_Type_X.C2.B2|Taito Type X²]]
 
* '''Windows 7 Embedded:''' [[wikipedia:Taito_Type_X#Taito_Type_X_Zero|Taito Type X Zero]], Namco System ES2 PLUS, Namco System ES3
 
* '''Windows 7 Embedded:''' [[wikipedia:Taito_Type_X#Taito_Type_X_Zero|Taito Type X Zero]], Namco System ES2 PLUS, Namco System ES3
Line 46: Line 49:
 
* '''iDmacDrv32.dll:''' Needed in Nesica games. If present, do not delete it, copy Jconfig.exe and the replacement iDmacDrv32.dll from the Jconfig package, then double-click NesicaXlive.reg to import keys to your registry, and use the game executable to run the game. If not present, copy Jconfig.exe, JVSemu.dll, and jvs_loader.exe from the Jconfig package, and use jvs_loader.exe to run the game.
 
* '''iDmacDrv32.dll:''' Needed in Nesica games. If present, do not delete it, copy Jconfig.exe and the replacement iDmacDrv32.dll from the Jconfig package, then double-click NesicaXlive.reg to import keys to your registry, and use the game executable to run the game. If not present, copy Jconfig.exe, JVSemu.dll, and jvs_loader.exe from the Jconfig package, and use jvs_loader.exe to run the game.
 
* '''Save Fixes:''' Some games can't save scores and data at all. For a bunch of machines, there are fixes (called "loaders pack") that enable that, but some machines (nesica) handle saving purely using official servers in which case there's not much (yet) to do about it.
 
* '''Save Fixes:''' Some games can't save scores and data at all. For a bunch of machines, there are fixes (called "loaders pack") that enable that, but some machines (nesica) handle saving purely using official servers in which case there's not much (yet) to do about it.
 +
* '''Unpacked exe/dll Files:''' Some games, especially SEGA games, can't be executed on regular PCs as their game logic is wrapped in dlls (htsysmnt.dll etc.) in the operating system comes with the arcade hardware. Unpacked exe/dll files unwrapped such game logic so they can be executed properly. Just drop these files to where the original exe/dll is located and execute/load these files in loaders to start the game.
 +
* '''Local Server:''' Some games, especially recent Konami and SEGA games, require network service provided by manufacture in order to save progress, unlock game contents, or even start the game itself. Local server programs (Asphyxia, Minime, Aqua, etc.) emulate such network service on the local computer which makes games bootable and network-related functionalities work. These tools have to be started before starting the game, and kept running during the game session, and game launchers have to be configured to make games communicate with them. Notice that not all functionalities (especially corner case ones such as e-cash, player camera, etc.) in every version of every game work, and some games would require extra fixes to properly communicate with the local server. Check readme files provided by developers or game scenes for more information.
 
* '''Extra Fixes:''' Varies per game. Check the readme with the game scene release.
 
* '''Extra Fixes:''' Varies per game. Check the readme with the game scene release.
  
Line 58: Line 63:
 
! scope="col"|Latest Version
 
! scope="col"|Latest Version
 
! scope="col"|# of Emulated systems
 
! scope="col"|# of Emulated systems
! scope="col"|Open-Source
 
 
! scope="col"|[[libretro|Libretro Core]]
 
! scope="col"|[[libretro|Libretro Core]]
 +
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
 
! scope="col"|Active
 
! scope="col"|Active
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
! scope="col"|[[Recommended Emulators|Recommended]]
Line 70: Line 75:
 
|[http://www.mamedev.org/release.html {{MAMEVer}}]
 
|[http://www.mamedev.org/release.html {{MAMEVer}}]
 
|Thousands of electronics<ref>http://mamedb.com/history</ref>
 
|Thousands of electronics<ref>http://mamedb.com/history</ref>
 +
|{{✓}}<ref group=N name=MAMEVer>RetroArch cores: [https://github.com/libretro/mame mame] (latest), [https://github.com/libretro/mame2016-libretro mame2016] (0.174), [https://github.com/libretro/mame2014-libretro mame2014] (0.159), [https://github.com/libretro/mame2010-libretro mame2010] (0.139), [https://github.com/libretro/mame2003-libretro mame2003] (0.78), [https://github.com/libretro/mame2000-libretro mame2000 aka mame4all] (0.37b5)</ref>
 
|{{✓}}
 
|{{✓}}
|{{✓}}<ref group=N name=MAMEVer>RetroArch cores: [https://github.com/libretro/mame mame] (latest), [https://github.com/libretro/mame2016-libretro mame2016] (0.174), [https://github.com/libretro/mame2014-libretro mame2014] (0.159), [https://github.com/libretro/mame2010-libretro mame2010] (0.139), [https://github.com/libretro/mame2003-libretro mame2003] (0.78), [https://github.com/libretro/mame2000-libretro mame2000 aka mame4all] (0.37b5)</ref>
 
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
Line 80: Line 85:
 
|Hundreds
 
|Hundreds
 
|{{✓}}
 
|{{✓}}
 +
|{{✗}}
 
|{{✓}}
 
|{{✓}}
|{{✓}}
 
|{{✓}}
 
|-
 
|[[FinalBurn Alpha]]
 
|align=left|{{Icon|Windows}}
 
|[http://www.fbalpha.com/downloads/ 0.2.97.43]
 
|Hundreds
 
|{{✓}}
 
|{{✓}}
 
|{{✗}}
 
 
|{{✓}}
 
|{{✓}}
 
|-
 
|-
 
|[[DICE]]
 
|[[DICE]]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|align=left|{{Icon|Windows|Linux|macOS}}
|[http://sourceforge.net/projects/dice/files/DICE/ 0.9]
+
|[http://sourceforge.net/projects/dice/files/DICE 0.9]
 
|20
 
|20
 +
|{{✗}}
 
|{{✓}}
 
|{{✓}}
|{{✗}}
 
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
Line 106: Line 102:
 
|[http://www.daphne-emu.com/ 1.0.12]
 
|[http://www.daphne-emu.com/ 1.0.12]
 
|1 <br /><small>([[Arcade LaserDisc emulators|LaserDisc]])</small>
 
|1 <br /><small>([[Arcade LaserDisc emulators|LaserDisc]])</small>
 +
|{{~}} <small>(WIP)</small>
 
|{{✓}}<ref group=N name=OpenDaphne>[https://github.com/DavidGriffith/daphne Open-Source DAPHNE] - new fork with an open-source frontend for 64-bit Linux.</ref>
 
|{{✓}}<ref group=N name=OpenDaphne>[https://github.com/DavidGriffith/daphne Open-Source DAPHNE] - new fork with an open-source frontend for 64-bit Linux.</ref>
|{{~}} <small>(WIP)</small>
 
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
Line 114: Line 110:
 
|align=left|{{Icon|Windows}}
 
|align=left|{{Icon|Windows}}
 
|{{TeknoVer}}
 
|{{TeknoVer}}
|7 <br /><small>(PC based)</small>
+
|20 <br /><small>(PC based)</small>
 +
|{{✗}}
 
|{{✓}}<ref group=N name=OpenParrot>[https://github.com/teknogods/OpenParrot OpenParrot] - new open-source core distinct from TeknoParrot.</ref>
 
|{{✓}}<ref group=N name=OpenParrot>[https://github.com/teknogods/OpenParrot OpenParrot] - new open-source core distinct from TeknoParrot.</ref>
|{{✗}}
 
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
Line 122: Line 118:
 
|[[ZiNc]]
 
|[[ZiNc]]
 
|align=left|{{Icon|Windows|Linux}}
 
|align=left|{{Icon|Windows|Linux}}
|[http://www.1emulation.com/forums/files/file/37-zinc/ 1.1]
+
|[http://www.1emulation.com/forums/files/file/37-zinc 1.1]
 
|3 <br /><small>(ZN-1, ZN-2, Namco System 11)</small>
 
|3 <br /><small>(ZN-1, ZN-2, Namco System 11)</small>
 
|{{✗}}
 
|{{✗}}
Line 137: Line 133:
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
 +
|-
 +
|[[FinalBurn Alpha]]
 +
|align=left|{{Icon|Windows}}
 +
|[http://www.fbalpha.com/downloads {{FinalBurnAlphaVer}}]
 +
|Hundreds
 +
|{{✓}}
 +
|{{✗}}
 +
|{{✗}}
 +
|{{~}}
 
|-
 
|-
 
|[[RAINE]]
 
|[[RAINE]]
Line 142: Line 147:
 
|[http://raine.1emulation.com/download/latest.html {{RAINEVer}}]
 
|[http://raine.1emulation.com/download/latest.html {{RAINEVer}}]
 
|1063
 
|1063
|{{✓}}
 
 
|{{✗}}
 
|{{✗}}
 +
|?
 
|{{✓}}
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
 
|-
 
|-
 
|[[Kawaks]]
 
|[[Kawaks]]
 
|align=left|{{Icon|Windows}}
 
|align=left|{{Icon|Windows}}
|[http://cps2shock.emu-france.info/download.html 1.65]
+
|[http://cps2shock.emu-france.info/download.html {{KawaksVer}}]
 
|3 <br /><small>([[Neo Geo emulators|Neo Geo]], CPS1, CPS2)</small>
 
|3 <br /><small>([[Neo Geo emulators|Neo Geo]], CPS1, CPS2)</small>
 
|{{✗}}
 
|{{✗}}
Line 170: Line 174:
 
|[https://vivanonno.vg-network.com/ 22.0.3]
 
|[https://vivanonno.vg-network.com/ 22.0.3]
 
|1 <br /><small>(Namco System 22)</small>
 
|1 <br /><small>(Namco System 22)</small>
 +
|{{✗}}
 +
|{{✗}}
 +
|{{✗}}
 +
|{{✗}}
 +
|-
 +
|Callus95
 +
|align=left|{{Icon|Windows}}
 +
|[http://caesar.logiqx.com/php/emulator.php?id=callus95 0.42]<small>(official)</small><br />[http://cps2shock.emu-france.info/cls95p/ 0.42 Patch 2.4]<small>(unoficial)</small>
 +
|1 <br /><small>(Capcom System 1)</small>
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
Line 190: Line 203:
 
|[http://supermodel3.com/Download.html 0.2a]<br />[http://www.emucr.com/search/label/Supermodel SVN]
 
|[http://supermodel3.com/Download.html 0.2a]<br />[http://www.emucr.com/search/label/Supermodel SVN]
 
|1 <br /><small>([[Sega Model 3]])</small>
 
|1 <br /><small>([[Sega Model 3]])</small>
 +
|{{~}} <small>(WIP)</small>
 
|{{✓}}
 
|{{✓}}
|{{~}} <small>(WIP)</small>
 
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
Line 201: Line 214:
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 +
|{{✗}}
 +
|{{✓}}
 +
|-
 +
|[[Flycast]]
 +
|align=left|{{Icon|Windows|Linux|macOS}}
 +
|[https://flyinghead.github.io/flycast-builds/ CI Builds]
 +
|2 <br /><small>([[Sega NAOMI and variants|Sega NAOMI 1 and Atomiswave]])</small>
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 +
|{{✓}}
 +
|{{~}}
 
|-
 
|-
 
|[[Yabause|Kronos]]
 
|[[Yabause|Kronos]]
Line 230: Line 252:
 
! scope="col"|ROM Set
 
! scope="col"|ROM Set
 
! scope="col"|[[libretro|Libretro Core]]
 
! scope="col"|[[libretro|Libretro Core]]
 +
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
 
! scope="col"|Active
 
! scope="col"|Active
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
|-
 
|-
!colspan="8"|Mobile / ARM
+
!colspan="9"|Mobile / ARM
 
|-
 
|-
 
|[[MAME]]
 
|[[MAME]]
Line 241: Line 264:
 
|Depends on core
 
|Depends on core
 
|{{✓}}<ref group=N name=MAMEVer />
 
|{{✓}}<ref group=N name=MAMEVer />
 +
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
Line 250: Line 274:
 
|MAME 0.139u1
 
|MAME 0.139u1
 
|{{✓}} <br /><small>(mame2010)</small>
 
|{{✓}} <br /><small>(mame2010)</small>
 +
|?
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
Line 259: Line 284:
 
|MAME 0.37b5
 
|MAME 0.37b5
 
|{{✓}} <br /><small>(mame2000)</small>
 
|{{✓}} <br /><small>(mame2000)</small>
 +
|?
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
Line 268: Line 294:
 
|FBA 0.2.97.42 <br /><small>(based on MAME 0.187)</small>
 
|FBA 0.2.97.42 <br /><small>(based on MAME 0.187)</small>
 
|{{✓}}
 
|{{✓}}
 +
|{{✗}}
 
|{{✓}} <small>([[libretro]])</small>
 
|{{✓}} <small>([[libretro]])</small>
 
|{{✓}}
 
|{{✓}}
 
|-
 
|-
!colspan="8"|Consoles
+
!colspan="9"|Consoles
 
|-
 
|-
 
|[[Virtual Console]]
 
|[[Virtual Console]]
Line 278: Line 305:
 
|Various<ref group=N>Includes games from publishers such as Namco, Sega, Tecmo and Capcom, also Neo Geo</ref>
 
|Various<ref group=N>Includes games from publishers such as Namco, Sega, Tecmo and Capcom, also Neo Geo</ref>
 
|?
 
|?
 +
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
Line 288: Line 316:
 
|MAME 0.152
 
|MAME 0.152
 
|{{✗}}
 
|{{✗}}
 +
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
Line 297: Line 326:
 
|MAME 0.120
 
|MAME 0.120
 
|{{✗}}
 
|{{✗}}
 +
|?
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
Line 306: Line 336:
 
|MAME 0.141
 
|MAME 0.141
 
|{{✗}}
 
|{{✗}}
 +
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
Line 316: Line 347:
 
;[[MAME]]:Very extensive in scope, with the majority of arcade system boards from the 1970's, 1980's and early 1990's supported. Do not expect support for more recent boards, such as Atomiswave. MAME focuses on [[Emulation Accuracy|accuracy]] and preservation, meaning usability comes second for the end user. Only the most up to date ROM dumps will work in the latest MAME.
 
;[[MAME]]:Very extensive in scope, with the majority of arcade system boards from the 1970's, 1980's and early 1990's supported. Do not expect support for more recent boards, such as Atomiswave. MAME focuses on [[Emulation Accuracy|accuracy]] and preservation, meaning usability comes second for the end user. Only the most up to date ROM dumps will work in the latest MAME.
  
;[[FinalBurn Alpha]]:Supports many boards, such as [[Neo Geo emulators|Neo Geo]], Capcom CPS1-3, and others. It is very good for the boards it supports. The Neo Geo X system, in fact, uses FBA. It offers much better speeds on lower-end hardware than MAME and has been ported to many different devices, such as [[PlayStation 3 emulators|PlayStation 3]], [[Xbox emulators|Xbox]], [[Xbox 360 emulators|Xbox 360]], [[Sega Saturn emulators|Sega Saturn]], [[Android emulators|Android]], [[Wii emulators|Wii]], Dingoo, and many others.
+
;[[FinalBurn Alpha]]:Supports many boards, such as [[Neo Geo emulators|Neo Geo]], Capcom CPS1-3, and others. It is very good for the boards it supports. The Neo Geo X system, in fact, uses FBA. It offers much better speeds on lower-end hardware than MAME and has been ported to many different devices, such as [[PlayStation 3 emulators|PlayStation 3]], [[Xbox emulators|Xbox]], [[Xbox 360 emulators|Xbox 360]], [[Sega Saturn emulators|Sega Saturn]], [[Android emulators|Android]], [[Wii emulators|Wii]], Dingoo, and many others. Development is inactive, as many of the developers have moved on to [[FinalBurn Neo]].  
  
;[[DICE]]:Emulates old arcade machines from the early 1970's <!--(including Coleco Telstar Arcade)--> at a very high level of accuracy. Since these machines had no CPU, the emulator instead emulates discrete logic components in the circuit board. This method is very system-intensive, and getting full speed requires at least a mid-range gaming PC along with the 64-bit version of the emulator.
+
;[[DICE]]:Emulates old arcade machines from the early 1970's <!--(including Coleco Telstar Arcade)--> at a very high level of accuracy. Since these machines had no CPU, the emulator instead emulates discrete logic components in the circuit board. This method is very system-intensive, and getting full speed requires at least a mid-range gaming PC along with the 64-bit version of the emulator. Due to incompatibility with the newest Windows, the program will need to be run in compatibility mode or else it would crash when attempting to run a game.
  
 
;[[Supermodel]]:Emulates [[Sega Model 3|Sega's Model 3]] arcade platform focusing on accuracy. Presently, Supermodel is in a very early "alpha" stage of development, meaning it lacks many planned features. It does not yet have a user-friendly graphical interface, and all CPUs are emulated using straightforward (and slow) interpretation rather than fast just-in-time translation. Game compatibility is quite good. It has an experimental multi-player network build.
 
;[[Supermodel]]:Emulates [[Sega Model 3|Sega's Model 3]] arcade platform focusing on accuracy. Presently, Supermodel is in a very early "alpha" stage of development, meaning it lacks many planned features. It does not yet have a user-friendly graphical interface, and all CPUs are emulated using straightforward (and slow) interpretation rather than fast just-in-time translation. Game compatibility is quite good. It has an experimental multi-player network build.
Line 329: Line 360:
 
<references/>
 
<references/>
  
[[Category:Consoles]]
+
[[Category:Arcade|*]]
 
[[Category:Arcade emulators|*]]
 
[[Category:Arcade emulators|*]]

Revision as of 20:34, 14 April 2022

Example of a Ms. Pac-Man arcade cabinet.

Arcades were venues in which many games were played at, often containing thousands of games. Arcades often got their revenue from players who paid to play games. Most arcade emulators focus on emulating many systems in one program, the scope of which varies between projects.

Machines

Machines often varied by their design and, unlike consoles, were often tailored to just one game. Games were designed to eat as many quarters as possible, which is emulated with the "Coin" key. Some games have a service mode (mapped to F2 in MAME) with menus meant for the arcade owner to set dipswitches for difficulty, censorship, language, and most importantly a "Free Play" mode that allows players to continue as many as they want without requesting more coins. Sometimes, similar menus meant for developers (labeled debug or test usually, sometimes requiring a developer BIOS like with some Neo Geo games) are left in the game too.

Three main types of arcade machines can be distinguished:

Arcade Original Hardware

Hardware made specifically for the arcade to provide for graphics and performance unseen on home consoles. Extremely common in the golden age of arcades but became much less frequent as companies used modified existing hardware instead to save on R&D costs and easier cross-platform development, or tried to differentiate between the home and arcade experience with control scheme gimmicks instead.

MAME's purpose is to cover most of these. Older arcades as well as select popular arcade machines, the Neo Geo and Capcom's CPS series, in particular, received their own standalone emulators. Sometimes, they received their own console versions but those are mostly ports, not emulation, with very few exceptions.

Converted Home Console Hardware

Those arcade boards share most of the hardware specifications with existing home consoles, with the addition of a coin slot and occasionally DRM and some changes. While MAME supports most of those, standalone emulators for the base home console are more mature and often (but not always) support the arcade variants.

Main article: [System16's arcade museum] (See more examples here)

Converted PC Hardware

Based on normal PC architecture with a variation of Windows 7 Embedded or Linux installed and tons of DRM and custom drivers. These can still be run on computers using the right launchers (Game loader All RH, SpiceTools, idmacx tools, TeknoParrot...) but most of them likely won't be emulated by MAME anytime soon, and not just because of their policies on what hardware is too recently commercialized to cover.

Main article: [System16's arcade museum] (See more examples here)

Emulation

The games first need to run on an operating system equivalent to that of the machine, which may imply Wine use on Linux or having to upgrade to 64-bit editions. Some GPUs or wrappers may be required. Additionally, the following need to be installed:

  • Microsoft Visual C++ Runtimes: A one-in-all link for all editions from 2005 to 2015 may be found here.
  • Microsoft .NET Frameworks: Any version from 1.0 to 4.5 may be required, the newer, the better.
  • Microsoft DirectX 9.0: Offline installer here.
  • PC Video Codecs: Grabbing the standard K Lite Codec pack from here is recommended.

Remember to backup data from the downloaded scene release before trying to fix it to run.

  • Launcher: The game needs this to work at all. There are many: Jconfig, TeknoParrot... and each game requires a specific launcher. If you got the dump from elsewhere, not in a clean state that doesn't work, it may be because of conflicting launchers and you will have to delete all of them (typically Detoured.dll, Game loader Rh.exe, Typex_config.exe, Typex_loader.exe, TTXconfig 2.0, TTX-moniter.dll...)
  • iDmacDrv32.dll: Needed in Nesica games. If present, do not delete it, copy Jconfig.exe and the replacement iDmacDrv32.dll from the Jconfig package, then double-click NesicaXlive.reg to import keys to your registry, and use the game executable to run the game. If not present, copy Jconfig.exe, JVSemu.dll, and jvs_loader.exe from the Jconfig package, and use jvs_loader.exe to run the game.
  • Save Fixes: Some games can't save scores and data at all. For a bunch of machines, there are fixes (called "loaders pack") that enable that, but some machines (nesica) handle saving purely using official servers in which case there's not much (yet) to do about it.
  • Unpacked exe/dll Files: Some games, especially SEGA games, can't be executed on regular PCs as their game logic is wrapped in dlls (htsysmnt.dll etc.) in the operating system comes with the arcade hardware. Unpacked exe/dll files unwrapped such game logic so they can be executed properly. Just drop these files to where the original exe/dll is located and execute/load these files in loaders to start the game.
  • Local Server: Some games, especially recent Konami and SEGA games, require network service provided by manufacture in order to save progress, unlock game contents, or even start the game itself. Local server programs (Asphyxia, Minime, Aqua, etc.) emulate such network service on the local computer which makes games bootable and network-related functionalities work. These tools have to be started before starting the game, and kept running during the game session, and game launchers have to be configured to make games communicate with them. Notice that not all functionalities (especially corner case ones such as e-cash, player camera, etc.) in every version of every game work, and some games would require extra fixes to properly communicate with the local server. Check readme files provided by developers or game scenes for more information.
  • Extra Fixes: Varies per game. Check the readme with the game scene release.

You can set your controls in Jconfig.exe, and it's recommended to disable Dsound and D3D Wrapper.

Some games can have DirectX related problems. For some, deleting the existing d3d9.dll or opengl.dll files can help. For others, they expect the older D3D8 codec and have bugs (crashes, uneven speed) that can be fixed with Reshade's d3d8to9 plugin.

Emulators

Name Platform(s) Latest Version # of Emulated systems Libretro Core FLOSS Active Recommended
PC / x86
MAME Windows Linux macOS FreeBSD 0.264 Thousands of electronics[1] [N 1]
FinalBurn Neo Windows GitHub Hundreds
DICE Windows Linux macOS 0.9 20
DAPHNE Windows Linux macOS 1.0.12 1
(LaserDisc)
~ (WIP) [N 2]
TeknoParrot Windows 1.0.0.140 20
(PC based)
[N 3]
ZiNc Windows Linux 1.1 3
(ZN-1, ZN-2, Namco System 11)
Calice Windows 0.6.4 6
(Capcom, Sega, SNK, Gaelco)
FinalBurn Alpha Windows 0.2.97.43 Hundreds ~
RAINE Windows Linux macOS 0.96.7 1063 ?
Kawaks Windows 1.65 3
(Neo Geo, CPS1, CPS2)
CPS3 Emulator Windows 1.0a 1
(CPS3)
VivaNonno Windows 22.0.3 1
(Namco System 22)
Callus95 Windows 0.42(official)
0.42 Patch 2.4(unoficial)
1
(Capcom System 1)
Sega-only
Model 2 Emulator Windows 1.1a 1
(Sega Model 2)
Supermodel Windows Linux macOS 0.2a
SVN
1
(Sega Model 3)
~ (WIP)
DEmul Windows 0.7 Build 180428 6
(Sega NAOMI and variants)
Flycast Windows Linux macOS CI Builds 2
(Sega NAOMI 1 and Atomiswave)
~
Kronos Windows Linux 2.6.1 1
(STV)
~
Nova Windows 0.6 1
(STV)
Name Platform(s) Latest Version # of Emulated systems ROM Set Libretro Core FLOSS Active Recommended
Mobile / ARM
MAME Android 0.264 [N 4] Countless Depends on core [N 1]
MAME4droid (0.139u1) Android 1.12 Countless MAME 0.139u1
(mame2010)
?
MAME4droid (0.37b5) Android 1.5.3 Countless MAME 0.37b5
(mame2000)
?
FinalBurn Alpha Android SVN Hundreds FBA 0.2.97.42
(based on MAME 0.187)
(libretro)
Consoles
Virtual Console Wii ? Various[N 5] ?
NJEMU PSP 2.3.5 4
(CPS1, CPS2, Neo Geo, Neo Geo CD)
MAME 0.152
Unofficial Mod PSP 2.3.1[N 6] 4
(CPS1, CPS2, Neo Geo, Neo Geo CD)
MAME 0.120 ?
FBA4PSP PSP v12.4.0 1
(CPS1)
MAME 0.141
  1. 1.0 1.1 RetroArch cores: mame (latest), mame2016 (0.174), mame2014 (0.159), mame2010 (0.139), mame2003 (0.78), mame2000 aka mame4all (0.37b5)
  2. Open-Source DAPHNE - new fork with an open-source frontend for 64-bit Linux.
  3. OpenParrot - new open-source core distinct from TeknoParrot.
  4. Only available on mobile as a libretro core (e.g. RetroArch).
  5. Includes games from publishers such as Namco, Sega, Tecmo and Capcom, also Neo Geo
  6. Generate cache with included romcnv utility.

Comparisons

MAME
Very extensive in scope, with the majority of arcade system boards from the 1970's, 1980's and early 1990's supported. Do not expect support for more recent boards, such as Atomiswave. MAME focuses on accuracy and preservation, meaning usability comes second for the end user. Only the most up to date ROM dumps will work in the latest MAME.
FinalBurn Alpha
Supports many boards, such as Neo Geo, Capcom CPS1-3, and others. It is very good for the boards it supports. The Neo Geo X system, in fact, uses FBA. It offers much better speeds on lower-end hardware than MAME and has been ported to many different devices, such as PlayStation 3, Xbox, Xbox 360, Sega Saturn, Android, Wii, Dingoo, and many others. Development is inactive, as many of the developers have moved on to FinalBurn Neo.
DICE
Emulates old arcade machines from the early 1970's at a very high level of accuracy. Since these machines had no CPU, the emulator instead emulates discrete logic components in the circuit board. This method is very system-intensive, and getting full speed requires at least a mid-range gaming PC along with the 64-bit version of the emulator. Due to incompatibility with the newest Windows, the program will need to be run in compatibility mode or else it would crash when attempting to run a game.
Supermodel
Emulates Sega's Model 3 arcade platform focusing on accuracy. Presently, Supermodel is in a very early "alpha" stage of development, meaning it lacks many planned features. It does not yet have a user-friendly graphical interface, and all CPUs are emulated using straightforward (and slow) interpretation rather than fast just-in-time translation. Game compatibility is quite good. It has an experimental multi-player network build.
Model 2 Emulator
Emulates, as per its name, Sega's Model 2 arcade platform with a focus on speed over accuracy. Despite this, however, it still manages to play games for that hardware with far higher accuracy than MAME currently can.
Virtual Console
Emulates Sega, Namco, Capcom and Tecmo arcade games, in addition to Neo Geo. It is a viable method for official emulation, but forces you to play like you would on a real arcade machine.

References