1
2RETROARCH(6)          System Manager's Manual: retroarch          RETROARCH(6)
3
4
5

NAME

7       retroarch - The reference frontend for the libretro API.
8
9

SYNOPSIS

11       retroarch [rom file(s)] [OPTIONS]...
12
13

DESCRIPTION

15       retroarch  is the reference frontend for the libretro API.  libretro is
16       an abstraction of a game system, and can be implemented by  any  front‐
17       end.  The libretro API is designed for games, emulators and multimedia.
18       retroarch focuses on exposing needed functionality for the game  system
19       through  the use of command line and configuration files.  It also fea‐
20       tures a simple built-in UI.
21
22

EXAMPLE COMMANDLINE

24       Load content, using a specific libretro core and config file.
25              retroarch --config ~/.config/retroarch/retroarch.cfg  --libretro
26              /path/to/libretro/core.so /path/to/rom.rom --verbose
27
28
29       No command line options will start RetroArch in menu mode.
30              retroarch
31
32
33       Start RetroArch in menu mode, with verbose logging.
34              retroarch --menu --verbose
35
36
38       Refers  to  the built-in GUI system for RetroArch. It is aimed at being
39       controlled with a gamepad only.
40
41

DEFAULT CONTROLS

43       By default, only keyboard input is accepted.
44
45

GENERAL OPTIONS

47       [rom file]
48              If no rom file path is defined on the  command  line,  retroarch
49              will  try  to  load a core with no rom. This will only work with
50              some libretro cores.  retroarch use  uncompressed  content,  but
51              can uncompress content in the .zip/deflate format if support for
52              it is compiled in.  Content types supported depend  on  the  li‐
53              bretro implementation used.
54
55
56       --help, -h
57              Prints help text.
58
59
60       --menu Starts  directly  in  in-game menu if enabled.  Does not require
61              content or libretro implementation to  be  set.   These  can  be
62              loaded  afterwards  in  the menu.  If no arguments are passed to
63              retroarch, it is equivalent to calling retroarch  with  this  as
64              only argument.
65
66
67       --features
68              Prints available features compiled into RetroArch, then exits.
69
70
71       -L PATH, --libretro PATH
72              Path to a libretro implementation which is to be used.  This op‐
73              tion will override any setting in a config file.  This option is
74              only  available  if  RetroArch is compiled with dynamic libretro
75              loading.
76
77
78       --save PATH, -s PATH
79              Overrides the path  used  for  save  ram  (*.srm)  (deprecated).
80              Without  this  flag, the save ram path will be inferred from the
81              rom path name, and put in the same directory  as  the  rom  file
82              with  the  extension  replaced with '.srm'.  If PATH is a direc‐
83              tory, RetroArch will treat this  as  the  save  file  directory,
84              where the save file name will be inferred from the rom name.
85
86
87       --savestate PATH, -S PATH
88              Overrides  the  path used for save states (deprecated).  Without
89              this flag, the save state path will be  inferred  from  the  rom
90              path  name,  and  put in the same directory as the rom file with
91              the extension replace with '.state'.  If PATH  is  a  directory,
92              RetroArch will treat this as the save state directory, where the
93              state file name will be inferred from the  rom  name.   Do  note
94              that  save states are bound to the libretro implementation being
95              used. Using a different libretro could invalidate the save state
96              file.
97
98
99       --fullscreen, -f
100              Always  starts  RetroArch  in fullscreen. Disregards settings in
101              configuration file.
102
103
104       --config PATH, -c PATH
105              Sets the configuration file path. retroarch will use  this  path
106              to  load  the  configuration  file.  Should this not be defined,
107              retroarch will look in platform specific paths to attempt  find‐
108              ing  the  config  file.  /etc/retroarch.cfg (when installed), or
109              retroarch.cfg in the source tarball serves as a skeleton config‐
110              uration  file.   /etc/retroarch.cfg  should  serve as a skeleton
111              config only.
112
113
114              Unix-like     systems      will      look      in      $XDG_CON‐
115              FIG_HOME/retroarch/retroarch.cfg  first.  If $XDG_CONFIG_HOME is
116              not defined, it is assumed to be $HOME/.config as per specifica‐
117              tion. Then it will try $HOME/.retroarch.cfg. If both paths fail,
118              RetroArch will try to create  a  new,  default  config  file  in
119              $XDG_CONFIG_HOME/retroarch/retroarch.cfg  (or  the $HOME/.config
120              default for $XDG_CONFIG_HOME).  If all fails,  default  settings
121              will  be  assumed.   If  RetroArch  creates a new default config
122              file,  it  will  attempt  to  load  the  skeleton  config   file
123              /etc/retroarch.cfg and use that as a basis.  This allows distri‐
124              butions to set up default paths for libretro cores, and  similar
125              things.  A configuration file does not need to define every pos‐
126              sible option, only those which should be overridden.
127
128              If config_save_on_exit  =  true  is  set  in  the  config  file,
129              RetroArch  will  overwrite the config file on exit. Settings can
130              be changed from within the menu.  If RetroArch overwrites a con‐
131              fig  file, formatting, comments, etc will be lost.  If RetroArch
132              creates a default config file, it will have  config_save_on_exit
133              set automatically.
134
135
136              Windows   will  look  in  retroarch.cfg  in  same  folder  where
137              retroarch.exe resides.  A default config file will also be  cre‐
138              ated in the same manner as Unix.
139
140
141       --appendconfig PATH
142              Appends  a  different  set  of  config  files to the config file
143              loaded in -c (or default).  Multiple config files are  delimited
144              by  ','.   Every config file will be appended in order where the
145              key-value pairs of the next config file takes priority over  the
146              old ones.
147
148
149       --subsystem SUBSYSTEM
150              Use  a  subsystem  of the loaded libretro core. Multiple content
151              files are loaded as multiple arguments.  If content is  skipped,
152              use  a blank ("") command line argument.  Content must be loaded
153              in an order which depends on the particular subsystem used.  See
154              verbose  log  output  to  learn how a particular subsystem wants
155              content to be loaded.
156
157
158       --nodevice PORT, -N PORT
159              Disconnects an input device from port number PORT. Possible val‐
160              ues  for  PORT are 1 to 8. This may be needed for some odd games
161              to run properly.  If set explicitly here, overrides config  file
162              for that port.
163
164
165       --dualanalog PORT, -A PORT
166              Connects a DualAnalog controller into port PORT. Possible values
167              are 1 to 8.  If set explicitly here, overrides config  file  for
168              that port.
169
170
171       --device PORT:ID, -d PORT:ID
172              Connects a generic input device ID into port PORT. Possible val‐
173              ues for port are 1 to 8.  If set explicitly here, overrides con‐
174              fig  file for that port.  ID is an unsigned number corresponding
175              to the device for a libretro core.
176
177
178       --record PATH, -r PATH
179              Activates video recording of gameplay into PATH. Using .mkv  ex‐
180              tension is recommended.  Codecs used are (FFV1 or H264 RGB loss‐
181              less (x264))/FLAC, suitable for processing the material further.
182
183
184       --recordconfig PATH
185              Sets path to a config file for use during recording.
186
187
188       --size WIDTHxHEIGHT
189              Allows specifying the exact output width and height  of  record‐
190              ing.  This option will override any configuration settings.  The
191              video input is scaled with point filtering before being  encoded
192              at the correct size.
193
194
195       --play-replay PATH, -P PATH
196              Play  back  a movie recorded in the .replay format. Cart ROM and
197              movie file need to correspond.  It also requires  to  play  back
198              with the same libretro backend that was used for recording.
199
200
201       --record-replay PATH, -R PATH
202              Start  recording  a  .replay  video  to  PATH  immediately after
203              startup.
204
205
206       --sram-mode MODE, -M MODE
207              MODE designates how to handle SRAM.  The format  of  the  second
208              parameter is {no,}load-{no,}save.  These two boolean values tell
209              if SRAM loading and SRAM saving should take  place.   Note  that
210              noload-save  implies  that the SRAM will be overwritten with new
211              data.
212
213
214       --verbose, -v
215              Activates verbose logging.
216
217
218       --host, -H
219              Be the host of netplay. Waits until a user  connects.  The  host
220              will always assume user 1.
221
222
223       --connect SERVER, -C SERVER
224              Connect to a host of netplay. Will always assume user 2.
225
226
227       --frames FRAMES, -F FRAMES
228              Sync  frames  to  use  when using netplay. More frames allow for
229              more latency, but requires more CPU power.  Set FRAMES to  0  to
230              have  perfect  sync. 0 frames is only suitable for LAN. Defaults
231              to 0.
232
233
234       --port PORT
235              Network port used for netplay. This defaults to 55435. This  op‐
236              tion affects both TCP and UDP.
237
238
239       --spectate
240              If netplay is used, it will go into a spectator mode.  Spectator
241              mode allows one host to live stream game  playback  to  multiple
242              clients.   Essentially,  clients  receive a live streamed replay
243              movie file.  Clients can connect and  disconnect  at  any  time.
244              Clients  thus cannot interact as user 2.  For spectating mode to
245              work, both host and clients will need to use this flag.
246
247
248       --command CMD
249              Sends a command over UDP to an already running RetroArch  appli‐
250              cation,   and   exit.    The   command  is  formatted  as  "COM‐
251              MAND;HOST;PORT".   HOST  and  PORT  are  both  optional.   "COM‐
252              MAND;HOST"  will set PORT to "network_cmd_port" default setting.
253              If only "COMMAND" is used, HOST and PORT will be assumed  to  be
254              "localhost" and "network_cmd_port" respectively.
255
256              The available commands are listed if "COMMAND" is invalid.
257
258
259       --nick NICK
260              Pick  a nickname for use with netplay.  This is purely cosmetic,
261              and only serves to help users identify each other.
262
263
264       --ups PATCH, -U PATCH
265              Attempts to apply an UPS patch to the current content image.  No
266              files  are  altered.   If  this flag is not specified, RetroArch
267              will look for a .ups file with same basename as  content  speci‐
268              fied.
269
270
271       --bps PATCH
272              Attempts  to  apply a BPS patch to the current content image. No
273              files are altered.  If this flag  is  not  specified,  RetroArch
274              will  look  for a .bps file with same basename as content speci‐
275              fied.
276
277
278       --ips PATCH
279              Attempts to apply a IPS patch to the current content  image.  No
280              files  are  altered.   If  this flag is not specified, RetroArch
281              will look for a .ips file with same basename as  content  speci‐
282              fied.   Note that RetroArch cannot perform any error checking if
283              patching was successful due to how IPS works.
284
285
286       --no-patch
287              Disables all kinds of content patching.
288
289
290       -D, --detach
291              Detach from the current console. This is currently only relevant
292              for Microsoft Windows.
293
294
295
296RETROARCH                      November 1, 2011                   RETROARCH(6)
Impressum