RetroArch
   HOME

TheInfoList



OR:

RetroArch is a
free and open-source Free and open-source software (FOSS) is a term used to refer to groups of software consisting of both free software and open-source software where anyone is freely licensed to use, copy, study, and change the software in any way, and the source ...
,
cross-platform In computing, cross-platform software (also called multi-platform software, platform-agnostic software, or platform-independent software) is computer software that is designed to work in several computing platforms. Some cross-platform software r ...
frontend for
emulator In computing, an emulator is Computer hardware, hardware or software that enables one computer system (called the ''host'') to behave like another computer system (called the ''guest''). An emulator typically enables the host system to run so ...
s,
game engine A game engine is a software framework primarily designed for the development of video games and generally includes relevant libraries and support programs. The "engine" terminology is similar to the term "software engine" used in the software i ...
s,
video game Video games, also known as computer games, are electronic games that involves interaction with a user interface or input device such as a joystick, controller, keyboard, or motion sensing device to generate visual feedback. This fee ...
s,
media players A media player could refer to: *Digital media player, home appliances that play digital media *Media player software, software that plays digital media *Portable media player, portable hardware that plays digital media *Windows Media Player Wi ...
and other applications. It is the reference implementation of the libretro
API An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software Interface (computing), interface, offering a service to other pieces of software. A document or standa ...
, designed to be fast, lightweight, portable and without dependencies. It is licensed under the
GNU GPLv3 The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the four freedoms to run, study, share, and modify the software. The license was the first copyleft for general u ...
. RetroArch runs programs converted into dynamic libraries called libretro cores, using several
user interface In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine f ...
s such as command-line interface, a few
graphical user interface The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
s (GUI) optimized for
gamepad A gamepad is a type of video game controller held in two hands, where the fingers (especially thumbs) are used to provide input. They are typically the main input device for video game consoles. Features Gamepads generally feature a set of ...
s (the most famous one being called XMB, a clone of Sony's
XMB The XrossMediaBar (pronounced "cross-media bar" and officially abbreviated as XMB) is a graphical user interface developed by Sony Computer Entertainment. The interface features icons that are spread horizontally across the screen. Navigation mov ...
), several input, audio and video drivers, plus other sophisticated features like dynamic rate control, audio filters, multi-pass
shader In computer graphics, a shader is a computer program that calculates the appropriate levels of light, darkness, and color during the rendering of a 3D scene - a process known as ''shading''. Shaders have evolved to perform a variety of spec ...
s, netplay, gameplay rewinding, cheats, etc. RetroArch has been ported to many platforms. It can run on several PC operating systems (
Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
,
macOS macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and lapt ...
,
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which ...
), home consoles (
PlayStation 4 The PlayStation 4 (PS4) is a home video game console developed by Sony Interactive Entertainment. Announced as the successor to the PlayStation 3 in February 2013, it was launched on November 15, 2013, in North America, November 29, 2013 in ...
,
Xbox Series X The Xbox Series X/S are home video game consoles developed by Microsoft. They were both released on November 10, 2020, as the fourth generation Xbox, succeeding the Xbox One. Along with Sony's PlayStation 5, also released in November 2020, t ...
,
Wii U The Wii U ( ) is a home video game console developed by Nintendo as the successor to the Wii. Released in late 2012, it is the first eighth-generation video game console and competed with Microsoft's Xbox One and Sony's PlayStation 4. The W ...
, etc.), handheld consoles (
PlayStation Vita The PlayStation Vita (PS Vita, or Vita) is a handheld video game console developed and marketed by Sony Interactive Entertainment. It was first released in Japan on December 17, 2011, and in North America, Europe, and other international territo ...
,
Nintendo Switch The is a hybrid video game console developed by Nintendo and released worldwide in most regions on March 3, 2017. The console itself is a Tablet computer#Gaming tablet, tablet that can either be docking station, docked for use as a home video ...
, etc.), on smartphones ( Android,
iOS iOS (formerly iPhone OS) is a mobile operating system created and developed by Apple Inc. exclusively for its hardware. It is the operating system that powers many of the company's mobile devices, including the iPhone; the term also includes ...
, etc.), single-board computers (
Raspberry Pi Raspberry Pi () is a series of small single-board computers (SBCs) developed in the United Kingdom by the Raspberry Pi Foundation in association with Broadcom. The Raspberry Pi project originally leaned towards the promotion of teaching basic ...
,
ODROID The ODROID is a series of single-board computers and tablet computers created by Hardkernel Co., Ltd., located in South Korea. Even though the name ''ODROID'' is a portmanteau of ''open'' + ''Android'', the hardware is not actually open because s ...
, etc.) and even on web browsers by using the
Emscripten Emscripten is an LLVM/Clang-based compiler that compiles C and C++ source code to WebAssembly (or to a subset of JavaScript known as asm.js, its original compilation target before the advent of WebAssembly in 2017), primarily for execution in we ...
compiler.


History

Formerly known as SSNES, initially based on pseudonymous programmer
Near NEAR or Near may refer to: People * Thomas J. Near, US evolutionary ichthyologist * Near, a developer who created the higan emulator Science, mathematics, technology, biology, and medicine * National Emergency Alarm Repeater (NEAR), a form ...
's ''libretro'' predecessor ''libsnes'', it began its development in 2010 with Hans-Kristian "themaister" Arntzen committing the first change on
GitHub GitHub, Inc. () is an Internet hosting service for software development and version control using Git. It provides the distributed version control of Git plus access control, bug tracking, software feature requests, task management, continuous ...
. It was intended as a replacement to
bsnes Higan is a free emulator for multiple video game consoles, including the Super Nintendo Entertainment System. Originally called bsnes (which was later reused for a new emulator by the same developer), the emulator is notable for attempting to ...
's Qt-based interface but it grew to support more emulation "cores". On April 21, 2012, SSNES was officially renamed to RetroArch to reflect this change in direction. RetroArch's version 1.0.0.0 was released on January 11, 2014, and at the time was available on seven distinct platforms. On February 16, 2016, RetroArch became one of the first ever applications to implement support for the
Vulkan Vulkan is a low- overhead, cross-platform API, open standard for 3D graphics and computing. Vulkan targets high-performance real-time 3D graphics applications, such as video games and interactive media. Vulkan is intended to offer higher perfor ...
graphics API, having done so on the same day of the API's official release day. On November 27, 2016, the Libretro Team announced that, alongsid
Lakka
(
LibreELEC LibreELEC (short for Libre Embedded Linux Entertainment Center) is a non-profit fork of OpenELEC as an open source software appliance, a Linux-based Just enough operating system for the Kodi media player. This fork of OpenELEC announced in Mar ...
-based RetroArch
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems schedule tasks for efficient use of the system and may also in ...
), RetroArch would be on the
Patreon Patreon (, ) is a membership platform that provides business tools for content creators to run a subscription service. It helps creators and artists earn a monthly income by providing rewards and perks to their subscribers. Patreon charges a co ...
crowdfunding platform to allow providing bounties for developers who fix specific
software bug A software bug is an error, flaw or fault in the design, development, or operation of computer software that causes it to produce an incorrect or unexpected result, or to behave in unintended ways. The process of finding and correcting bugs i ...
s and to cover the costs for
matchmaking Matchmaking is the process of matching two or more people together, usually for the purpose of marriage, in which case the matchmaker is also known as a marriage broker. The word is also used in the context of sporting events such as boxing, in ...
servers. In December 2016, GoGames – a company contracted by video game developer and publisher
Sega is a Japanese multinational corporation, multinational video game and entertainment company headquartered in Shinagawa, Tokyo. Its international branches, Sega of America and Sega Europe, are headquartered in Irvine, California and London, r ...
– approached the RetroArch developers with the intention of using their software in their SEGA Forever project but ultimately the cooperation did not come to fruition due to licensing disagreements. In April 2018, an input lag compensation feature called "Run-Ahead" was added. The Libretro Team planned to release RetroArch onto
Steam Steam is a substance containing water in the gas phase, and sometimes also an aerosol of liquid water droplets, or air. This may occur due to evaporation or due to boiling, where heat is applied until water reaches the enthalpy of vaporization ...
as a free download, integrating Steamworks features into the platform in July 2019. It would have been the first major dedicated emulation title to be released on the platform at the time. In August 2020, someone impersonating a trusted member of the team got access to the buildbot server and the GitHub account for the libretro organization, causing vandalism and server wipes. In November 2020, RetroArch in conjunction with a
PCSX2 PCSX2 is a free and open-source PlayStation 2 emulator for Windows, Linux, and macOS that supports a wide range of PlayStation 2 video games with a high level of compatibility and functionality. Although PCSX2 can closely mirror the original gam ...
libretro core allowed the
Xbox Series X and Series S The Xbox Series X/S are home video game consoles developed by Microsoft. They were both released on November 10, 2020, as the fourth generation Xbox, succeeding the Xbox One. Along with Sony's PlayStation 5, also released in November 2020, t ...
to emulate the
PlayStation 2 The PlayStation 2 (PS2) is a home video game console developed and marketed by Sony Computer Entertainment. It was first released in Japan on 4 March 2000, in North America on 26 October 2000, in Europe on 24 November 2000, and in Australia on 3 ...
, something that Sony's own
PlayStation 5 The PlayStation 5 (PS5) is a home video game console developed by Sony Interactive Entertainment. Announced as the successor to the PlayStation 4 in April 2019, it was launched on November 12, 2020, in Australia, Japan, New Zealand, North Ame ...
could not do at the time. On September 14, 2021, RetroArch was released on Steam.


Features

Its major features include: * Advanced GPU
shader In computer graphics, a shader is a computer program that calculates the appropriate levels of light, darkness, and color during the rendering of a 3D scene - a process known as ''shading''. Shaders have evolved to perform a variety of spec ...
support - A multi-pass post-processing shader
pipeline Pipeline may refer to: Electronics, computers and computing * Pipeline (computing), a chain of data-processing stages or a CPU optimization found on ** Instruction pipelining, a technique for implementing instruction-level parallelism within a s ...
to allow efficient usage of
image scaling In computer graphics and digital imaging, image scaling refers to the resizing of a digital image. In video technology, the magnification of digital material is known as upscaling or resolution enhancement. When scaling a vector graphic image, ...
algorithms, emulation of complex CRT,
NTSC The first American standard for analog television broadcast was developed by National Television System Committee (NTSC)National Television System Committee (1951–1953), Report and Reports of Panel No. 11, 11-A, 12–19, with Some supplement ...
video artifacts and other effects;
Dynamic Rate Control
to synchronize video and audio while smoothing out timing imperfections; *
FFmpeg FFmpeg is a free and open-source software project consisting of a suite of libraries and programs for handling video, audio, and other multimedia files and streams. At its core is the command-line ffmpeg tool itself, designed for processing of vid ...
recording - Built-in support for
lossless Lossless compression is a class of data compression that allows the original data to be perfectly reconstructed from the compressed data with no loss of information. Lossless compression is possible because most real-world data exhibits statistic ...
video recording using FFmpeg's
libavcodec libavcodec is a free and open-source library of codecs for encoding and decoding video and audio data. libavcodec is an integral part of many open-source multimedia applications and frameworks. The popular MPV, xine and VLC media players use ...
; * Gamepad
abstraction layer In computing, an abstraction layer or abstraction level is a way of hiding the working details of a subsystem. Examples of software models that use layers of abstraction include the OSI model for network protocols, OpenGL, and other graphics libra ...
called Retropad; *
Gamepad A gamepad is a type of video game controller held in two hands, where the fingers (especially thumbs) are used to provide input. They are typically the main input device for video game consoles. Features Gamepads generally feature a set of ...
auto-configuration - Zero-input needed from the user after plugging gamepads in; *
Peer-to-peer Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the network. They are said to form a peer-to-peer n ...
netplay that uses a
rollback In political science, rollback is the strategy of forcing a change in the major policies of a state, usually by replacing its ruling regime. It contrasts with containment, which means preventing the expansion of that state; and with détente, w ...
technique similar to
GGPO GGPO (Good Game Peace Out) is middleware designed to help create a near- lagless online experience for various emulated arcade games and fighting games. The program was created by Tony Cannon, co-founder of fighting game community site ''Shoryuken ...
; * Audio
DSP DSP may refer to: Computing * Digital signal processing, the mathematical manipulation of an information signal * Digital signal processor, a microprocessor designed for digital signal processing * Yamaha DSP-1, a proprietary digital signal ...
plugins like an equalizer, reverb and other effects; * Advanced savestate features - Automatic savestate loading, disabling SRAM overwriting, etc.; * Frame-by-frame gameplay rewinding; * Button overlays for
touchscreen A touchscreen or touch screen is the assembly of both an input ('touch panel') and output ('display') device. The touch panel is normally layered on the top of an electronic visual display of an information processing system. The display is often ...
devices like smartphones; *
Thumbnail Thumbnails are reduced-size versions of pictures or videos, used to help in recognizing and organizing them, serving the same role for images as a normal text index does for words. In the age of digital images, visual search engines and image ...
s of game
box art Video game packaging refers to the physical storage of the contents of a PC or console game, both for safekeeping and shop display. In the past, a number of materials and packaging designs were used, mostly paperboard or plastic. Today, most phy ...
; * Low input and audio lag options; * Automatically build categorized playlists by scanning directories for games/ROMs; * Multiple interfaces including:
CLI CLI may refer to: Computing * Call Level Interface, an SQL database management API * Command-line interface, of a computer program * Command-line interpreter or command language interpreter; see List of command-line interpreters * CLI (x86 instruc ...
, XMB (optimized for
gamepad A gamepad is a type of video game controller held in two hands, where the fingers (especially thumbs) are used to provide input. They are typically the main input device for video game consoles. Features Gamepads generally feature a set of ...
s), GLUI/MaterialUI (optimized for touch devices), RGUI and Ozone (available everywhere); * Game ROM scanner - Automatically constructs
playlist A playlist is a list of video or audio files that can be played back on a media player either sequentially or in a shuffled order. In its most general form, an audio playlist is simply a list of songs, but sometimes a loop. The term has sever ...
s by comparing the hashsums of a
directory Directory may refer to: * Directory (computing), or folder, a file system structure in which to store computer files * Directory (OpenVMS command) * Directory service, a software application for organizing information about a computer network's u ...
's files against databases of hashsums of known good game copies; * Libretro
database In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases sp ...
of cores, games, cheats, etc.; *
OpenGL OpenGL (Open Graphics Library) is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics. The API is typically used to interact with a graphics processing unit (GPU), to achieve hardwa ...
and
Vulkan API Vulkan is a low- overhead, cross-platform API, open standard for 3D graphics and computing. Vulkan targets high-performance real-time 3D graphics applications, such as video games and interactive media. Vulkan is intended to offer higher perform ...
support; *Run-Ahead - Hide the input lag of emulated systems by using both savestates and fast-forwarding; * Achievement tracking - Integration with the RetroAchievements service to unlock trophies and badges; *AI Service - Uses
machine translation Machine translation, sometimes referred to by the abbreviation MT (not to be confused with computer-aided translation, machine-aided human translation or interactive translation), is a sub-field of computational linguistics that investigates t ...
external services to translate game text on screen.


Supported 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:


Reception

RetroArch has been praised for the number of systems and games it can play under a single
interface Interface or interfacing may refer to: Academic journals * ''Interface'' (journal), by the Electrochemical Society * ''Interface, Journal of Applied Linguistics'', now merged with ''ITL International Journal of Applied Linguistics'' * '' Inte ...
. It has been criticized for how difficult it is to configure, due to the extensive number of options available to the user, and at the same time has been praised for the more advanced features it possesses. On Android, it has been praised for the fact that overlays can be customized, for the expandability of the libretro cores it supports, for its compatibility with several USB and Bluetooth controller peripherals, in addition to the app being free and having no ads. Tyler Loch, writing for
Ars Technica ''Ars Technica'' is a website covering news and opinions in technology, science, politics, and society, created by Ken Fisher and Jon Stokes in 1998. It publishes news, reviews, and guides on issues such as computer hardware and software, sci ...
, said that RetroArch's 'Run-Ahead' feature is "arguably the biggest improvement to the experience the retro gaming community has yet seen".


See also

*
List of free and open-source software packages This is a list of free and open-source software packages, computer software licensed under free software licenses and open-source licenses. Software that fits the Free Software Definition may be more appropriately called free software; the GNU p ...
*
List of video game emulators The following is a list of notable video game console emulators. Arcade * Visual Pinball Atari ; Atari 2600 * Stella Nintendo Home consoles ; Nintendo Entertainment System * FCEUX * NESticle * Nestopia ; Super NES * Snes9x * ZSNES ...


References


External links

* {{Nintendo emulators Android emulation software Arcade video game emulators Atari 2600 Doom (franchise) DOS emulators Free and open-source Android software Free emulation software Game Boy Advance emulators Game Boy emulators MSX Nintendo DS emulators Nintendo Entertainment System emulators PlayStation emulators Sega Genesis emulators Sega Master System emulators Sega Saturn Super Nintendo Entertainment System emulators TurboGrafx-16 emulators