LinuxCommandLibrary

retroarch

Run emulators, play retro games

TLDR

Start in the menu mode

$ retroarch
copy

Start in full screen mode
$ retroarch --fullscreen
copy

List all compiled features
$ retroarch --features
copy

Set the path of a configuration file
$ retroarch --config=[path/to/config_file]
copy

Display help
$ retroarch --help
copy

Display version
$ retroarch --version
copy

SYNOPSIS

retroarch [options] [path/to/content]

PARAMETERS

--help
    Display help information.

--config
    Specify a custom configuration file to use.

--menu
    Force the menu to be displayed.

--fullscreen
    Start RetroArch in fullscreen mode.

--windowed
    Start RetroArch in windowed mode.

--resolution x
    Specify a custom resolution for the window.

--libretro
    Load a specific libretro core.


    The path to the game or content to load.

--verbose
    Enable verbose logging.

--features
    List available features.

DESCRIPTION

RetroArch is a modular, cross-platform frontend designed to run emulators, game engines, video games, media players and other applications through dynamic shared libraries.
It allows users to run classic games on a wide range of computers and consoles, through a sleek graphical interface.
Beyond gaming, RetroArch supports various 'cores' for tasks such as media playback and development tools.
RetroArch's key strengths include its libretro API, cross-platform compatibility, advanced features like shaders and netplay, and unified configuration across different platforms and cores.
It aims to provide a single, consistent experience regardless of the platform or content being used.
The core system allows for a wide range of functionalities, with new cores being constantly added and updated, extending the capabilities of the frontend.

CAVEATS

Configuration can be complex, requiring careful tuning for optimal performance. Core compatibility varies.

CORES

Cores are dynamically linked libraries containing the emulation or application logic. They are loaded by RetroArch at runtime to provide the desired functionality. Each core emulates a different system or performs a different task.

CONFIGURATION

RetroArch's behavior is primarily controlled through a configuration file. This file allows users to customize various aspects of the frontend, including video and audio settings, input mappings, and core options. The configuration file is typically located in the RetroArch directory.

LIBRETRO API

The libretro API defines a standard interface for emulators and other applications to interact with RetroArch. This API allows cores to be easily integrated into the frontend, providing a consistent experience across different platforms.

HISTORY

RetroArch evolved from earlier emulators like the Genesis Plus GX and Mednafen. The development began in 2010. It aims to provide a unified interface for many different emulators, simplifying the user experience. Usage has grown significantly over the years, especially with the rise of emulation and retro gaming.

Copied to clipboard