RetroArch – All-powerful and cross-platoform free video game console emulator

This article along with all titles and tags are the original content of AppNee. All rights reserved. To repost or reproduce, you must add an explicit footnote along with the URL to this article!
Any manual or automated whole-website collecting/crawling behaviors are strictly prohibited.
Any resources shared on AppNee are limited to personal study and research only, any form of commercial behaviors are strictly prohibited. Otherwise, you may receive a variety of copyright complaints and have to deal with them by yourself.
Before using (especially downloading) any resources shared by AppNee, please first go to read our F.A.Q. page more or less. Otherwise, please bear all the consequences by yourself.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Ads Place

In the past, to play a game for some platform on a computer, you have to find a corresponding console emulator to run it, and the necessary settings of each emulator vary. Some are very simple, while others may be more complex. This can be troublesome even for video game lovers who are fond of doing things from side to side. Fortunately, the appearance of RetroArch makes it more convenient for playing the classic video games on various platforms (a wide range of computers and game consoles) – within the same, lick and friendly GUI, as well as unified settings (so all configuration will be done once and for all).

RetroArch (formerly known as SSNES) is a fast, lightweight and portable multi-console, all-powerful emulators integration platform without dependencies, developed by The Libretro Team in 2010. Its essence is a free, open-source, and cross-platform reference implementation of the Libretro API, namely a front-end for video game system emulators, game engines, video games, media players and other more generalized 3D applications. In other words, RetroArch itself is not an emulator, while those cores it invokes are the real emulators. In RetroArch, to play games for various platforms, you just need to download the corresponding libretro emulator cores (instantiated as dynamic libraries). As a matter of fact, the emulator kernels offered by RetroArch are all quite excellent, and they come with better ease of use and compatibility than the originals.

The power of RetroArch lies in its multi-platform support, unified settings, very beautiful, easy-to-use and uniform XMB management interface, and a lot of additional functions that are applicable to various cores, especially the powerful filters library for various platforms (Windows, OS X, Linux, Android, iOS, BlackBerry 10, Raspberry Pi, OpenPandora, Sony PlayStation 3, Xbox, Xbox 360, GameCube, Nintendo Wii, 3DS, PlayStation Portable, PlayStation Vita, and more). Plus, it also provides many advanced features like shaders, netplay, rewinding (goes back in time), next-frame response times; and perfectly supports file name with Unicode characters, cancels the spirits number limit, unlocks CPU frequency for fceumm core, automatically downloads and displays the cover of ROMs, and more.

From a global perspective, RetroArch has not become very popular. This is mostly because of its powerful and manifold functions, which are somewhat complex and daunting for the beginners, and therefore it’s less easy to get started with. In fact, RetroArch has already been simple enough (it just looks a bit complicated). Only in the aspects of function and performance, does it need to slowly keep up with the traditional and classic game console emulators one by one. After a simple setup, you’ll find that it brings a lot of convenience to video game players. And most directly, of course, you don’t need to change to use different game emulators in order to play games on different platforms at all.

No matter what, in the foreseeable future, if RetroArch could keep active updates, it would slowly take the place of almost all the classic and popular game console emulators, and finally rules all the land. Of course, at that rate some similar competitors probably appear too, otherwise it must be commercialized in the end. Anyway, at least it now seems to be a hit for us video game lovers.

// Main Functions //

Function Details
A Polished Interface Browse your game collection through a beautiful settop box-oriented menu. After scanning your collection, games will be sorted by system. The menu supports thumbnails and features various animated backgrounds.
Cross platform RetroArch can run on the usual platforms like Windows, Mac OS X and Linux. RetroArch also runs on Apple and Android for tablets and phones, as well as on game consoles like PS3, PSP, PS Vita, Wii, Wii U and more!
Next-frame response time – impeccable latency results RetroArch is capable of next-frame responsive time. This means that there should be no nearly no perceivable difference in terms of input latency from real hardware, FPGA/clone or original hardware. On top of all that, there are various settings you can configure to optimize the results even more.
Highly Configurable Our advanced settings interface lets you tweak every possible option about how the games are run and displayed. Every setting has a logical default so you can be up and running in no time.
Joypad Auto Configuration Common joypads are automatically configured when plugged in, just like a real game console. Ideal for multiplayer games when a friend brings their own joypad. You can also configure joypads manually to assign special actions to button combos.
Shaders Shaders are efficient graphical filters that can greatly improve the rendering of old games. They can also be used to replicate the look and feel of old CRT monitors. You can even stack them to create your own effect. The possibilities are endless.
Achievements Unlock achievements on your favorite classic games! RetroArch integrates with the RetroAchievements service to unlock trophies and badges like modern web consoles.
Netplay Host or join a network gaming session. Rediscover the joy of multiplayer games using RetroArch built-in netplay lobby. You can also use the spectator mode to watch others play.
Recording & Streaming RetroArch is able to record your gaming session to a video file. The same mechanism also enables you to live stream your games to platforms like or Youtube.
Expanding app library New programs are constantly being added to RetroArch’s app library. And with RetroArch’s built-in Core Updater, you can download new programs directly as soon as they become available!

// Key Features //

  • Advanced GPU shader support – A multi-pass post-processing shader pipeline allows efficient use of image scaling algorithms, emulation of complex CRT, NTSC video artifacts and other effects;
  • Dynamic Rate Control to synchronize video and audio while smoothing out timing imperfections;
  • FFmpeg recording – Built-in support for lossless video recording using FFmpeg’s libavcodec;
  • Gamepad abstraction layer called Retropad;
  • Gamepad auto-configuration – Zero-configuration needed from the user after plugging a gamepad in;
  • Peer-to-peer netplay that uses a rollback technique similar to GGPO;
  • Audio DSP plugins like an equalizer, reverb and other effects;
  • Advanced savestate features – Automatic savestate loading, disabling SRAM overwritting, etc.;
  • Frame-by-frame gameplay rewinding at the press of a button;
  • Button overlays for touchscreen devices like smartphones;
  • Thumbnails of game boxarts;
  • Low input and audio lag options;
  • Automatically build categorized playlists by scanning directories for games/ROMs;
  • Multiple interfaces including: CLI, XMB (optimized for gamepads), GLUI/MaterialUI (optimized for touch devices) and RGUI (available everywhere);
  • Game ROM scanner – Automatically constructs playlists by comparing the hashsums of a directory‘s files against databases of hashsums of known good game copies.
  • Libretro database of cores, games, cheats, etc.
  • OpenGL and Vulkan API support.

// Supported Platforms //

RetroArch has been ported to the following platforms:

  • DOS
  • Windows
  • Linux
  • Emscripten (WebAssembly and JavaScript)
  • FreeBSD
  • NetBSD
  • OpenBSD
  • Haiku
  • Solaris
  • macOS (PPC, x86-32 and x86-64)
  • PlayStation 3
  • PlayStation Portable
  • PlayStation Vita
  • Original Microsoft Xbox
  • Microsoft Xbox 360 (Libxenon/XeXDK)
  • Nintendo GameCube
  • Nintendo Wii
  • Nintendo Wii U
  • Nintendo 3DS
  • Nintendo Switch
  • Nintendo NES/SNES Classic Edition
  • Raspberry Pi
  • Android
  • iOS
  • Blackberry

// Supported Console Systems //

RetroArch can run any libretro core. While RetroArch is available for many platforms, the availability of a specific core varies per platform. Below is a non-exhaustive table of which systems are available to RetroArch and what project the core is based on:

System Based on


Atari 2600 Stella
Atari 5200 Atari800
Atari 7800 ProSystem
Atari Jaguar Virtual Jaguar
Atari Lynx MednafenHandy
Atari Falcon Hatari
Cave Story NXEngine
Bomberman Mr. Boom
CHIP-8 Emux
ColecoVision blueMSX
Commodore 64 VICE
Doom PrBoom
Dreamcast RedreamReicast
Famicom Disk System Nestopiahigan
FFmpeg FFmpeg
Game Boy / Color EmuxGambatte


TGB Dual


Game Boy Advance MednafengpSP




GameCube Dolphin
Game Gear Genesis Plus GX
Neo Geo Pocket / Color Mednafen
NEC PC-98 Neko Project II
Nintendo 64 Mupen64Plus
Nintendo Entertainment System higanEmux


Nestopia UE


Nintendo DS DeSmuME
Nintendo 3DS Citra
Odyssey² O2EM
PC-FX Mednafen
32X Picodrive
Mega CD/Sega CD Genesis Plus GX
Mega Drive/Genesis Genesis Plus GX
Master System PicoDriveGenesis Plus GX
PlayStation Portable PPSSPP
PlayStation MednafenPCSX ReARMed
Pokémon Mini PokeMini
Quake 1 TyrQuake
Sega Saturn uoYabauseMednafen
Super NES Bsneshigan


Tomb Raider OpenLara
TurboGrafx-16 / SuperGrafx Mednafen
TurboGrafx-CD Mednafen
Vectrex VecXGL
Virtual Boy Mednafen
WonderSwan Mednafen
ZX Spectrum Fuse
ZX81 EightyOne

// System Requirements //

// Simple Tutorial //

  1. Run RetroArch
  2. Click “Load Core…
  3. Select the core file you have downloaded, or click “Download Core…” twice to online download any core you need
  4. Back to the “Main Menu“, and click “Load Content…” twice to load any ROM file you have for the corresponding game console
  5. Done, enjoy!

If you select “Download Cores…” but nothing happens. You can try the following two solutions:

Solution 1:

  • Use a proxy to do this (your country may have blocked the source link)

Solution 2:

Change to use other Buildbot URL from which RetroArch gets its cores from:

  1. Go to Settings
  2. Go to User Interface
  3. Make sure that “Show Advanced Settings” is set to ON
  4. Go back once
  5. Go to Network
  6. Go to “Updater”, all the way at the bottom
  7. Set “Buildbot Cores URL” to the following (or the links listed in the download area): 4.5k
  8. Press enter
  9. Press escape, and re-enter RetroArch
  10. Try to download cores again

*** You may have to update the URL for cores (it may be blank when first try), and you will have to go into settings and turn on advance options, then there is a place to type in the URL.

// Related Links //

// Download URLs //

License Version Download Size
Freeware Latest  (mir) n/a
All Cores Latest Windows | Apple | Linux | Android | Nintendo | PlayStation n/a
9700+ ROMs Magnet Link 24.7 GB

(Homepage | Libretro | GitHub)

If some download link is missing, and you do need it, just please send an email (along with post link and missing link) to remind us to reupload the missing file for you. And, give us some time to respond.
If there is a password for an archive, it should be "".
Most of the reserved downloads (including the 32-bit version) can be requested to reupload via email.