MAME vs RetroArch
MAME
mamedev.orgRetroArch
retroarch.comSide by side
| Figure | MAME | RetroArch |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | — | Yes |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| iOS | — | Yes |
| Android | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · TurboGrafx-16 Emulators | 8.6 (#4) | 8.4 (#6) |
| Spec score · Multi-System Emulators | 8.5 (#7) | 8.3 (#14) |
| Spec score · Game Gear Emulators | 8.5 (#5) | 8.3 (#10) |
| Spec score · Sega Genesis Emulators | 8.4 (#5) | 8.3 (#7) |
| Spec score · Sega CD Emulators | 8.5 (#5) | 8.3 (#8) |
| License | The project as a whole is distributed under GPL-2.0, and the site says over 90% of its files, including core files, are under BSD-3-Clause. | RetroArch uses GPL version 3, while the libretro API uses an MIT license. |
| Platforms | The current source can be compiled for Windows, Linux, FreeBSD and macOS; official binary packages are designed for Windows. | The official downloads page lists Windows, macOS, Linux, Android, iOS, web browsers and various game consoles. |
| Purpose | MAME is a multi-purpose emulation framework intended to preserve software history by documenting hardware and how it functions. | RetroArch is a frontend for emulators, game engines and media players that runs classic games through a graphical interface with unified settings. |
| Support | Users can report information or code through the MAME GitHub page, MAME Forums, or the project contact page. | The FAQ directs users to the forums, Discord and documentation for help. |
Plans
In their own words
MAME
MAME is a free emulation framework intended to preserve software history by documenting and reproducing the inner components of arcade machines, computers, consoles, calculators, and other electronic amusement systems. It can emulate over 32,000 individual systems from the last five decades. Alongside emulation, it includes an interactive low-level debugger for investigating software behavior, diagnosing emulation issues, and developing software for vintage systems. Its Lua interface can inspect device state, access CPU registers, read and write memory, and draw overlays, though the API may change without notice. Plugins support uses such as external-program communication and alternate interfaces; included examples are Discord Presence and a GDB Stub. MAME can save and load states, record inputs for playback, and capture screenshots or video. It is available for Android, Linux, macOS, and Windows; official Windows binaries require Windows 10 or later. BIOS dumps and copyrighted software are generally not included. The project is distributed under GPL-2.0 overall, while more than 90% of files, including core files, are under BSD-3-Clause.
RetroArch
RetroArch is a frontend for emulators, game engines, and media players, bringing them under a unified settings system. The RetroArch/Libretro project includes more than 200 cores across those categories. Its menu can group scanned games by system and display thumbnails and animated backgrounds. Common game controllers configure automatically when plugged in, and button actions can also be assigned manually.
Stackable shaders can change rendered graphics or imitate the look of CRT monitors. Built-in netplay supports hosting or joining network gaming sessions, including spectator mode. RetroArch can record gameplay to video files and stream games to Twitch or YouTube. Versions are listed for Windows, Linux, Android, iOS, macOS, and web browsers. RetroArch is free and open source under GPL version 3; the libretro API uses an MIT license. Features differ by platform and store version: the browser edition has lower performance and fewer capabilities than the full version, while Steam lacks Core Updater and thumbnail scraping and offers a selected core set.