1 ## Skeleton config file for RetroArch
3 # Save all save files (*.srm) to this directory. This includes related files like .bsv, .rtc, .psrm, etc ...
4 # This will be overridden by explicit command line options.
7 # Save all save states (*.state) to this directory.
8 # This will be overridden by explicit command line options.
9 # savestate_directory =
11 # Automatically saves a savestate at the end of RetroArch's lifetime.
12 # The path is $SRAM_PATH.auto.
13 # RetroArch will automatically load any savestate with this path on startup.
14 # savestate_auto_save = false
16 # Load libretro from a dynamic location for dynamically built RetroArch.
17 # This option is mandatory.
19 # If a directory, RetroArch will look through the directory until it finds an implementation
20 # that appears to support the extension of the ROM loaded.
21 # This could fail if ROM extensions overlap.
22 libretro_path = "/usr/lib/libretro/snes9x_next_libretro.so"
24 # Environment variables internally in RetroArch.
25 # Implementations can tap into this user-specificed information to enable functionality
26 # that is deemed too obscure to expose directly.
27 # Some variables might be "standardized" at a later time if needed.
28 # The string is formatted as key value pairs delimited by a semicolon ';'.
29 # Any white space between the delimiter ';' and the '=' is significant.
30 # I.e.: "key1=value1;key2=value2;..."
31 # environment_variables =
33 # Sets the "system" directory.
34 # Implementations can query for this directory to load BIOSes, system-specific configs, etc.
35 # system_directory = "default"
39 # Video driver to use. "gl", "xvideo", "sdl"
42 # Windowed xscale and yscale
43 # (Real x res: base_size * xscale * aspect_ratio, real y res: base_size * yscale)
47 # Fullscreen resolution. Resolution of 0 uses the resolution of the desktop.
48 # video_fullscreen_x = 0
49 # video_fullscreen_y = 0
51 # Start in fullscreen. Can be changed at runtime.
52 # video_fullscreen = false
54 # If fullscreen, prefer using a windowed fullscreen mode.
55 # video_windowed_fullscreen = true
57 # Which monitor to prefer. 0 (default) means no particular monitor is preferred, 1 and up (1 being first monitor),
58 # suggests RetroArch to use that particular monitor.
59 # video_monitor_index = 0
61 # Forcibly disable composition. Only works in Windows Vista/7 for now.
62 # video_disable_composition = false
67 # Smoothens picture with bilinear filtering. Should be disabled if using pixel shaders.
70 # Forces rendering area to stay equal to game aspect ratio or as defined in video_aspect_ratio.
71 # video_force_aspect = true
73 # A floating point value for video aspect ratio (width / height).
74 # If this is not set, aspect ratio is assumed to be automatic.
75 # Behavior then is defined by video_aspect_ratio_auto.
76 # video_aspect_ratio =
78 # If this is true and video_aspect_ratio is not set,
79 # aspect ratio is decided by libretro implementation.
80 # If this is false, 1:1 PAR will always be assumed if video_aspect_ratio is not set.
81 # video_aspect_ratio_auto = false
83 # Forces cropping of overscanned frames.
84 # Exact behavior of this option is implementation specific.
85 # video_crop_overscan = false
88 # video_cg_shader = "/path/to/cg/shader.cg"
90 # Path to GLSL XML shader. If both Cg shader path and XML shader path are defined,
91 # Cg shader will take priority unless overridden in video_shader_type.
92 # video_bsnes_shader = "/path/to/bsnes/xml/shader.shader"
94 # Which shader type to use. Valid values are "cg", "bsnes", "none" and "auto"
95 # video_shader_type = auto
97 # Defines a directory where XML shaders are kept.
100 # Render to texture first. Useful when doing multi-pass shaders or control the output of shaders better.
101 # video_render_to_texture = false
103 # Defines the video scale of render-to-texture.
104 # The output FBO size is scaled by these amounts against the input size (typically 256 * 224 for SNES).
105 # video_fbo_scale_x = 2.0
106 # video_fbo_scale_y = 2.0
108 # Define shader to use for second pass (needs render-to-texture).
109 # video_second_pass_shader = "/path/to/second/shader.{cg,shader}"
111 # Defines if bilinear filtering is used during second pass (needs render-to-texture).
112 # video_second_pass_smooth = true
114 # CPU-based filter. Path to a bSNES CPU filter (*.filter)
117 # Path to a TTF font used for rendering messages. This path must be defined to enable fonts.
118 # Do note that the _full_ path of the font is necessary!
121 # Size of the TTF font rendered.
122 # video_font_size = 48
124 # Attempt to scale the font to fit better for multiple window sizes.
125 # video_font_scale = true
127 # Enable usage of OSD messages.
128 # video_font_enable = true
130 # Offset for where messages will be placed on screen. Values are in range 0.0 to 1.0 for both x and y values.
131 # [0.0, 0.0] maps to the lower left corner of the screen.
132 # video_message_pos_x = 0.05
133 # video_message_pos_y = 0.05
135 # Color for message. The value is treated as a hexadecimal value.
136 # It is a regular RGB hex number, i.e. red is "ff0000".
137 # video_message_color = ffffff
139 # Video refresh rate of your monitor.
140 # Used to calculate a suitable audio input rate.
141 # video_refresh_rate = 59.95
143 # Allows libretro cores to set rotation modes.
144 # Setting this to false will honor, but ignore this request.
145 # This is useful for vertically oriented games where one manually rotates the monitor.
146 # video_allow_rotate = true
151 # audio_enable = true
153 # Audio output samplerate.
154 # audio_out_rate = 48000
156 # When altering audio_in_rate on-the-fly, define by how much each time.
157 # audio_rate_step = 0.25
159 # Audio driver backend. Depending on configuration possible candidates are: alsa, pulse, oss, jack, rsound, roar, openal, sdl, xaudio.
162 # Override the default audio device the audio_driver uses. This is driver dependant. E.g. ALSA wants a PCM device, OSS wants a path (e.g. /dev/dsp), Jack wants portnames (e.g. system:playback1,system:playback_2), and so on ...
165 # External DSP plugin that processes audio before it's sent to the driver.
168 # Will sync (block) on audio. Recommended.
171 # Desired audio latency in milliseconds. Might not be honored if driver can't provide given latency.
174 # Enable experimental audio rate control.
175 # audio_rate_control = true
177 # Controls audio rate control delta. Defines how much input rate can be adjusted dynamically.
178 # Input rate = in_rate * (1.0 +/- audio_rate_control_delta)
179 # audio_rate_control_delta = 0.005
181 # Audio volume. Volume is expressed in dB.
182 # 0 dB is normal volume. No gain will be applied.
183 # Gain can be controlled in runtime with input_volume_up/input_volume_down.
188 # Input driver. Depending on video driver, it might force a different input driver.
191 # Defines axis threshold. Possible values are [0.0, 1.0]
192 # input_axis_threshold = 0.5
194 # Path to input overlay
197 # Enable input auto-detection (used on Android). Will attempt to autoconfigure
198 # gamepads, Plug-and-Play style.
199 # input_autodetect_enable = true
201 # Enable debug input key reporting on-screen.
202 # input_debug_enable = false
204 # Keyboard input. Will recognize normal keypresses and special keys like "left", "right", and so on.
205 # Keyboard input, Joypad and Joyaxis will all obey the "nul" bind, which disables the bind completely,
206 # rather than relying on a default.
207 # input_player1_a = x
208 # input_player1_b = z
209 # input_player1_y = a
210 # input_player1_x = s
211 # input_player1_start = enter
212 # input_player1_select = rshift
213 # input_player1_l = q
214 # input_player1_r = w
215 # input_player1_left = left
216 # input_player1_right = right
217 # input_player1_up = up
218 # input_player1_down = down
224 # Two analog sticks (DualShock-esque).
225 # Bound as usual, however, if a real analog axis is bound,
226 # it can be read as a true analog.
227 # Positive X axis is right, Positive Y axis is down.
228 # input_player1_l_x_plus =
229 # input_player1_l_x_minus =
230 # input_player1_l_y_plus =
231 # input_player1_l_y_minus =
232 # input_player1_r_x_plus =
233 # input_player1_r_x_minus =
234 # input_player1_r_y_plus =
235 # input_player1_r_y_minus =
237 # If desired, it is possible to override which joypads are being used for player 1 through 5. First joypad available is 0.
238 # input_player1_joypad_index = 0
239 # input_player2_joypad_index = 1
240 # input_player3_joypad_index = 2
241 # input_player4_joypad_index = 3
242 # input_player5_joypad_index = 4
243 # Player 6-8 is not directly expected by libretro API, but we'll futureproof it.
244 # input_player6_joypad_index = 5
245 # input_player7_joypad_index = 6
246 # input_player8_joypad_index = 7
249 # Figure these out by using RetroArch-Phoenix or retroarch-joyconfig.
250 # You can use joypad hats with hnxx, where n is the hat, and xx is a string representing direction.
252 # input_player1_a_btn =
253 # input_player1_b_btn =
254 # input_player1_y_btn =
255 # input_player1_x_btn =
256 # input_player1_start_btn =
257 # input_player1_select_btn =
258 # input_player1_l_btn =
259 # input_player1_r_btn =
260 # input_player1_left_btn =
261 # input_player1_right_btn =
262 # input_player1_up_btn =
263 # input_player1_down_btn =
264 # input_player1_l2_btn =
265 # input_player1_r2_btn =
266 # input_player1_l3_btn =
267 # input_player1_r3_btn =
269 # Axis for RetroArch D-Pad.
270 # Needs to be either '+' or '-' in the first character signaling either positive or negative direction of the axis, then the axis number.
271 # Do note that every other input option has the corresponding _btn and _axis binds as well; they are omitted here for clarity.
272 # input_player1_left_axis =
273 # input_player1_right_axis =
274 # input_player1_up_axis =
275 # input_player1_down_axis =
277 # Holding the turbo while pressing another button will let the button enter a turbo mode
278 # where the button state is modulated with a periodic signal.
279 # The modulation stops when the button itself (not turbo button) is released.
280 # input_player1_turbo =
282 # Describes the period and how long of that period a turbo-enabled button should behave.
283 # Numbers are described in frames.
284 # input_turbo_period = 6
285 # input_turbo_duty_cycle = 3
287 # This goes all the way to player 8 (*_player2_*, *_player3_*, etc), but omitted for clarity.
288 # All input binds have corresponding binds for keyboard (none), joykeys (_btn) and joyaxes (_axis) as well.
290 # Toggles fullscreen.
291 # input_toggle_fullscreen = f
294 # input_save_state = f2
296 # input_load_state = f4
298 # State slots. With slot set to 0, save state name is *.state (or whatever defined on commandline).
299 # When slot is != 0, path will be $path%d, where %d is slot number.
300 # input_state_slot_increase = f7
301 # input_state_slot_decrease = f6
303 # Toggles between fast-forwarding and normal speed.
304 # input_toggle_fast_forward = space
306 # Hold for fast-forward. Releasing button disables fast-forward.
307 # input_hold_fast_forward = l
309 # Key to exit emulator cleanly.
310 # Killing it in any hard way (SIGTERM, SIGKILL, etc, will terminate emulator without saving RAM, etc.)
311 # input_exit_emulator = escape
313 # Applies next and previous XML/Cg shader in directory.
314 # input_shader_next = m
315 # input_shader_prev = n
317 # Hold button down to rewind. Rewinding must be enabled.
320 # Toggle between recording and not.
321 # input_movie_record_toggle = o
323 # Toggle between paused and non-paused state
324 # input_pause_toggle = p
326 # Frame advance when game is paused
327 # input_frame_advance = k
329 # Reset the emulated SNES.
332 # Configures DSP plugin
333 # input_dsp_config = c
336 # input_cheat_index_plus = y
337 # input_cheat_index_minus = t
338 # input_cheat_toggle = u
341 # input_audio_mute = f9
344 # input_screenshot = f8
346 # Netplay flip players.
347 # input_netplay_flip_players = i
349 # Hold for slowmotion.
350 # input_slowmotion = e
352 # Enable other hotkeys.
353 # If this hotkey is bound to either keyboard, joybutton or joyaxis,
354 # all other hotkeys will be disabled unless this hotkey is also held at the same time.
355 # This is useful for RETRO_KEYBOARD centric implementations
356 # which query a large area of the keyboard, where it is not desirable
357 # that hotkeys get in the way.
359 # Alternatively, all hotkeys for keyboard could be disabled by the user.
360 # input_enable_hotkey =
362 # Increases audio volume.
363 # input_volume_up = kp_plus
364 # Decreases audio volume.
365 # input_volume_down = kp_minus
367 # Toggles to next overlay. Wraps around.
368 # input_overlay_next =
372 # Enable rewinding. This will take a performance hit when playing, so it is disabled by default.
373 # rewind_enable = false
375 # Rewinding buffer size in megabytes. Bigger rewinding buffer means you can rewind longer.
376 # The buffer should be approx. 20MB per minute of buffer time.
377 # rewind_buffer_size = 20
379 # Rewind granularity. When rewinding defined number of frames, you can rewind several frames at a time, increasing the rewinding speed.
380 # rewind_granularity = 1
382 # Pause gameplay when window focus is lost.
383 # pause_nonactive = true
385 # Autosaves the non-volatile SRAM at a regular interval. This is disabled by default unless set otherwise.
386 # The interval is measured in seconds. A value of 0 disables autosave.
387 # autosave_interval =
389 # When being client over netplay, use keybinds for player 1.
390 # netplay_client_swap_input = false
392 # Path to XML cheat database (as used by bSNES).
393 # cheat_database_path =
395 # Path to XML cheat config, a file which keeps track of which
396 # cheat settings are used for individual games.
397 # If the file does not exist, it will be created.
398 # cheat_settings_path =
400 # Directory to dump screenshots to.
401 # screenshot_directory =
403 # Records video after CPU video filter.
404 # video_post_filter_record = false
406 # Records output of GPU shaded material if available.
407 # video_gpu_record = false
409 # Screenshots output of GPU shaded material if available.
410 # video_gpu_screenshot = true
412 # Block SRAM from being overwritten when loading save states.
413 # Might potentially lead to buggy games.
414 # block_sram_overwrite = false
416 # When saving a savestate, save state index is automatically increased before
418 # Also, when loading a ROM, the index will be set to the highest existing index.
419 # There is no upper bound on the index.
420 # savestate_auto_index = false
422 # Slowmotion ratio. When slowmotion, game will slow down by factor.
423 # slowmotion_ratio = 3.0
425 # Enable stdin/network command interface.
426 # network_cmd_enable = false
427 # network_cmd_port = 55355
428 # stdin_cmd_enable = false