Provided by: retroarch_1.4.1+dfsg1-1_amd64 

NAME
retroarch - The reference frontend for the libretro API.
SYNOPSIS
retroarch [rom file(s)] [OPTIONS]...
DESCRIPTION
retroarch is the reference frontend for the libretro API. libretro is an abstraction of a game system,
and can be implemented by any frontend. The libretro API is designed for games, emulators and
multimedia. retroarch focuses on exposing needed functionality for the game system through the use of
command line and configuration files. It also features a simple built-in UI.
EXAMPLE COMMANDLINE
Load content, using a specific libretro core and config file.
retroarch --config ~/.config/retroarch/retroarch.cfg --libretro /path/to/libretro/core.so
/path/to/rom.rom --verbose
No command line options will start RetroArch in menu mode.
retroarch
Start RetroArch in menu mode, with verbose logging.
retroarch --menu --verbose
Menu
Refers to the built-in GUI system for RetroArch. It is aimed at being controlled with a gamepad only.
DEFAULT CONTROLS
By default, only keyboard input is accepted.
GENERAL OPTIONS
[rom file]
If no rom file path is defined on the command line, retroarch will try to load a core with no rom.
This will only work with some libretro cores. retroarch use uncompressed content, but can
uncompress content in the .zip/deflate format if support for it is compiled in. Content types
supported depend on the libretro implementation used.
--help, -h
Prints help text.
--menu Starts directly in in-game menu if enabled. Does not require content or libretro implementation
to be set. These can be loaded afterwards in the menu. If no arguments are passed to retroarch,
it is equivalent to calling retroarch with this as only argument.
--features
Prints available features compiled into RetroArch, then exits.
-L PATH, --libretro PATH
Path to a libretro implementation which is to be used. This option will override any setting in a
config file. This option is only available if RetroArch is compiled with dynamic libretro
loading.
--save PATH, -s PATH
Overrides the path used for save ram (*.srm) (deprecated). Without this flag, the save ram path
will be inferred from the rom path name, and put in the same directory as the rom file with the
extension replaced with '.srm'. If PATH is a directory, RetroArch will treat this as the save
file directory, where the save file name will be inferred from the rom name.
--savestate PATH, -S PATH
Overrides the path used for save states (deprecated). Without this flag, the save state path will
be inferred from the rom path name, and put in the same directory as the rom file with the
extension replace with '.state'. If PATH is a directory, RetroArch will treat this as the save
state directory, where the state file name will be inferred from the rom name. Do note that save
states are bound to the libretro implementation being used. Using a different libretro could
invalidate the save state file.
--fullscreen, -f
Always starts RetroArch in fullscreen. Disregards settings in configuration file.
--config PATH, -c PATH
Sets the configuration file path. retroarch will use this path to load the configuration file.
Should this not be defined, retroarch will look in platform specific paths to attempt finding the
config file. /etc/retroarch.cfg (when installed), or retroarch.cfg in the source tarball serves
as a skeleton configuration file. /etc/retroarch.cfg should serve as a skeleton config only.
Unix-like systems will look in $XDG_CONFIG_HOME/retroarch/retroarch.cfg first. If $XDG_CONFIG_HOME
is not defined, it is assumed to be $HOME/.config as per specification. Then it will try
$HOME/.retroarch.cfg. If both paths fail, RetroArch will try to create a new, default config file
in $XDG_CONFIG_HOME/retroarch/retroarch.cfg (or the $HOME/.config default for $XDG_CONFIG_HOME).
If all fails, default settings will be assumed. If RetroArch creates a new default config file,
it will attempt to load the skeleton config file /etc/retroarch.cfg and use that as a basis. This
allows distributions to set up default paths for libretro cores, and similar things. A
configuration file does not need to define every possible option, only those which should be
overridden.
If config_save_on_exit = true is set in the config file, RetroArch will overwrite the config file
on exit. Settings can be changed from within the menu. If RetroArch overwrites a config file,
formatting, comments, etc will be lost. If RetroArch creates a default config file, it will have
config_save_on_exit set automatically.
Windows will look in retroarch.cfg in same folder where retroarch.exe resides. A default config
file will also be created in the same manner as Unix.
--appendconfig PATH
Appends a different set of config files to the config file loaded in -c (or default). Multiple
config files are delimited by ','. Every config file will be appended in order where the key-
value pairs of the next config file takes priority over the old ones.
--subsystem SUBSYSTEM
Use a subsystem of the loaded libretro core. Multiple content files are loaded as multiple
arguments. If content is skipped, use a blank ("") command line argument. Content must be loaded
in an order which depends on the particular subsystem used. See verbose log output to learn how a
particular subsystem wants content to be loaded.
--nodevice PORT, -N PORT
Disconnects an input device from port number PORT. Possible values for PORT are 1 to 8. This may
be needed for some odd games to run properly. If set explicitly here, overrides config file for
that port.
--dualanalog PORT, -A PORT
Connects a DualAnalog controller into port PORT. Possible values are 1 to 8. If set explicitly
here, overrides config file for that port.
--device PORT:ID, -d PORT:ID
Connects a generic input device ID into port PORT. Possible values for port are 1 to 8. If set
explicitly here, overrides config file for that port. ID is an unsigned number corresponding to
the device for a libretro core.
--record PATH, -r PATH
Activates video recording of gameplay into PATH. Using .mkv extension is recommended. Codecs used
are (FFV1 or H264 RGB lossless (x264))/FLAC, suitable for processing the material further.
--recordconfig PATH
Sets path to a config file for use during recording.
--size WIDTHxHEIGHT
Allows specifying the exact output width and height of recording. This option will override any
configuration settings. The video input is scaled with point filtering before being encoded at
the correct size.
--bsvplay PATH, -P PATH
Play back a movie recorded in the .bsv format (bsnes). Cart ROM and movie file need to correspond.
It also requires to play back with the same libretro backend that was used for recording.
--bsvrecord PATH, -R PATH
Start recording a .bsv video to PATH immediately after startup.
--sram-mode MODE, -M MODE
MODE designates how to handle SRAM. The format of the second parameter is {no,}load-{no,}save.
These two boolean values tell if SRAM loading and SRAM saving should take place. Note that
noload-save implies that the SRAM will be overwritten with new data.
--verbose, -v
Activates verbose logging.
--host, -H
Be the host of netplay. Waits until a user connects. The host will always assume user 1.
--connect SERVER, -C SERVER
Connect to a host of netplay. Will always assume user 2.
--frames FRAMES, -F FRAMES
Sync frames to use when using netplay. More frames allow for more latency, but requires more CPU
power. Set FRAMES to 0 to have perfect sync. 0 frames is only suitable for LAN. Defaults to 0.
--port PORT
Network port used for netplay. This defaults to 55435. This option affects both TCP and UDP.
--spectate
If netplay is used, it will go into a spectator mode. Spectator mode allows one host to live
stream game playback to multiple clients. Essentially, clients receive a live streamed BSV movie
file. Clients can connect and disconnect at any time. Clients thus cannot interact as user 2.
For spectating mode to work, both host and clients will need to use this flag.
--command CMD
Sends a command over UDP to an already running RetroArch application, and exit. The command is
formatted as "COMMAND;HOST;PORT". HOST and PORT are both optional. "COMMAND;HOST" will set PORT
to "network_cmd_port" default setting. If only "COMMAND" is used, HOST and PORT will be assumed
to be "localhost" and "network_cmd_port" respectively.
The available commands are listed if "COMMAND" is invalid.
--nick NICK
Pick a nickname for use with netplay. This is purely cosmetic, and only serves to help users
identify each other.
--ups PATCH, -U PATCH
Attempts to apply an UPS patch to the current content image. No files are altered. If this flag
is not specified, RetroArch will look for a .ups file with same basename as content specified.
--bps PATCH
Attempts to apply a BPS patch to the current content image. No files are altered. If this flag is
not specified, RetroArch will look for a .bps file with same basename as content specified.
--ips PATCH
Attempts to apply a IPS patch to the current content image. No files are altered. If this flag is
not specified, RetroArch will look for a .ips file with same basename as content specified. Note
that RetroArch cannot perform any error checking if patching was successful due to how IPS works.
--no-patch
Disables all kinds of content patching.
-D, --detach
Detach from the current console. This is currently only relevant for Microsoft Windows.
SEE ALSO
retroarch-joyconfig(6)
RETROARCH November 1, 2011 RETROARCH(6)