
RetroArch
Sign in to saveRetroArch is a free and open-source, cross-platform frontend for emulators, game engines, video games, media players and other applications. It is the reference implementation of the libretro API, designed to be fast, lightweight, portable and without dependencies. It is licensed under the GNU GPLv3.
Key facts
- Software.name
- RetroArch
- Software.logo
- RetroArch logo.png
- Software.screenshot
- File:Retroarch Netplay-lobby.png
- Software.caption
- Screenshot of RetroArch running under the XMB user interface
- Software.developer
- Libretro
- Software.operating system
- Haiku, Unix-like, Linux, Android, iOS, iPadOS, FreeBSD, macOS, Windows, Xbox Series X and Series S, Xbox One, Xbox, Switch, New Nintendo 3DS, New Nintendo 2DS, GameCube, Wii, Wii U, PlayStation 4, PlayStation 3, PlayStation 2, Vita, PlayStation Portable, PlayStation Classic, tvOS, webOS, AmigaOS, visionOS
- Software.platform
- IA-32 (x86), x86-64 (x64), ARMv7, AArch64, PowerPC, MIPS, Cell
- Software.language
- English, Mandarin, Spanish, German, French, Italian, Japanese, Korean, Dutch, Polish, Portuguese, Russian, Vietnamese, Turkish, Arabic, Greek, Persian, Hebrew, Asturian
- Software.genre
- Video game console emulator
- Software.website
- ,
via Wikipedia infobox
Source code
RetroArch is the reference frontend for the libretro API. Popular examples of implementations for this API includes video game system emulators and game engines as well as more generalized 3D programs. These programs are instantiated as dynamic libraries. We refer to these as "libretro cores". While RetroArch is the reference frontend for libretro, several other projects have used the libretro interface to include support for emulators and/or game engines. libretro is completely open and free for anyone to use. See our Documentation Center. On Unix, man-pages are provided. More developer-centric stuff is found here. In some areas, RetroArch goes beyond and emphasizes on not-so-common technical features such as multi-pass shader support, real-time rewind (Braid-style), video recording (using FFmpeg), run-ahead input latency removal, etc. RetroArch has been ported to the following platforms: Android (2.x to most recent version) Apple iOS Apple macOS (PPC, x86-32 and x86-64) Apple tvOS Blackberry DOS Emscripten (WebAssembly and JavaScript) FreeBSD Haiku LG webOS Linux Original Microsoft Xbox Microsoft Xbox 360 (Libxenon/XeXDK) Microsoft Xbox One Microsoft Xbox Series S/X Miyoo NetBSD Nintendo NES/SNES Classic Edition Nintendo GameCube Nintendo Wii Nintendo Switch Nintendo Wii U Nintendo 3DS/2DS OpenBSD OpenDingux PlayStation2 PlayStation3 PlayStation4 PlayStation Portable PlayStation Vita Raspberry Pi ReactOS Redox OS RetroFW RS90 SerenityOS Solaris Windows NT 3.5 Windows 95 Windows 98 Windows 2000 Windows XP Windows Millennium Windows Vista Windows 7 Windows 8 Windows 10 Windows 11 On Linux, there are no true dependencies. For optimal usage, the following dependencies come as recommended: GL headers / Vulkan headers X11 headers and libs, or EGL/KMS/GBM To run properly, RetroArch requires a libretro implementation present; however, as it's typically loaded dynamically, it's not required at build time. Console ports have their own dependencies, but generally do not require anything other than what the respective SDKs provide. OpenGL1 Your videocard needs to at least support the OpenGL 1.1 spec. OpenGL2 Your videocard needs to at least support the OpenGL 2.1 spec. Shaders: You can choose between either NVIDIA Cg shaders (deprecated, requires separate runtime to be installed on your system), or GLSL shaders. OpenGL3 Your videocard needs to at least support the OpenGL 3.2 core feature spec. Shaders: You will be able to use modern Slang shaders with this driver. Direct3D 11 Your videocard needs to at least support the Direct3D11 11.0 spec. The card also needs to support at least the Shader Model 4.0. Shaders: You will be able to use modern Slang shaders with this driver. Vulkan Your videocard needs to at least support the Vulkan 1.0 spec. Shaders: You will be able to use modern Slang shaders with this driver. RetroArch will on startup create a config file in $XDG CONFIG HOME/retroarch/retroarch.cfg if it does not exist. Users only need to configure a certain option if the desired value deviates from the value defined in config.def.h. Instructions for compiling and installing RetroArch can be found in the Libretro/RetroArch Documentation Center. The default super resolution is 2560. It is displayed just under the CRT switch option, which can be found in video settings. This can be changed within the retroarch.cfg. The only compatible resolutions are 1920, 2560 and 3840. Any other resolutions will be ignored and native switching will be activated. These modelines are more accurate giving exact hz. However, some games may have unwanted results. This is due to mid-scanline resolution changes on the original hardware. For the best results super resolutions are the way to go. Some arcade resolutions can be very different from consumer CRTs. There is resolution detection to ensure MAME games will be displayed in the closest available resolution but drawn at their native resolution within this resolution. Meaning that the
Excerpt from the source-code README · 12,426 chars · not written by Vinony
Wikidata facts
- Instance of
- reference implementation
- Platform
- Microsoft Windows
- Game mode
- single-player video game
- Distribution format
- digital distribution
- Official website
- www.libretro.com
- Image
- Retroarch screenshot.png
- Has use
- video game console emulator
Show 11 more facts
- itch.io URL
- retroarchofficial.itch.io/retroarch
- copyright license
- GNU General Public License, version 3.0
- software version identifier
- 1.22.2
- source code repository URL
- git.libretro.com/libretro/RetroArch
- programmed in
- C
- operating system
- OpenBSD
- Commons category
- RetroArch
- distributed by
- itch.io
- language of work or name
- English language
- number of viewers/listeners
- 257599
- publication date
- 2010-05-25
Sources (11)
via Wikidata · CC0
~11 min read
Encyclopedic overview
7 sectionsContents
- History
- Features
- Supported systems
- Reception
- See also
- References
- External links
RetroArch is a free and open-source, cross-platform frontend for emulators, game engines, video games, media players and other applications. It is the reference implementation of the libretro API, designed to be fast, lightweight, portable and without dependencies. It is licensed under the GNU GPLv3.
RetroArch runs programs converted into dynamic libraries called libretro cores, using several user interfaces such as command-line interfaces, a few graphical user interfaces optimized for gamepads, several input, audio and video drivers, and other sophisticated features such as dynamic rate control, audio filters, multi-pass shaders, netplay, gameplay rewinding, cheats, etc.
Excerpted from Wikipedia’s “RetroArch” article, available under the CC BY-SA 4.0 licence.