Homepage Forums Search Search Results for 'hotkey'

Viewing 35 results - 806 through 840 (of 1,077 total)
  • Author
    Search Results
  • trimmtrabb
    Participant

    The file you need to edit is retroarch.cfg in /opt/retropie/configs/all

    Here is mine for example, use it as a template. More config options here:
    https://github.com/libretro/RetroArch/blob/master/retroarch.cfg

    Note ‘joypad_index’, this is the number your gamepad is assigned. Looking at your post above 0 should be right

    input_player1_joypad_index = “0” input_player1_b_btn = “1” input_player1_y_btn = “3” input_player1_select_btn = “8” input_player1_start_btn = “9” input_player1_up_axis = “-5” input_player1_down_axis = “+5” input_player1_left_axis = “-4” input_player1_right_axis = “+4” input_player1_a_btn = “0” input_player1_x_btn = “2” input_player1_l_btn = “4” input_player1_r_btn = “5” input_player1_l2_btn = “6” input_player1_r2_btn = “7” input_player1_l3_btn = “11” input_player1_r3_btn = “12” input_player1_l_x_plus_axis = “+0” input_player1_l_x_minus_axis = “-0” input_player1_l_y_plus_axis = “+1” input_player1_l_y_minus_axis = “-1” input_player1_r_x_plus_axis = “+2” input_player1_r_x_minus_axis = “-2” input_player1_r_y_plus_axis = “+3” input_player1_r_y_minus_axis = “-3” input_enable_hotkey_btn = “8” input_exit_emulator_btn = “9” input_enable_hotkey_btn = “8” input_save_state_btn = “5” input_enable_hotkey_btn = “8” input_load_state_btn = “4” input_enable_hotkey_btn = “8” input_state_slot_increase_btn = “7” input_enable_hotkey_btn = “8” input_state_slot_decrease_btn =”6″ input_enable_hotkey_btn = “8” input_menu_toggle_btn = “3”

    swandog
    Participant

    Connected to the pi using winscp and edited the retropie.cfg but its still not working.

    my retropie.cfg file is as follows. Am I doing something wrong?

    ## Skeleton config file for RetroArch
    
    # Save all save files (*.srm) to this directory. This includes related files like .bsv, .rtc, .psrm, etc ...
    # This will be overridden by explicit command line options.
    # savefile_directory =
    
    # Save all save states (*.state) to this directory.
    # This will be overridden by explicit command line options.
    # savestate_directory =
    
    # If set to a directory, Content which is temporarily extracted
    # will be extracted to this directory.
    # extraction_directory =
    
    # Automatically saves a savestate at the end of RetroArch's lifetime.
    # The path is $SRAM_PATH.auto.
    # RetroArch will automatically load any savestate with this path on startup if savestate_auto_load is set.
    # savestate_auto_save = false
    # savestate_auto_load = true
    
    # Load libretro from a dynamic location for dynamically built RetroArch.
    # This option is mandatory.
    
    # Path to a libretro implementation.
    # libretro_path = "/path/to/libretro.so"
    
    # A directory for where to search for libretro core implementations.
    # libretro_directory =
    
    # Sets log level for libretro cores (GET_LOG_INTERFACE).
    # If a log level issued by a libretro core is below libretro_log_level, it is ignored.
    # DEBUG logs are always ignored unless verbose mode is activated (--verbose).
    # DEBUG = 0, INFO = 1, WARN = 2, ERROR = 3.
    # libretro_log_level = 0
    
    # Enable or disable verbosity level of frontend.
    # log_verbosity = false
    
    # Enable or disable RetroArch performance counters
    # perfcnt_enable = false
    
    # Path to core options config file.
    # This config file is used to expose core-specific options.
    # It will be written to by RetroArch.
    # A default path will be assigned if not set.
    core_options_path = /opt/retropie/configs/all/retroarch-core-options.cfg
    
    # Path to content load history file.
    # RetroArch keeps track of all content loaded in the menu and from CLI directly for convenient quick loading.
    # A default path will be assigned if not set.
    # game_history_path =
    
    # Number of entries that will be kept in content history file.
    # game_history_size = 100
    
    # Sets the "system" directory.
    # Implementations can query for this directory to load BIOSes, system-specific configs, etc.
    system_directory = /home/pi/RetroPie/roms/../BIOS
    
    # Sets start directory for menu content browser.
    # rgui_browser_directory =
    
    # Content directory. Interacts with RETRO_ENVIRONMENT_GET_CONTENT_DIRECTORY.
    # Usually set by developers who bundle libretro/RetroArch apps to point to assets.
    # content_directory =
    
    # Assets directory. This location is queried by default when menu interfaces try to look for
    # loadable assets, etc.
    # assets_directory =
    
    # Sets start directory for menu config browser.
    # rgui_config_directory =
    
    # Show startup screen in menu.
    # Is automatically set to false when seen for the first time.
    # This is only updated in config if config_save_on_exit is set to true, however.
    # rgui_show_start_screen = true
    
    # Flushes config to disk on exit. Useful for menu as settings can be modified.
    # Overwrites the config. #include's and comments are not preserved.
    config_save_on_exit = false
    
    # Load up a specific config file based on the core being used.
    # core_specific_config = false
    
    #### Video
    
    # Video driver to use. "gl", "xvideo", "sdl"
    # video_driver = "gl"
    
    # Which OpenGL context implementation to use.
    # Possible ones for desktop are: glx, x-egl, kms-egl, sdl-gl, wgl.
    # By default, tries to use first suitable driver.
    # video_gl_context =
    
    # Windowed xscale and yscale
    # (Real x res: base_size * xscale * aspect_ratio, real y res: base_size * yscale)
    # video_xscale = 3.0
    # video_yscale = 3.0
    
    # Fullscreen resolution. Resolution of 0 uses the resolution of the desktop.
    # video_fullscreen_x = 0
    # video_fullscreen_y = 0
    
    # Start in fullscreen. Can be changed at runtime.
    # video_fullscreen = false
    
    # If fullscreen, prefer using a windowed fullscreen mode.
    # video_windowed_fullscreen = true
    
    # Which monitor to prefer. 0 (default) means no particular monitor is preferred, 1 and up (1 being first monitor),
    # suggests RetroArch to use that particular monitor.
    # video_monitor_index = 0
    
    # Forcibly disable composition. Only works in Windows Vista/7 for now.
    # video_disable_composition = false
    
    # Video vsync.
    # video_vsync = true
    
    # Attempts to hard-synchronize CPU and GPU. Can reduce latency at cost of performance.
    # video_hard_sync = false
    
    # Sets how many frames CPU can run ahead of GPU when using video_hard_sync.
    # Maximum is 3.
    # video_hard_sync_frames = 0
    
    # Inserts a black frame inbetween frames.
    # Useful for 120 Hz monitors who want to play 60 Hz material with eliminated ghosting.
    # video_refresh_rate should still be configured as if it is a 60 Hz monitor (divide refresh rate by 2).
    # video_black_frame_insertion = false
    
    # Use threaded video driver. Using this might improve performance at possible cost of latency and more video stuttering.
    video_threaded = true
    
    # Use a shared context for HW rendered libretro cores.
    # Avoids having to assume GL state changes inbetween frames.
    # video_shared_context = false
    
    # Smoothens picture with bilinear filtering. Should be disabled if using pixel shaders.
    video_smooth = false
    
    # Forces rendering area to stay equal to content aspect ratio or as defined in video_aspect_ratio.
    # video_force_aspect = true
    
    # Only scales video in integer steps.
    # The base size depends on system-reported geometry and aspect ratio.
    # If video_force_aspect is not set, X/Y will be integer scaled independently.
    # video_scale_integer = false
    
    # A floating point value for video aspect ratio (width / height).
    # If this is not set, aspect ratio is assumed to be automatic.
    # Behavior then is defined by video_aspect_ratio_auto.
    video_aspect_ratio = 1.33
    
    # If this is true and video_aspect_ratio is not set,
    # aspect ratio is decided by libretro implementation.
    # If this is false, 1:1 PAR will always be assumed if video_aspect_ratio is not set.
    # video_aspect_ratio_auto = false
    
    # Forces cropping of overscanned frames.
    # Exact behavior of this option is implementation specific.
    # video_crop_overscan = true 
    
    # Path to shader. Shader can be either Cg, CGP (Cg preset) or GLSL, GLSLP (GLSL preset)
    # video_shader = "/path/to/shader.{cg,cgp,glsl,glslp}"
    
    # Load video_shader on startup.
    # Other shaders can still be loaded later in runtime.
    # video_shader_enable = false
    
    # Defines a directory where shaders (Cg, CGP, GLSL) are kept for easy access.
    video_shader_dir = /opt/retropie/emulators/RetroArch/shader/
    
    # CPU-based video filter. Path to a dynamic library.
    # video_filter =
    
    # Path to a font used for rendering messages. This path must be defined to enable fonts.
    # Do note that the _full_ path of the font is necessary!
    # video_font_path = 
    
    # Size of the font rendered.
    # video_font_size = 32
    
    # Enable usage of OSD messages.
    # video_font_enable = true
    
    # Offset for where messages will be placed on screen. Values are in range 0.0 to 1.0 for both x and y values. 
    # [0.0, 0.0] maps to the lower left corner of the screen.
    # video_message_pos_x = 0.05
    # video_message_pos_y = 0.05
    
    # Color for message. The value is treated as a hexadecimal value.
    # It is a regular RGB hex number, i.e. red is "ff0000".
    # video_message_color = ffffff
    
    # Video refresh rate of your monitor.
    # Used to calculate a suitable audio input rate.
    # video_refresh_rate = 59.95
    
    # Allows libretro cores to set rotation modes.
    # Setting this to false will honor, but ignore this request.
    # This is useful for vertically oriented content where one manually rotates the monitor.
    # video_allow_rotate = true
    
    # Forces a certain rotation of the screen.
    # The rotation is added to rotations which the libretro core sets (see video_allow_rotate).
    # The angle is <value> * 90 degrees counter-clockwise.
    # video_rotation = 0
    
    #### Audio
    
    # Enable audio.
    # audio_enable = true
    
    # Audio output samplerate.
    # audio_out_rate = 48000
    
    # Audio resampler backend. Which audio resampler to use.
    # Default will use "sinc".
    # audio_resampler =
    
    # Audio driver backend. Depending on configuration possible candidates are: alsa, pulse, oss, jack, rsound, roar, openal, sdl, xaudio.
    # audio_driver =
    
    # 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 ...
    # audio_device =
    
    # Audio DSP plugin that processes audio before it's sent to the driver. Path to a dynamic library.
    # audio_dsp_plugin =
    
    # Will sync (block) on audio. Recommended.
    # audio_sync = true
    
    # Desired audio latency in milliseconds. Might not be honored if driver can't provide given latency.
    # audio_latency = 64
    
    # Enable audio rate control.
    # audio_rate_control = true
    
    # Controls audio rate control delta. Defines how much input rate can be adjusted dynamically.
    # Input rate = in_rate * (1.0 +/- audio_rate_control_delta)
    # audio_rate_control_delta = 0.005
    
    # Audio volume. Volume is expressed in dB.
    # 0 dB is normal volume. No gain will be applied.
    # Gain can be controlled in runtime with input_volume_up/input_volume_down.
    # audio_volume = 0.0
    
    #### Overlay
    
    # Enable overlay.
    # input_overlay_enable = false
    
    # Path to input overlay
    # input_overlay =
    
    # Overlay opacity
    # input_overlay_opacity = 1.0
    
    # Overlay scale
    # input_overlay_scale = 1.0
    
    #### Input
    
    # Input driver. Depending on video driver, it might force a different input driver.
    # input_driver = sdl
    
    # Joypad driver. (Valid: linuxraw, sdl, dinput)
    # input_joypad_driver =
    
    # Keyboard layout for input driver if applicable (udev/evdev for now).
    # Syntax is either just layout (e.g. "no"), or a layout and variant separated with colon ("no:nodeadkeys").
    # input_keyboard_layout =
    
    # Defines axis threshold. Possible values are [0.0, 1.0]
    # input_axis_threshold = 0.5
    
    # Enable input auto-detection. Will attempt to autoconfigure
    # joypads, Plug-and-Play style.
    input_autodetect_enable = true
    
    # Directory for joypad autoconfigs (PC).
    # If a joypad is plugged in, that joypad will be autoconfigured if a config file
    # corresponding to that joypad is present in joypad_autoconfig_dir.
    # Input binds which are made explicit (input_playerN_*_btn/axis) will take priority over autoconfigs.
    # Autoconfigs can be created with retroarch-joyconfig, manually, or with a frontend.
    # Requires input_autodetect_enable to be enabled.
    joypad_autoconfig_dir = /opt/retropie/emulators/RetroArch/configs/
    
    # Enable debug input key reporting on-screen.
    # input_debug_enable = false
    
    # Sets which libretro device is used for a player.
    # Devices are indentified with a number.
    # This is normally saved by the menu.
    # Device IDs are found in libretro.h.
    # These settings are overridden by explicit command-line arguments which refer to input devices.
    # None: 0
    # Joypad (RetroPad): 1
    # Mouse: 2
    # Keyboard: 3
    # Generic Lightgun: 4
    # Joypad w/ Analog (RetroPad + Analog sticks): 5
    # Multitap (SNES specific): 257
    # Super Scope (SNES specific): 260
    # Justifier (SNES specific): 516
    # Justifiers (SNES specific): 772
    
    # input_libretro_device_p1 =
    # input_libretro_device_p2 =
    # input_libretro_device_p3 =
    # input_libretro_device_p4 =
    # input_libretro_device_p5 =
    # input_libretro_device_p6 =
    # input_libretro_device_p7 =
    # input_libretro_device_p8 =
    
    # Keyboard input. Will recognize letters ("a" to "z") and the following special keys (where "kp_"
    # is for keypad keys):
    #
    #   left, right, up, down, enter, kp_enter, tab, insert, del, end, home,
    #   rshift, shift, ctrl, alt, space, escape, add, subtract, kp_plus, kp_minus,
    #   f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11, f12,
    #   num0, num1, num2, num3, num4, num5, num6, num7, num8, num9, pageup, pagedown,
    #   keypad0, keypad1, keypad2, keypad3, keypad4, keypad5, keypad6, keypad7, keypad8, keypad9,
    #   period, capslock, numlock, backspace, multiply, divide, print_screen, scroll_lock,
    #   tilde, backquote, pause, quote, comma, minus, slash, semicolon, equals, leftbracket,
    #   backslash, rightbracket, kp_period, kp_equals, rctrl, ralt
    #
    # Keyboard input, Joypad and Joyaxis will all obey the "nul" bind, which disables the bind completely, 
    # rather than relying on a default.
    
    # input_player1_a = x
    # input_player1_b = z
    # input_player1_y = a
    # input_player1_x = s
    # input_player1_start = enter
    # input_player1_select = rshift
    # input_player1_l = q
    # input_player1_r = w
    # input_player1_left = left
    # input_player1_right = right
    # input_player1_up = up
    # input_player1_down = down
    # input_player1_l2 =
    # input_player1_r2 =
    # input_player1_l3 =
    # input_player1_r3 =
    
    # Two analog sticks (DualShock-esque).
    # Bound as usual, however, if a real analog axis is bound,
    # it can be read as a true analog.
    # Positive X axis is right, Positive Y axis is down.
    # input_player1_l_x_plus =
    # input_player1_l_x_minus =
    # input_player1_l_y_plus =
    # input_player1_l_y_minus =
    # input_player1_r_x_plus =
    # input_player1_r_x_minus =
    # input_player1_r_y_plus =
    # input_player1_r_y_minus =
    
    # If desired, it is possible to override which joypads are being used for player 1 through 8.
    # First joypad available is 0.
    # input_player1_joypad_index = 0
    # input_player2_joypad_index = 1
    # input_player3_joypad_index = 2
    # input_player4_joypad_index = 3
    # input_player5_joypad_index = 4
    # input_player6_joypad_index = 5
    # input_player7_joypad_index = 6
    # input_player8_joypad_index = 7
    
    # Joypad buttons.
    # Figure these out by using RetroArch-Phoenix or retroarch-joyconfig.
    # You can use joypad hats with hnxx, where n is the hat, and xx is a string representing direction. 
    # E.g. "h0up"
    
    #input_player1_joypad_index = "0"
    #input_player1_b_btn = "1"
    #input_player1_y_btn = "3"
    #input_player1_select_btn = "8"
    #input_player1_start_btn = "9"
    #input_player1_up_axis = "-5"
    #input_player1_down_axis = "+5"
    #input_player1_left_axis = "-4"
    #input_player1_right_axis = "+4"
    #input_player1_a_btn = "0"
    #input_player1_x_btn = "2"
    #input_player1_l_btn = "4"
    #input_player1_r_btn = "5"
    #input_player1_l2_btn = "6"
    #input_player1_r2_btn = "7"
    #input_player1_l3_btn = "11"
    #input_player1_r3_btn = "12"
    #input_player1_l_x_plus_axis = "+0"
    #input_player1_l_x_minus_axis = "-0"
    #input_player1_l_y_plus_axis = "+1"
    #input_player1_l_y_minus_axis = "-1"
    #input_player1_r_x_plus_axis = "+2"
    #input_player1_r_x_minus_axis = "-2"
    #input_player1_r_y_plus_axis = "+3"
    #input_player1_r_y_minus_axis = "-3"
    
    #input_enable_hotkey_btn = "8"
    #input_exit_emulator_btn = "9"
    
    #input_enable_hotkey_btn = "8"
    #input_save_state_btn = "5"
    
    #input_enable_hotkey_btn = "8"
    #input_load_state_btn = "4"
    
    #input_enable_hotkey_btn = "8"
    #input_state_slot_increase_btn = "7"
    
    #input_enable_hotkey_btn = "8"
    #input_state_slot_decrease_btn ="6"
    
    #input_enable_hotkey_btn = "8"
    #input_menu_toggle_btn = "10" 
    
    # Axis for RetroArch D-Pad. 
    # Needs to be either '+' or '-' in the first character signaling either positive or negative direction of the axis, then the axis number. 
    # Do note that every other input option has the corresponding _btn and _axis binds as well; they are omitted here for clarity.
    # input_player1_left_axis =
    # input_player1_right_axis =
    # input_player1_up_axis =
    # input_player1_down_axis =
    
    # Holding the turbo while pressing another button will let the button enter a turbo mode
    # where the button state is modulated with a periodic signal.
    # The modulation stops when the button itself (not turbo button) is released.
    # input_player1_turbo =
    
    # Describes the period and how long of that period a turbo-enabled button should behave.
    # Numbers are described in frames.
    # input_turbo_period = 6
    # input_turbo_duty_cycle = 3
    
    # This goes all the way to player 8 (*_player2_*, *_player3_*, etc), but omitted for clarity.
    # All input binds have corresponding binds for keyboard (none), joykeys (_btn) and joyaxes (_axis) as well.
    
    # Toggles fullscreen.
    # input_toggle_fullscreen = f
    
    # Saves state.
    # input_save_state = f2
    # Loads state.
    # input_load_state = f4
    
    # State slots. With slot set to 0, save state name is *.state (or whatever defined on commandline).
    # When slot is != 0, path will be $path%d, where %d is slot number.
    # input_state_slot_increase = f7
    # input_state_slot_decrease = f6
    
    # Toggles between fast-forwarding and normal speed.
    # input_toggle_fast_forward = space
    
    # Hold for fast-forward. Releasing button disables fast-forward.
    # input_hold_fast_forward = l
    
    # Key to exit RetroArch cleanly. 
    # Killing it in any hard way (SIGKILL, etc) will terminate RetroArch without saving RAM, etc.
    # On Unix-likes, SIGINT/SIGTERM allows a clean deinitialization.
    input_exit_emulator = escape
    
    # Applies next and previous shader in directory.
    input_shader_next = m
    input_shader_prev = n
    
    # Hold button down to rewind. Rewinding must be enabled.
    input_rewind = r
    
    # Toggle between recording and not.
    # input_movie_record_toggle = o
    
    # Toggle between paused and non-paused state
    # input_pause_toggle = p
    
    # Frame advance when content is paused
    # input_frame_advance = k
    
    # Reset the content.
    # input_reset = h
    
    # Cheats.
    # input_cheat_index_plus = y
    # input_cheat_index_minus = t
    # input_cheat_toggle = u
    
    # Mute/unmute audio
    # input_audio_mute = f9
    
    # Take screenshot
    # input_screenshot = f8
    
    # Netplay flip players.
    # input_netplay_flip_players = i
    
    # Hold for slowmotion.
    # input_slowmotion = e
    
    # Enable other hotkeys.
    # If this hotkey is bound to either keyboard, joybutton or joyaxis,
    # all other hotkeys will be disabled unless this hotkey is also held at the same time.
    # This is useful for RETRO_KEYBOARD centric implementations
    # which query a large area of the keyboard, where it is not desirable
    # that hotkeys get in the way.
    
    # Alternatively, all hotkeys for keyboard could be disabled by the user.
    input_enable_hotkey = escape
    
    # Increases audio volume.
    # input_volume_up = kp_plus
    # Decreases audio volume.
    # input_volume_down = kp_minus
    
    # Toggles to next overlay. Wraps around.
    # input_overlay_next =
    
    # Toggles eject for disks. Used for multiple-disk content.
    # input_disk_eject_toggle =
    
    # Cycles through disk images. Use after ejecting.
    # Complete by toggling eject again.
    # input_disk_next =
    
    # Toggles menu.
    # input_menu_toggle = f1
    
    # Toggles mouse grab. When mouse is grabbed, RetroArch hides the mouse,
    # and keeps the mouse pointer inside the window to allow relative mouse input
    # to work better.
    # input_grab_mouse_toggle = f11
    
    #### Menu
    
    # Menu driver to use. "rgui", "lakka", etc. 
    # menu_driver = "rgui"
    
    #### Camera
    
    # Override the default camera device the camera driver uses. This is driver dependant.
    # camera_device =
    
    # Override the default privacy permission for cores that want to access camera services. Is "false" by default.
    # camera_allow = false
    
    #### Location
    
    # Override the default privacy permission for cores that want to access location services. Is "false" by default.
    # location_allow = false
    
    #### Netplay
    
    # When being client over netplay, use keybinds for player 1.
    # netplay_client_swap_input = false
    
    # The nickname being used for playing online.
    # netplay_nickname = 
    
    # The amount of delay frames to use for netplay. Increasing this value will increase
    # performance, but introduce more latency.
    # netplay_delay_frames = 0
    
    # Netplay mode for the current user.
    # false is Server, true is Client.
    # netplay_mode = false
    
    # Enable or disable spectator mode for the player during netplay.
    # netplay_spectator_mode_enable = false
    
    # The IP Address of the host to connect to.
    # netplay_ip_address = 
    
    # The port of the host IP Address. Can be either a TCP or an UDP port.
    # netplay_ip_port = 55435
    
    #### Misc
    
    # Enable rewinding. This will take a performance hit when playing, so it is disabled by default.
    rewind_enable = false
    
    # Rewinding buffer size in megabytes. Bigger rewinding buffer means you can rewind longer.
    # The buffer should be approx. 20MB per minute of buffer time.
    rewind_buffer_size = 10
    
    # Rewind granularity. When rewinding defined number of frames, you can rewind several frames at a time, increasing the rewinding speed.
    rewind_granularity = 2
    
    # Pause gameplay when window focus is lost.
    # pause_nonactive = true
    
    # Autosaves the non-volatile SRAM at a regular interval. This is disabled by default unless set otherwise.
    # The interval is measured in seconds. A value of 0 disables autosave.
    # autosave_interval =
    
    # Path to XML cheat database (as used by bSNES).
    # cheat_database_path =
    
    # Path to XML cheat config, a file which keeps track of which
    # cheat settings are used for individual games.
    # If the file does not exist, it will be created.
    # cheat_settings_path =
    
    # Directory to dump screenshots to.
    # screenshot_directory =
    
    # Records video after CPU video filter.
    # video_post_filter_record = false
    
    # Records output of GPU shaded material if available.
    # video_gpu_record = false
    
    # Screenshots output of GPU shaded material if available.
    video_gpu_screenshot = true
    
    # Block SRAM from being overwritten when loading save states.
    # Might potentially lead to buggy games.
    # block_sram_overwrite = false
    
    # When saving a savestate, save state index is automatically increased before
    # it is saved.
    # Also, when loading content, the index will be set to the highest existing index.
    # There is no upper bound on the index.
    # savestate_auto_index = false
    
    # Slowmotion ratio. When slowmotion, content will slow down by factor.
    # slowmotion_ratio = 3.0
    
    # The maximum rate at which content will be run when using fast forward. (E.g. 5.0 for 60 fps content => 300 fps cap).
    # RetroArch will go to sleep to ensure that the maximum rate will not be exceeded.
    # Do not rely on this cap to be perfectly accurate.
    # A negative ratio equals no FPS cap.
    # fastforward_ratio = -1.0
    
    # Enable stdin/network command interface.
    # network_cmd_enable = false
    # network_cmd_port = 55355
    # stdin_cmd_enable = false
    #82894
    da-gonzo
    Participant

    [quote=82892]Can you explain how you exit games with just the controller. I believe this part of your config is how you set it up:
    input_enable_hotkey_btn = “6”
    input_exit_emulator_btn = “7”
    I just want to know how you actually do it. Do you hold down Select and then press Start? If so, what about games like Super Mario World where you have to hold down both of those buttons to exit a level.
    Just curious how this actually works.
    Thanks,
    P[/quote]

    That is how that works and would override the function in the game you mentioned. To avoid this, you can map the hot key to one of the top buttons instead of select.

    #82892
    pdelponte
    Participant

    [quote=81952]My config for iBuffalo is attached.

    From:
    /opt/retropie/emulators/RetroArch/configs

    I’ve renamed it .txt
    [/quote]

    Can you explain how you exit games with just the controller. I believe this part of your config is how you set it up:

    input_enable_hotkey_btn = “6”
    input_exit_emulator_btn = “7”

    I just want to know how you actually do it. Do you hold down Select and then press Start? If so, what about games like Super Mario World where you have to hold down both of those buttons to exit a level.

    Just curious how this actually works.

    Thanks,
    P

    daspferd
    Participant

    Hi,

    most of the time (not always) after selecting the game I get a black screen. After I remove one of my two controllers the emulator starts immediately (I see the three boxes in the right bottom corner and the game gets loaded). Unfortunately in most games if I unplugged the second controller the 2nd player can’t move within the game.

    I use a B+ and installed the “newest” retropie a month ago. I use some fake playstation usb controllers which are recognized as dragonrise. I also tried to configure the opt/retropie/configs/all/retroarch.cfg and even the cfg in the emulators directory. But my guess it that it is ignored because the hotkey + exit is also not working.

    couchpotatotalk
    Participant

    I followed the instructions found in this video to config my controller but ran into some issues.

    I am using a Buffalo Classic USB gamepad. After I finish the mapping tool some of my buttons are backwards. When I viewed the USB,2-axis8-buttongamepad.cfg file it showed ABXY wrong, I tried to manually change them to what I have below but the buttons were still wrong in game. What am I doing wrong? Start/Select also didn’t work at all in game, nor did the quit game shortcut I set up. Everything else works fine on my generic SNES USB controller.

    input_device = “USB,2-axis 8-button gamepad ”
    input_driver = “udev”
    input_b_btn = “2”
    input_y_btn = “3”
    input_select_btn = “6”
    input_start_btn = “7”
    input_up_axis = “-1”
    input_down_axis = “+1”
    input_left_axis = “-0”
    input_right_axis = “+0”
    input_a_btn = “1”
    input_x_btn = “0”
    input_l_btn = “4”
    input_r_btn = “5”
    input_enable_hotkey_btn = “6”
    input_exit_emulator_btn = “7”

    #82793
    white-elephant
    Participant

    Hi,

    Just tackled a similar issue, with a wired GPIO nes pads and USB snes pads.

    What made them all work with properly was:

    1. deleting (or commenting) the “input_player#_whatever=” in the
    /opt/retropie/configs/all/retroarch.cfg
    2. making seperate configuration files for each type of joystick in the
    /opt/retropie/emulators/RetroArch/configs/

    for example, I made this file for my USB snes pad:
    /opt/retropie/emulators/RetroArch/configs/USBGamepad.cfg

    
    input_device = "USB Gamepad "
    input_driver = "udev"
    
    input_a_btn = "1"
    input_b_btn = "2"
    input_x_btn = "0"
    input_y_btn = "3"
    input_l_btn = "4"
    input_r_btn = "5"
    input_select_btn = "8"
    input_start_btn = "9"
    input_up_axis = "-1"
    input_down_axis = "+1"
    input_left_axis = "-0"
    input_right_axis = "+0"
    
    input_enable_hotkey_btn = "8"
    input_exit_emulator_btn = "9"

    and my GPIO nes controller has another file (it’s a Japanese Famicom, and different from US wiring)
    /opt/retropie/emulators/RetroArch/configs/NESpad.cfg

    
    input_device = "NES pad"
    input_driver = "udev"
    
    input_b_btn = "1"
    input_select_btn = "2"
    input_start_btn = "3"
    input_up_axis = "-1"
    input_down_axis = "+1"
    input_left_axis = "-0"
    input_right_axis = "+0"
    input_a_btn = "0"
    
    input_enable_hotkey_btn = "2"
    input_exit_emulator_btn = "3"

    * I got the name of the device from running:
    udevadm info --query=all --n /dev/input/js0 --attribute-walk

    juxtaposed11
    Participant

    Note: I’ve tried including and removing quotes on the hotkeys, to no avail. The controller I’m using is the Buffalo Classic USB Gamepad .

    Thanks in advance for any advice!

    juxtaposed11
    Participant

    Hello!

    When I first built my RetroPie, I used a generic USB SNES controller and was able to get the hotkey functionality to work. When I switched to a new controller, I was able to get all of the button inputs to work successfully, but I can’t get the hotkeys to work properly. See below for an excerpt from my retroarch.cfg file (taken from /opt/retropie/configs/all).

    I verify that all buttons work, specifically start and select, but I’m not having any luck.

    Questions:
    1. Do you think I should create a brand new config file and start from scratch?
    2. If so, how can I do that? I’m happy to check out other links.
    3. Is there any other config file that I could update?
    4. Do you notice any issues with the configs below?
    5. Any other suggestions?

    input_player1_joypad_index = “0”
    input_player1_b_btn = “1”
    input_player1_y_btn = “3”
    input_player1_select_btn = “6”
    input_player1_start_btn = “7”
    input_player1_up_axis = “-1”
    input_player1_down_axis = “+1”
    input_player1_left_axis = “-0”
    input_player1_right_axis = “+0”
    input_player1_a_btn = “0”
    input_player1_x_btn = “2”
    input_player1_l_btn = “4”
    input_player1_r_btn = “5”
    input_player1_l2_btn = “4”
    input_player1_r2_btn = “4”
    input_player1_l3_btn = “4”
    input_player1_r3_btn = “4”
    input_player1_l_x_plus_btn = “4”
    input_player1_l_x_minus_btn = “4”
    input_player1_l_y_plus_btn = “4”
    input_player1_l_y_minus_btn = “4”
    input_player1_r_x_plus_btn = “4”
    input_player1_r_x_minus_btn = “4”
    input_player1_r_y_plus_btn = “4”
    input_player1_r_y_minus_btn = “4”

    input_player2_joypad_index = “1”
    input_player2_b_btn = “1”
    input_player2_y_btn = “3”
    input_player2_select_btn = “6”
    input_player2_start_btn = “7”
    input_player2_up_axis = “-1”
    input_player2_down_axis = “+1”
    input_player2_left_axis = “-0”
    input_player2_right_axis = “+0”
    input_player2_a_btn = “0”
    input_player2_x_btn = “2”
    input_player2_l_btn = “4”
    input_player2_r_btn = “5”
    input_player2_l2_btn = “4”
    input_player2_r2_btn = “4”
    input_player2_l3_btn = “4”
    input_player2_r3_btn = “4”
    input_player2_l_x_plus_btn = “4”
    input_player2_l_x_minus_btn = “4”
    input_player2_l_y_plus_btn = “4”
    input_player2_l_y_minus_btn = “4”
    input_player2_r_x_plus_btn = “4”
    input_player2_r_x_minus_btn = “4”
    input_player2_r_y_plus_btn = “4”
    input_player2_r_y_minus_btn = “4”

    input_enable_hotkey_btn = 6
    input_exit_emulator_btn = 7
    input_save_state_btn = 4
    input_load_state_btn = 5

    Note: Player 2 controller is the exact same controller model.

      Specs:

    Version: RetroPie 2.3
    Controller:

    #82668
    Anonymous
    Inactive

    I could help with mapping out the same controller to use different keys in the other emulators. But I am at a loss as to how to get RetroArch to understand what controller needs to be read in the main config file when you plug in a PS3 controller as player one, and ignore the mappings for the snes usb controller you had plugged in earlier.
    I also noticed there is a slight problem with mapping the PS3 controller for my build as if it writes it’s own config no matter what I change, I suspect it has something to do with not having enough power draw to the controller from the usb port (ps3 controller draws 300amps, but the usb from the pi can only supply 100amps).
    My guess is when you want to map a certain controller you would use input_device somewhere in the file?:

    # SNES CONTROLLERUSB
    input_player1_joypad_index = 0
    <strong>input_device = "USB,2-axis 8-button gamepad  "</strong>
    input_driver = "udev"
    input_b_btn = "1"
    input_y_btn = "3"
    input_select_btn = "6"
    input_start_btn = "7"
    input_up_axis = "-1"
    input_down_axis = "+1"
    input_left_axis = "-0"
    input_right_axis = "+0"
    input_a_btn = "0"
    input_x_btn = "2"
    input_l_btn = "4"
    input_r_btn = "5"
    
    input_enable_hotkey_btn = "6"
    input_exit_emulator_btn = "7"
    
    # PS3 CONTROLLERUSB
    input_player1_joypad_index = 0
    <strong>input_device = "Sony PLAYSTATION(R)3 Controller"</strong>
    input_driver = "udev"
    input_b_btn = "14"
    input_y_btn = "15"
    input_select_btn = "0"
    input_start_btn = "3"
    input_up_btn = "4"
    input_down_btn = "6"
    input_left_btn = "7"
    input_right_btn = "5"
    input_a_btn = "13"
    input_x_btn = "12"
    input_l_btn = "10"
    input_r_btn = "11"
    input_l2_btn = "8"
    input_r2_btn = "9"
    input_l_x_plus_axis = "+0"
    input_l_x_minus_axis = "-0"
    input_l_y_plus_axis = "+1"
    input_l_y_minus_axis = "-1"
    input_r_x_plus_axis = "+2"
    input_r_x_minus_axis = "-2"
    input_r_y_plus_axis = "+3"
    input_r_y_minus_axis = "-3"

    *This is an example config and by no means how I use mine.*
    But then the problem starts as to which hotkeys get mapped to what controller? Because 6 and 7 are down and left on the ps3 controller, & select-start on the snes controller. So you try and map only the controls to the PS3 controller to be used with the PSX emulator inside the PSX Retroarch config file, right? Wrong! It still takes hotkeys from your main config file, and another config file from your controllers folder in the Retroarch emulator folder. Fine so you delete the controls in the main file, and also the controller config, but leave the file how you want it inside the PSX emu config, Wrong again!
    My main problem is no matter which files I manipulate, or even delete…I still get odd anomalies with using my PS3 controller in PSX Retroarch that forces the controller to use weird mappings even though I specifically set up the mappings I wanted for just that emulator with nothing else connected>
    I press R3 and it acts like TRIANGLE, I press L3 it acts like X…so I swap them, boot the game again and they are supposed to be switched but what do you know they register the same input anyway. I hook up my snes usb controller, delete some hotkeys from the PSX emulator, and add some back for the snes controller, and Bam! it works flawless.
    So in closing i am looking for a solution in the config file that would make it easy to play with what config you write and for Retroarch to actually use the correct one for the controller attached at the time…seems easy enough right?

    Anonymous
    Inactive

    To fix an unanswered old post:
    Find this line and make sure it is uncommented>

    # Hold button down to rewind. Rewinding must be enabled.
    input_rewind = r

    Next comment these lines so they look like this>

    #### Misc
    
    # Enable rewinding. This will take a performance hit when playing, so it is disabled by default.
    # rewind_enable = true
    
    # Rewinding buffer size in megabytes. Bigger rewinding buffer means you can rewind longer.
    # The buffer should be approx. 20MB per minute of buffer time.
    # rewind_buffer_size = 10
    
    # Rewind granularity. When rewinding defined number of frames, you can rewind several frames at a time, increasing the rewinding speed.
    # rewind_granularity = 2

    Now at the bottom of your file add this>

    rewind_enable = true
    rewind_buffer_size = 3
    rewind_granularity = 2
    input_enable_hotkey_btn = "6"
    input_rewind_btn = "3"

    Replace the input_rewind_btn = “3” with whatever button you want to map it to. In my case it’s Select+Y.
    Now could anyone help me figure out why fast forward does not work no matter what I do?
    Hope that helps someone who is googling for an answer.

    electromaster64
    Participant

    Whenever I press the start button yellow text appears that says, “Starting Movie Record to “/home/pi/RetroPie/roms” also the player two left and down control a shader function as well as several other keys have strange functions in emulators.

    I have gone through
    sudo nano /opt/retropie/configs/all/retroarch.cfg
    and deleted all the hotkey functions and have even tried to use different keyboard keys for the start button and player 2 left and down but no matter what key I assign that key will initialize a movie recording. How do I fix this? I am using a Ultimarc MiniPAC.

    #82462
    btack
    Participant

    Did you run the setup script and register the controller? After that make sure you’re retroarch. Cfg file is pointed to the correct directory for auto detect configs /home/pi/RetroPie-Setup/configs you can also edit that file to your liking (enable hotkeys and what not) hope this helps

    My retroarch.cfg file was looking in the wrong spot for the auto config files

    electromaster64
    Participant

    I went through the
    sudo nano /opt/retropie/configs/all/retroarch.cfg
    and deleted all of the hotkeys like video record, reset, shader, slow motion, etcetera but when I press those keys they still function like I didn’t delete them in retroarch.cfg. How do I stop this? I need those keys to run my Ultimarc MiniPAC controller setup.

    escher
    Participant

    I’ve been throug the same problem. I’m building an Arcade machine and using the Zero Delay USB encoder.

    I’ve managed to get the exit btn working by adding the hotkey and exit_btn params in the SNES config file!

    #82373
    mrdacosta
    Participant

    My start button is still “1” player 1 coin “5”. I would load up mame and use the tab function to be able to set the buttons, it will still save for the Mame

    but here is my config as well Im playing witht the snes set up at the moment

    ## Skeleton config file for RetroArch

    # Save all save files (*.srm) to this directory. This includes related files like .bsv, .rtc, .psrm, etc …
    # This will be overridden by explicit command line options.
    # savefile_directory =

    # Save all save states (*.state) to this directory.
    # This will be overridden by explicit command line options.
    # savestate_directory =

    # If set to a directory, Content which is temporarily extracted
    # will be extracted to this directory.
    # extraction_directory =

    # Automatically saves a savestate at the end of RetroArch’s lifetime.
    # The path is $SRAM_PATH.auto.
    # RetroArch will automatically load any savestate with this path on startup if savestate_auto_load is set.
    # savestate_auto_save = false
    # savestate_auto_load = true

    # Load libretro from a dynamic location for dynamically built RetroArch.
    # This option is mandatory.

    # Path to a libretro implementation.
    # libretro_path = “/path/to/libretro.so”

    # A directory for where to search for libretro core implementations.
    # libretro_directory =

    # Sets log level for libretro cores (GET_LOG_INTERFACE).
    # If a log level issued by a libretro core is below libretro_log_level, it is ignored.
    # DEBUG logs are always ignored unless verbose mode is activated (–verbose).
    # DEBUG = 0, INFO = 1, WARN = 2, ERROR = 3.
    # libretro_log_level = 0

    # Enable or disable verbosity level of frontend.
    # log_verbosity = false

    # Enable or disable RetroArch performance counters
    # perfcnt_enable = false

    # Path to core options config file.
    # This config file is used to expose core-specific options.
    # It will be written to by RetroArch.
    # A default path will be assigned if not set.
    core_options_path = /opt/retropie/configs/all/retroarch-core-options.cfg

    # Path to content load history file.
    # RetroArch keeps track of all content loaded in the menu and from CLI directly for convenient quick loading.
    # A default path will be assigned if not set.
    # game_history_path =

    # Number of entries that will be kept in content history file.
    # game_history_size = 100

    # Sets the “system” directory.
    # Implementations can query for this directory to load BIOSes, system-specific configs, etc.
    system_directory = /home/pi/RetroPie/roms/../BIOS

    # Sets start directory for menu content browser.
    # rgui_browser_directory =

    # Content directory. Interacts with RETRO_ENVIRONMENT_GET_CONTENT_DIRECTORY.
    # Usually set by developers who bundle libretro/RetroArch apps to point to assets.
    # content_directory =

    # Assets directory. This location is queried by default when menu interfaces try to look for
    # loadable assets, etc.
    # assets_directory =

    # Sets start directory for menu config browser.
    # rgui_config_directory =

    # Show startup screen in menu.
    # Is automatically set to false when seen for the first time.
    # This is only updated in config if config_save_on_exit is set to true, however.
    # rgui_show_start_screen = true

    # Flushes config to disk on exit. Useful for menu as settings can be modified.
    # Overwrites the config. #include’s and comments are not preserved.
    config_save_on_exit = false

    # Load up a specific config file based on the core being used.
    # core_specific_config = false

    #### Video

    # Video driver to use. “gl”, “xvideo”, “sdl”
    # video_driver = “gl”

    # Which OpenGL context implementation to use.
    # Possible ones for desktop are: glx, x-egl, kms-egl, sdl-gl, wgl.
    # By default, tries to use first suitable driver.
    # video_gl_context =

    # Windowed xscale and yscale
    # (Real x res: base_size * xscale * aspect_ratio, real y res: base_size * yscale)
    # video_xscale = 3.0
    # video_yscale = 3.0

    # Fullscreen resolution. Resolution of 0 uses the resolution of the desktop.
    # video_fullscreen_x = 0
    # video_fullscreen_y = 0

    # Start in fullscreen. Can be changed at runtime.
    video_fullscreen = true

    # If fullscreen, prefer using a windowed fullscreen mode.
    # video_windowed_fullscreen = true

    # Which monitor to prefer. 0 (default) means no particular monitor is preferred, 1 and up (1 being first monitor),
    # suggests RetroArch to use that particular monitor.
    # video_monitor_index = 0

    # Forcibly disable composition. Only works in Windows Vista/7 for now.
    # video_disable_composition = false

    # Video vsync.
    # video_vsync = true

    # Attempts to hard-synchronize CPU and GPU. Can reduce latency at cost of performance.
    # video_hard_sync = false

    # Sets how many frames CPU can run ahead of GPU when using video_hard_sync.
    # Maximum is 3.
    # video_hard_sync_frames = 0

    # Inserts a black frame inbetween frames.
    # Useful for 120 Hz monitors who want to play 60 Hz material with eliminated ghosting.
    # video_refresh_rate should still be configured as if it is a 60 Hz monitor (divide refresh rate by 2).
    # video_black_frame_insertion = false

    # Use threaded video driver. Using this might improve performance at possible cost of latency and more video stuttering.
    video_threaded = true

    # Use a shared context for HW rendered libretro cores.
    # Avoids having to assume GL state changes inbetween frames.
    # video_shared_context = false

    # Smoothens picture with bilinear filtering. Should be disabled if using pixel shaders.
    video_smooth = false

    # Forces rendering area to stay equal to content aspect ratio or as defined in video_aspect_ratio.
    video_force_aspect = false

    # Only scales video in integer steps.
    # The base size depends on system-reported geometry and aspect ratio.
    # If video_force_aspect is not set, X/Y will be integer scaled independently.
    # video_scale_integer = false

    # A floating point value for video aspect ratio (width / height).
    # If this is not set, aspect ratio is assumed to be automatic.
    # Behavior then is defined by video_aspect_ratio_auto.
    video_aspect_ratio = 1.33

    # If this is true and video_aspect_ratio is not set,
    # aspect ratio is decided by libretro implementation.
    # If this is false, 1:1 PAR will always be assumed if video_aspect_ratio is not set.
    video_aspect_ratio_auto = true

    # Forces cropping of overscanned frames.
    # Exact behavior of this option is implementation specific.
    # video_crop_overscan = true

    # Path to shader. Shader can be either Cg, CGP (Cg preset) or GLSL, GLSLP (GLSL preset)
    # video_shader = “/path/to/shader.{cg,cgp,glsl,glslp}”

    # Load video_shader on startup.
    # Other shaders can still be loaded later in runtime.
    # video_shader_enable = false

    # Defines a directory where shaders (Cg, CGP, GLSL) are kept for easy access.
    video_shader_dir = /opt/retropie/emulators/RetroArch/shader/

    # CPU-based video filter. Path to a dynamic library.
    # video_filter =

    # Path to a font used for rendering messages. This path must be defined to enable fonts.
    # Do note that the _full_ path of the font is necessary!
    # video_font_path =

    # Size of the font rendered.
    # video_font_size = 32

    # Enable usage of OSD messages.
    # video_font_enable = true

    # Offset for where messages will be placed on screen. Values are in range 0.0 to 1.0 for both x and y values.
    # [0.0, 0.0] maps to the lower left corner of the screen.
    # video_message_pos_x = 0.05
    # video_message_pos_y = 0.05

    # Color for message. The value is treated as a hexadecimal value.
    # It is a regular RGB hex number, i.e. red is “ff0000”.
    # video_message_color = ffffff

    # Video refresh rate of your monitor.
    # Used to calculate a suitable audio input rate.
    # video_refresh_rate = 59.95

    # Allows libretro cores to set rotation modes.
    # Setting this to false will honor, but ignore this request.
    # This is useful for vertically oriented content where one manually rotates the monitor.
    # video_allow_rotate = true

    # Forces a certain rotation of the screen.
    # The rotation is added to rotations which the libretro core sets (see video_allow_rotate).
    # The angle is <value> * 90 degrees counter-clockwise.
    # video_rotation = 0

    #### Audio

    # Enable audio.
    # audio_enable = true

    # Audio output samplerate.
    # audio_out_rate = 48000

    # Audio resampler backend. Which audio resampler to use.
    # Default will use “sinc”.
    # audio_resampler =

    # Audio driver backend. Depending on configuration possible candidates are: alsa, pulse, oss, jack, rsound, roar, openal, sdl, xaudio.
    # audio_driver =

    # 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 …
    # audio_device =

    # Audio DSP plugin that processes audio before it’s sent to the driver. Path to a dynamic library.
    # audio_dsp_plugin =

    # Will sync (block) on audio. Recommended.
    # audio_sync = true

    # Desired audio latency in milliseconds. Might not be honored if driver can’t provide given latency.
    # audio_latency = 64

    # Enable audio rate control.
    # audio_rate_control = true

    # Controls audio rate control delta. Defines how much input rate can be adjusted dynamically.
    # Input rate = in_rate * (1.0 +/- audio_rate_control_delta)
    # audio_rate_control_delta = 0.005

    # Audio volume. Volume is expressed in dB.
    # 0 dB is normal volume. No gain will be applied.
    # Gain can be controlled in runtime with input_volume_up/input_volume_down.
    audio_volume = 3.5

    #### Overlay

    # Enable overlay.
    # input_overlay_enable = false

    # Path to input overlay
    # input_overlay =

    # Overlay opacity
    # input_overlay_opacity = 1.0

    # Overlay scale
    # input_overlay_scale = 1.0

    #### Input

    # Input driver. Depending on video driver, it might force a different input driver.
    # input_driver = sdl

    # Joypad driver. (Valid: linuxraw, sdl, dinput)
    # input_joypad_driver =

    # Keyboard layout for input driver if applicable (udev/evdev for now).
    # Syntax is either just layout (e.g. “no”), or a layout and variant separated with colon (“no:nodeadkeys”).
    # input_keyboard_layout =

    # Defines axis threshold. Possible values are [0.0, 1.0]
    # input_axis_threshold = 0.5

    # Enable input auto-detection. Will attempt to autoconfigure
    # joypads, Plug-and-Play style.
    input_autodetect_enable = true

    # Directory for joypad autoconfigs (PC).
    # If a joypad is plugged in, that joypad will be autoconfigured if a config file
    # corresponding to that joypad is present in joypad_autoconfig_dir.
    # Input binds which are made explicit (input_playerN_*_btn/axis) will take priority over autoconfigs.
    # Autoconfigs can be created with retroarch-joyconfig, manually, or with a frontend.
    # Requires input_autodetect_enable to be enabled.
    joypad_autoconfig_dir = /opt/retropie/emulators/RetroArch/configs/

    # Enable debug input key reporting on-screen.
    # input_debug_enable = false

    # Sets which libretro device is used for a player.
    # Devices are indentified with a number.
    # This is normally saved by the menu.
    # Device IDs are found in libretro.h.
    # These settings are overridden by explicit command-line arguments which refer to input devices.
    # None: 0
    # Joypad (RetroPad): 1
    # Mouse: 2
    # Keyboard: 3
    # Generic Lightgun: 4
    # Joypad w/ Analog (RetroPad + Analog sticks): 5
    # Multitap (SNES specific): 257
    # Super Scope (SNES specific): 260
    # Justifier (SNES specific): 516
    # Justifiers (SNES specific): 772

    # input_libretro_device_p1 =
    # input_libretro_device_p2 =
    # input_libretro_device_p3 =
    # input_libretro_device_p4 =
    # input_libretro_device_p5 =
    # input_libretro_device_p6 =
    # input_libretro_device_p7 =
    # input_libretro_device_p8 =

    # Keyboard input. Will recognize letters (“a” to “z”) and the following special keys (where “kp_”
    # is for keypad keys):
    #
    # left, right, up, down, enter, kp_enter, tab, insert, del, end, home,
    # rshift, shift, ctrl, alt, space, escape, add, subtract, kp_plus, kp_minus,
    # f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11, f12,
    # num0, num1, num2, num3, num4, num5, num6, num7, num8, num9, pageup, pagedown,
    # keypad0, keypad1, keypad2, keypad3, keypad4, keypad5, keypad6, keypad7, keypad8, keypad9,
    # period, capslock, numlock, backspace, multiply, divide, print_screen, scroll_lock,
    # tilde, backquote, pause, quote, comma, minus, slash, semicolon, equals, leftbracket,
    # backslash, rightbracket, kp_period, kp_equals, rctrl, ralt
    #
    # Keyboard input, Joypad and Joyaxis will all obey the “nul” bind, which disables the bind completely,
    # rather than relying on a default.
    input_player1_a = x
    input_player1_b = b
    input_player1_y = a
    input_player1_x = s
    input_player1_start = 1
    input_player1_select = 5
    input_player1_l = q
    input_player1_r = w
    input_player1_left = left
    input_player1_right = right
    input_player1_up = up
    input_player1_down = down
    # input_player1_l2 =
    # input_player1_r2 =
    # input_player1_l3 =
    # input_player1_r3 =
    # Two analog sticks (DualShock-esque).
    # Bound as usual, however, if a real analog axis is bound,
    # it can be read as a true analog.
    # Positive X axis is right, Positive Y axis is down.
    # input_player1_l_x_plus =
    # input_player1_l_x_minus =
    # input_player1_l_y_plus =
    # input_player1_l_y_minus =
    # input_player1_r_x_plus =
    # input_player1_r_x_minus =
    # input_player1_r_y_plus =
    # input_player1_r_y_minus =

    # If desired, it is possible to override which joypads are being used for player 1 through 8.
    # First joypad available is 0.
    # input_player1_joypad_index = 0
    # input_player2_joypad_index = 1
    # input_player3_joypad_index = 2
    # input_player4_joypad_index = 3
    # input_player5_joypad_index = 4
    # input_player6_joypad_index = 5
    # input_player7_joypad_index = 6
    # input_player8_joypad_index = 7

    # Joypad buttons.
    # Figure these out by using RetroArch-Phoenix or retroarch-joyconfig.
    # You can use joypad hats with hnxx, where n is the hat, and xx is a string representing direction.
    # E.g. “h0up”

    input_player1_joypad_index = “0”
    input_player1_a = x
    input_player1_b = b
    input_player1_y = a
    input_player1_x = s
    input_player1_start = 1
    input_player1_select = 5
    input_player1_l = q
    input_player1_r = w
    input_player1_left = left
    input_player1_right = right
    input_player1_up = up
    input_player1_down = down

    input_player2_joypad_index = “1”
    input_player2_a = z
    input_player2_b = u
    input_player2_y = n
    input_player2_x = i
    input_player2_start = 2
    input_player2_select = 6
    input_player2_l = m
    input_player2_r = k
    input_player2_left = D
    input_player2_right = g
    input_player2_up = r
    input_player2_down = f

    # Axis for RetroArch D-Pad.
    # Needs to be either ‘+’ or ‘-‘ in the first character signaling either positive or negative direction of the axis, then the axis number.
    # Do note that every other input option has the corresponding _btn and _axis binds as well; they are omitted here for clarity.
    # input_player1_left_axis =
    # input_player1_rig2222kht_axis =
    # input_player1_up_axis =
    # input_player1_down_axis =

    # Holding the turbo while pressing another button will let the button enter a turbo mode
    # where the button state is modulated with a periodic signal.
    # The modulation stops when the button itself (not turbo button) is released.
    # input_player1_turbo =

    # Describes the period and how long of that period a turbo-enabled button should behave.
    # Numbers are described in frames.
    # input_turbo_period = 6
    # input_turbo_duty_cycle = 3

    # This goes all the way to player 8 (*_player2_*, *_player3_*, etc), but omitted for clarity.
    # All input binds have corresponding binds for keyboard (none), joykeys (_btn) and joyaxes (_axis) as well.

    # Toggles fullscreen.
    # input_toggle_fullscreen = f

    # Saves state.
    # input_save_state = f2
    # Loads state.
    # input_load_state = f4

    # State slots. With slot set to 0, save state name is *.state (or whatever defined on commandline).
    # When slot is != 0, path will be $path%d, where %d is slot number.
    # input_state_slot_increase = f7
    # input_state_slot_decrease = f6

    # Toggles between fast-forwarding and normal speed.
    # input_toggle_fast_forward = space

    # Hold for fast-forward. Releasing button disables fast-forward.
    # input_hold_fast_forward = l

    # Key to exit RetroArch cleanly.
    # Killing it in any hard way (SIGKILL, etc) will terminate RetroArch without saving RAM, etc.
    # On Unix-likes, SIGINT/SIGTERM allows a clean deinitialization.
    input_exit_emulator = escape

    # Applies next and previous shader in directory.
    input_shader_next = m
    input_shader_prev = n

    # Hold button down to rewind. Rewinding must be enabled.
    input_rewind = r

    # Toggle between recording and not.
    # input_movie_record_toggle = o

    # Toggle between paused and non-paused state
    # input_pause_toggle = p

    # Frame advance when content is paused
    # input_frame_advance = k

    # Reset the content.
    # input_reset = h

    # Cheats.
    # input_cheat_index_plus = y
    # input_cheat_index_minus = t
    # input_cheat_toggle = u

    # Mute/unmute audio
    # input_audio_mute = f9

    # Take screenshot
    # input_screenshot = f8

    # Netplay flip players.
    # input_netplay_flip_players = i

    # Hold for slowmotion.
    # input_slowmotion = e

    # Enable other hotkeys.
    # If this hotkey is bound to either keyboard, joybutton or joyaxis,
    # all other hotkeys will be disabled unless this hotkey is also held at the same time.
    # This is useful for RETRO_KEYBOARD centric implementations
    # which query a large area of the keyboard, where it is not desirable
    # that hotkeys get in the way.

    # Alternatively, all hotkeys for keyboard could be disabled by the user.
    input_enable_hotkey = escape

    # Increases audio volume.
    # input_volume_up = kp_plus
    # Decreases audio volume.
    # input_volume_down = kp_minus

    # Toggles to next overlay. Wraps around.
    # input_overlay_next =

    # Toggles eject for disks. Used for multiple-disk content.
    # input_disk_eject_toggle =

    # Cycles through disk images. Use after ejecting.
    # Complete by toggling eject again.
    # input_disk_next =

    # Toggles menu.
    # input_menu_toggle = f1

    # Toggles mouse grab. When mouse is grabbed, RetroArch hides the mouse,
    # and keeps the mouse pointer inside the window to allow relative mouse input
    # to work better.
    # input_grab_mouse_toggle = f11

    #### Menu

    # Menu driver to use. “rgui”, “lakka”, etc.
    # menu_driver = “rgui”

    #### Camera

    # Override the default camera device the camera driver uses. This is driver dependant.
    # camera_device =

    # Override the default privacy permission for cores that want to access camera services. Is “false” by default.
    # camera_allow = false

    #### Location

    # Override the default privacy permission for cores that want to access location services. Is “false” by default.
    # location_allow = false

    #### Netplay

    # When being client over netplay, use keybinds for player 1.
    # netplay_client_swap_input = false

    # The nickname being used for playing online.
    # netplay_nickname =

    # The amount of delay frames to use for netplay. Increasing this value will increase
    # performance, but introduce more latency.
    # netplay_delay_frames = 0

    # Netplay mode for the current user.
    # false is Server, true is Client.
    # netplay_mode = false

    # Enable or disable spectator mode for the player during netplay.
    # netplay_spectator_mode_enable = false

    # The IP Address of the host to connect to.
    # netplay_ip_address =

    # The port of the host IP Address. Can be either a TCP or an UDP port.
    # netplay_ip_port = 55435

    #### Misc

    # Enable rewinding. This will take a performance hit when playing, so it is disabled by default.
    rewind_enable = false

    # Rewinding buffer size in megabytes. Bigger rewinding buffer means you can rewind longer.
    # The buffer should be approx. 20MB per minute of buffer time.
    rewind_buffer_size = 10

    # Rewind granularity. When rewinding defined number of frames, you can rewind several frames at a time, increasing the rewinding speed.
    rewind_granularity = 2

    # Pause gameplay when window focus is lost.
    # pause_nonactive = true

    # Autosaves the non-volatile SRAM at a regular interval. This is disabled by default unless set otherwise.
    # The interval is measured in seconds. A value of 0 disables autosave.
    # autosave_interval =

    # Path to XML cheat database (as used by bSNES).
    # cheat_database_path =

    # Path to XML cheat config, a file which keeps track of which
    # cheat settings are used for individual games.
    # If the file does not exist, it will be created.
    # cheat_settings_path =

    # Directory to dump screenshots to.
    # screenshot_directory =

    # Records video after CPU video filter.
    # video_post_filter_record = false

    # Records output of GPU shaded material if available.
    # video_gpu_record = false

    # Screenshots output of GPU shaded material if available.
    video_gpu_screenshot = true

    # Block SRAM from being overwritten when loading save states.
    # Might potentially lead to buggy games.
    # block_sram_overwrite = false

    # When saving a savestate, save state index is automatically increased before
    # it is saved.
    # Also, when loading content, the index will be set to the highest existing index.
    # There is no upper bound on the index.
    # savestate_auto_index = false

    # Slowmotion ratio. When slowmotion, content will slow down by factor.
    # slowmotion_ratio = 3.0

    # The maximum rate at which content will be run when using fast forward. (E.g. 5.0 for 60 fps content => 300 fps cap).
    # RetroArch will go to sleep to ensure that the maximum rate will not be exceeded.
    # Do not rely on this cap to be perfectly accurate.
    # A negative ratio equals no FPS cap.
    # fastforward_ratio = -1.0

    # Enable stdin/network command interface.
    # network_cmd_enable = false
    # network_cmd_port = 55355
    # stdin_cmd_enable = false

    video_fullscreen = true
    video_aspect_ratio = 1.77

    #82372
    darknighte9
    Participant

    Alright so I added the lines

    input_enable_hotkey_btn = “7”
    input_exit_emulator_btn = “6”

    to my controller file, and upon reboot I was able to use start+select to exit back into EmulationStation. I’m going to go start a new file in Earthbound and save in game and see if a .srm is created after exiting cleanly.

    #82320
    electromaster64
    Participant

    Do your buttons representing “p,” “k,” and “f” cause emulators to behave strangely? For example “p” pauses the emulator and “f” shows me the command screen and when released goes back into the emulator. I deleted these in retroarch.cfg whenever they were listed as hotkeys so I cannot figure out why they behave strangely.

    #82292
    spikespiegel
    Participant

    Hi,

    Some fresh news, someone help me to fix the problem with retroarch.

    This is my configuration for two players:
    – into retroarch.cfg from /opt/retropie/configs/all (disable keyboard directions):

    input_player1_left = "nul"
    input_player1_right = "nul"
    input_player1_up = "nul"
    input_player1_down = "nul"

    – into retroarch.cfg, (example:snes) /opt/retropie/configs/snes:

    input_driver = "udev"
    
    input_enable_hotkey_btn = "21"
    input_exit_emulator_btn = "22"
    
    input_player1_joypad_index = "0"
    input_player1_b_btn = "12"
    input_player1_y_btn = "15"
    input_player1_select_btn = "21"
    input_player1_start_btn = "22"
    input_player1_up_btn = "0"
    input_player1_down_btn = "5"
    input_player1_left_btn = "2"
    input_player1_right_btn = "3"
    input_player1_a_btn = "11"
    input_player1_x_btn = "14"
    input_player1_l_btn = "17"
    input_player1_r_btn = "18"
    input_player1_left_axis = "-0"
    input_player1_right_axis = "+0"
    input_player1_up_axis = "-1"
    input_player1_down_axis = "+1"
    
    input_player2_joypad_index = "1"
    input_player2_b_btn = "12"
    input_player2_y_btn = "15"
    input_player2_select_btn = "13"
    input_player2_start_btn = "22"
    input_player2_up_btn = "0"
    input_player2_down_btn = "5"
    input_player2_left_btn = "2"
    input_player2_right_btn = "3"
    input_player2_a_btn = "11"
    input_player2_x_btn = "14"
    input_player2_l_btn = "17"
    input_player2_r_btn = "18"
    input_player2_left_axis = "-0"
    input_player2_right_axis = "+0"
    input_player2_up_axis = "-1"
    input_player2_down_axis = "+1"

    So now, keyboard no more causing troubles with the two gamepads.
    d-pad 1 (NES30) is moving player 1
    d-pad 2 (FC30) is moving player 2

    But i still have an issue with pifba which using ‘joystick’ api. I can’t configure dpad, it is associate with keyboard arrows and only moving player one:

    [Joystick]
    # Get codes from "jstest /dev/input/js0"
    # from package "joystick"
    A_1=0
    B_1=1
    X_1=3
    Y_1=4
    L_1=6
    R_1=7
    START_1=11
    SELECT_1=10
    #Joystick axis
    JA_LR=0
    JA_UD=1
    #player 2 button configuration
    A_2=0
    B_2=1
    X_2=3
    Y_2=4
    L_2=6
    R_2=7
    START_2=11
    SELECT_2=2
    #Joystick axis
    JA_LR_2=0
    JA_UD_2=1

    jstest tool recognize joystick as below:
    Driver version is 2.1.0.
    Joystick (8Bitdo NES30 GamePad) has 8 axes (X, Y, Z, Rz, Gas, Brake, Hat0X, Hat0Y)
    and 22 buttons (BtnX, BtnY, BtnZ, BtnTL, BtnTR, BtnTL2, BtnTR2, BtnSelect, BtnStart, BtnMode, BtnThumbL, BtnThumbR, ?, ?, ?, ?, (null), LeftBtn, RightBtn, MiddleBtn, SideBtn, ExtraBtn).
    Testing … (interrupt to exit)

    But when i am moving axes, there is no reaction…

    Into emulationtstation, when i try to configure gamepad, i have this message:
    INFO: The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <> EVDEV KeyCode 304

    So please help me (i am close from my initial goal).
    For information, i have made an article (in french) about retropie/emulationstation (http://www.open-consoles-news.com/2014/10/raspberry-pi-realiser-une-retro-gaming.html), so i’d like to finalize it for 2 players :)

    Thanks in advance.
    Regards.

    petrockblog
    Keymaster

    Recently, a module for setting the RetroArch hotkey button configuration has been added to the RetroPie Setup Script: https://github.com/retropie/RetroPie-Setup/pull/476/files.

    I would like to know which default configuration you prefer? Option 1, 2, or 3 of the module?

    Floob
    Member

    If you are using retroarch, you set the hotkeys as above.

    If you are talking about MAME, you can set it within the gui here:

    RetroMarine
    Participant

    Yeah I would try using input_enable_hotkey = kp_f If that doesn’t work try to find the actual number value of that key

    niss3
    Participant

    Hey RetroMarine, thanks for the answer!

    I’ve just now tried setting the retroarch.cfg to this:
    input_enable_hotkey_btn = f
    input_exit_emulator_btn = g

    The arcade buttons start and select are routed to those keyboard inputs.

    When I tried pressing Start and Select simuntaniously, nothing happend. Escape button still worked though.

    What do you think I might have done wrong?

    RetroMarine
    Participant

    Type this into your retroarch.cfg: input_enable_hotkey_btn = input_exit_emulator_btn =

    This creates a hotkey button i.e. 8 = select button on a snes controller, and 9 = start button, so that when you hold select and press start it will exit emulator. Remember to only put a numerical value after the =

    #82178
    RetroMarine
    Participant

    Here’s mine……….

    input_player1_joypad_index = 0
    input_player1_b_btn = 2
    input_player1_a_btn = 1
    input_player1_y_btn = 3
    input_player1_x_btn = 0
    input_player1_l_btn = 4
    input_player1_r_btn = 5
    input_player1_start_btn = 9
    input_player1_select_btn = 8
    input_player1_up_axis = -1
    input_player1_down_axis = +1
    input_player1_left_axis = -0
    input_player1_right_axis = +0

    input_enable_hotkey_btn = 8
    input_exit_emulator_btn = 9

    input_enable_hotkey_btn = 8
    input_save_state_btn = 4

    input_enable_hotkey_btn = 8
    input_load_state_btn = 5

    input_enable_hotkey_btn = 8
    input_state_slot_increase_btn = 0

    input_enable_hotkey_btn = 8
    input_state_slot_decrease_btn = 2

    input_player1_turbo_btn = 4
    input_player2_turbo_btn = 4

    input_enable_hotkey_btn = 8
    input_hold_fast_forward_btn = 3

    rewind_enable = true
    rewind_buffer_size = 3
    rewind_granularity = 2
    input_enable_hotkey_btn = 8
    input_rewind_btn = 1

    input_player2_joypad_index = 1
    input_player2_b_btn = 2
    input_player2_a_btn = 1
    input_player2_y_btn = 3
    input_player2_x_btn = 0
    input_player2_l_btn = 4
    input_player2_r_btn = 5
    input_player2_start_btn = 9
    input_player2_select_btn = 8
    input_player2_up_axis = -1
    input_player2_down_axis = +1
    input_player2_left_axis = -0
    input_player2_right_axis = +0

    system_directory = /home/pi/RetroPie/BIOS
    game_history_size = 100

    video_font_path = /home/pi/.emulationstation/general_art/Gobold.ttf
    video_font_size = 32
    video_message_color = 00ff00

    RetroMarine
    Participant

    Like so many others, I love the N64…which is why it’s so disheartening that Retropie doesn’t have a legit N64 emulator that actually works after the build/install. I used to use Project64 on my PC and that worked great…is there a reason that emulator isn’t the one being used on retropie? With Mupen64plus I have only been able to get Mario64 and Mariokart running decently. I’ve scoured the Internet for settings that would allow mupen to play more than a few games, but after trying them no such luck. Also…I don’t think ANYONE knows how to configure mupen64plus.cfg so that a game pad can actually exit the emulator and also use hotkeys to save/load states. I’ve tried everything! I have over 8,000 games on my retropie, yet only two of them are N64 games. It’s a damn shame.

    [URL]http://youtu.be/oeKBHL7xxTc[/URL]

    btack
    Participant

    Hello all loving my retropie setup been up and running on snes nintendo GBA and genisis for a few weeks now. Everything has been smooth thus far. Decided to try my luck with PSX today. No Luck!!

    Anyways i have a few roms loaded up Bin/Cue files (tryed 7z but wouldn’t work at all) i have tried a few different BIOS with no luck currently running scph7502.bin

    Anyways when i try and load the cue or bios file it loads up (I think) but I have a blank screen it actually flips between blue and black (blue is the screens default no input color) no sound no picture but it will stay on this screen indefinitely until I exit (my normal way is hotkeys on my controller) when I exit all the system messages appear to be correct shows the name of the rom track length and what not shows that the correct BIOS was loaded but just no picture/audio. Any thoughts? am I missing a step? Any help would be greatly appriciated

    ex
    Participant

    I’m having an issue with save states. They work totally fine while the game is loaded, however, when I exit the game the save states seem to disappear. I have hotkeys setup to exit the game with start + select.

    Even if I go directly back into the game, the save states will be lost and fail to load.

    Any ideas?

    #82074
    escher
    Participant

    UPDATE: I’ve managed to make the exit btn work.
    All I had to do was put those lines in /opt/retropie/config/snes/*.cfg file.

    input_enable_hotkey_btn = “3”
    input_exit_emulator_btn = “2”

    It’s strange, but for some reason, my Zero Delay USB encoder reads from snes config file for ALL emulators.

    The only emulator that I can’t manage to work exit buttons is MAME-PI.

    Anonymous
    Inactive

    Hi!
    I purchased 2 of these USB SNES controllers: http://www.amazon.com/gp/product/B002JAU20W/ref=oh_aui_detailpage_o05_s00?ie=UTF8&psc=1
    I am just trying to set up SNES to start with, and then move on to other emulators. My retroarch.cfg file looks OK, and it seems like it should be working, yet the second controller remains unresponsive (Testing it on Super Mario Kart. It’s it’s fine in emulationstation itself).

    Here’s my main configuration:

    input_player1_joypad_index = "0"
    input_player1_b_btn = "2"
    input_player1_y_btn = "3"
    input_player1_select_btn = "8"
    input_player1_start_btn = "9"
    input_player1_up_axis = "-1"
    input_player1_down_axis = "+1"
    input_player1_left_axis = "-0"
    input_player1_right_axis = "+0"
    input_player1_a_btn = "1"
    input_player1_x_btn = "0"
    input_player1_l_btn = "4"
    input_player1_r_btn = "5"
    
    input_enable_hotkey_btn = 8
    input_exit_emulator_btn = 9
    input_menu_toggle_btn = 5
    
    input_player2_joypad_index = "0"
    input_player2_b_btn = "2"
    input_player2_y_btn = "3"
    input_player2_select_btn = "8"
    input_player2_start_btn = "9"
    input_player2_up_axis = "-1"
    input_player2_down_axis = "+1"
    input_player2_left_axis = "-0"
    input_player2_right_axis = "+0"
    input_player2_a_btn = "1"
    input_player2_x_btn = "0"
    input_player2_l_btn = "4"
    input_player2_r_btn = "5"
    

    Here’s my SNES specific configuration:

    input_menu_toggle_btn = 5
    
    input_enable_hotkey_btn = 8
    input_exit_emulator_btn = 9
    
    input_player1_a_btn = 1
    input_player1_b_btn = 2
    input_player1_y_btn = 3
    input_player1_x_btn = 0
    input_player1_start_btn = 9
    input_player1_select_btn = 8
    input_player1_l_btn = 4
    input_player1_r_btn = 5
    input_player1_left_axis = -0
    input_player1_right_axis = +0
    input_player1_up_axis = -1
    input_player1_down_axis = +1
    
    input_player2_a_btn = 1
    input_player2_b_btn = 2
    input_player2_y_btn = 3
    input_player2_x_btn = 0
    input_player2_start_btn = 9
    input_player2_select_btn = 8
    input_player2_l_btn = 4
    input_player2_r_btn = 5
    input_player2_left_axis = -0
    input_player2_right_axis = +0
    input_player2_up_axis = -1
    input_player2_down_axis = +1

    The controller isn’t defective, because it works fine when it’s the only one plugged in. It just never seems to work with both plugged in.

    Any help?
    Thanks!

    Floob
    Member

    I’ve just been playing with the save game option in RetroPie / RetroArch and this is what I have so far.

    There are 2 methods of saving games. One is using the “in game” save files, in the same way as you would if you were using the original hardware.
    The second method is to take a “snapshot” using the emulator itself, in this case RetroArch.

    I have found that when playing the games (that are emulated by RetroArch), when you make an “in game” save, i.e. in Zelda on the SNES, the *.srm file will automatically save correctly in the rom folder. The folder can be specified, but the rom folder is default. This will only work correctly if the permissions are fine, which they are by defaut (the pi user must be able to write files in the relevant rom folder).

    This means the next time you run the game, it will happily load the *.srm file and allow you to access your “in game” saves as normal.

    In addition to the game saving the *.srm file, you can set it to keep saving this every x seconds using the retroarch.cfg file and this line:
    autosave_interval =

    Whilst that wont make any difference to where the save happens in the game, it just ensures that it is regularly saved to the SD card – although I’m not sure it has a lot of value as I’m not using it and its working fine (although this may in part be due to me always making sure I exit the emulator cleanly, going back to Emulation Station).

    As I mention, the *.srm save works fine out the box for me, no config changes needed.
    You can verify by searching for *.srm files on the SD card.

    The second method of saving games is using “Save States”, the game itself doesnt have any concept of this, but the emulator (RetroArch) can use them.

    This is very useful for games that dont have a built in save facility, as it allows you to store the position you were in when you stop playing. This is again controlled in the retroarch.cfg file

    Here are the settings to auto save and/or auto load snapshots.

    # Automatically saves a savestate at the end of RetroArch lifetime.
    # The path is $SRAM_PATH.auto.
    # RetroArch will automatically load any savestate with this path on startup if 
    savestate_auto_load is set.
    # savestate_auto_save = false
    # savestate_auto_load = true

    You can save and load these with the keyboard using the settings

    # Saves state.
    # input_save_state = f2
    # Loads state.
    # input_load_state = f4

    or map them to your joypad (in the controller config) using hotkeys: for example
    input_enable_hotkey_btn = 8
    input_save_state_btn = 5
    input_load_state_btn = 4

    If anyone is interested I could put a video together showing how this works.

    #82020
    hurders
    Participant

    Ok, I’ve managed to sort out the analogue stick issue.

    I set a hotkey to let me go into the actual emulator menu when its running and then there are options to set the input as a joypad with analogue. Then you can write those settings out to a new config. I then opened that new config up and copied all the input settings into my main retroarch.cfg which then lets all retroarch emulators boot up with analogue enable by default. Still no vibration feedback but I’m thinking this isn’t a working option on PSX emulation via retroarch? Either way I’m not too fussed as PSX emulation ain’t something I’ll really bother with.

    If anyones interested, here is the input settings I use. Just copy and paste these to the end of your retroarch.cfg and providing you are using a wireless 360 controller it should enable analogue by default and it also lets you use the sticks to control d-pad which is useful for SNES etc:

    input_device_p1 = “0”
    input_player1_joypad_index = “0”
    input_libretro_device_p1 = “5”
    input_player1_analog_dpad_mode = “1”
    input_player1_b = “z”
    input_player1_b_btn = “1”
    input_player1_b_axis = “nul”
    input_player1_y = “a”
    input_player1_y_btn = “3”
    input_player1_y_axis = “nul”
    input_player1_select = “rshift”
    input_player1_select_btn = “8”
    input_player1_select_axis = “nul”
    input_player1_start = “enter”
    input_player1_start_btn = “9”
    input_player1_start_axis = “nul”
    input_player1_up = “up”
    input_player1_up_btn = “h0up”
    input_player1_up_axis = “nul”
    input_player1_down = “down”
    input_player1_down_btn = “h0down”
    input_player1_down_axis = “nul”
    input_player1_left = “left”
    input_player1_left_btn = “h0left”
    input_player1_left_axis = “nul”
    input_player1_right = “right”
    input_player1_right_btn = “h0right”
    input_player1_right_axis = “nul”
    input_player1_a = “x”
    input_player1_a_btn = “0”
    input_player1_a_axis = “nul”
    input_player1_x = “s”
    input_player1_x_btn = “2”
    input_player1_x_axis = “nul”
    input_player1_l = “q”
    input_player1_l_btn = “4”
    input_player1_l_axis = “nul”
    input_player1_r = “w”
    input_player1_r_btn = “5”
    input_player1_r_axis = “nul”
    input_player1_l2 = “nul”
    input_player1_l2_btn = “6”
    input_player1_l2_axis = “nul”
    input_player1_r2 = “nul”
    input_player1_r2_btn = “7”
    input_player1_r2_axis = “nul”
    input_player1_l3 = “nul”
    input_player1_l3_btn = “11”
    input_player1_l3_axis = “nul”
    input_player1_r3 = “nul”
    input_player1_r3_btn = “12”
    input_player1_r3_axis = “nul”
    input_player1_l_x_plus = “nul”
    input_player1_l_x_plus_btn = “nul”
    input_player1_l_x_plus_axis = “+0”

    #81999
    hurders
    Participant

    [quote=81895]ok, so you’re trying to get the analogue sticks to work with the ps1 games as well? could be the emulator itself.[/quote]

    That’s what I’m trying to achieve yes.

    I configure the xbox controller retroarch settings through the Retro-Pie setup where it recognises the analogue axis and registers them ok. But, it doesn’t seem to enable the analogue axis when running PSX games? Neither do I get any vibration feedback which I assumed would also work?

    Odd thing is that as I mentioned before, clicking the analogue sticks (L3 and R3) work ok in the psx emulator.

    What am I missing?

    I even pasted the controller config at the bottom of the main retroarch.cfg file as deatailed below but still not working:

    input_player1_joypad_index = “0”
    input_player1_b_btn = “1”
    input_player1_y_btn = “3”
    input_player1_select_btn = “8”
    input_player1_start_btn = “9”
    input_player1_up_axis = “-5”
    input_player1_down_axis = “+5”
    input_player1_left_axis = “-4”
    input_player1_right_axis = “+4”
    input_player1_a_btn = “0”
    input_player1_x_btn = “2”
    input_player1_l_btn = “4”
    input_player1_r_btn = “5”
    input_player1_l2_btn = “6”
    input_player1_r2_btn = “7”
    input_player1_l3_btn = “11”
    input_player1_r3_btn = “12”
    input_player1_l_x_plus_axis = “+0”
    input_player1_l_x_minus_axis = “-0”
    input_player1_l_y_plus_axis = “+1”
    input_player1_l_y_minus_axis = “-1”
    input_player1_r_x_plus_axis = “+2”
    input_player1_r_x_minus_axis = “-2”
    input_player1_r_y_plus_axis = “+3”
    input_player1_r_y_minus_axis = “-3”
    input_enable_hotkey_btn = “8”
    input_exit_emulator_btn = “9”
    input_enable_hotkey_btn = “8”
    input_save_state_btn = “5”
    input_enable_hotkey_btn = “8”
    input_load_state_btn = “4”
    input_enable_hotkey_btn = “8”
    input_state_slot_increase_btn = “7”
    input_enable_hotkey_btn = “8”
    input_state_slot_decrease_btn =”6″
    input_enable_hotkey_bn = “8”

    Any suggestions?

    jpsnow6
    Participant

    Hi everybody I am new to all things RetroPie and RP but im working It out slowly. Here is the situation I have built my own USB NES controller out of an old NES controller and the PCB from an old USB keyboard…. Basically I traced out the traces on the keyboard and then soldered the corresponding contacts to the buttons on a NES controller PCB so when you press a on the controller you are pressing a on the keyboard It works flawlessly in all matters of functionality however I cannot figure out how to setup a button press combination to exit the emulator I have tried adding the following to the retroarch.cfg but no luck so far

    #input_enable_hotkey_btn = d
    #input_exit_emulator_btn = kp_enter
    (select button is mapped to “d” and start is mapped to kp_enter)
    I think it may be an issue with the default keyboard settings but basically what I want is to hold select(d) and press start(kp_enter) and exit the emulator…. any help would be great.

    goodwinsplace
    Participant

    Hi All,

    Running latest version of download from here around 2-3 weeks ago.

    New to Retropie but been reading loads and gotten quite a way through myself without having to ask any noob questions, but I can’t sort this out.

    Question 1, If I launch the SNES emulator the games load, I can play the games, restart using the start + select combo, great. But for some reason the X button restarts the emulator also????
    Here is the retroarch.cfg details for the control pad:

    ## Skeleton config file for RetroArch
    
    # Save all save files (*.srm) to this directory. This includes related files like .bsv, .rtc, .psrm, etc ...
    # This will be overridden by explicit command line options.
    # savefile_directory =
    
    # Save all save states (*.state) to this directory.
    # This will be overridden by explicit command line options.
    # savestate_directory =
    
    # If set to a directory, Content which is temporarily extracted
    # will be extracted to this directory.
    # extraction_directory =
    
    # Automatically saves a savestate at the end of RetroArch's lifetime.
    # The path is $SRAM_PATH.auto.
    # RetroArch will automatically load any savestate with this path on startup if savestate_auto_load is set.
    # savestate_auto_save = false
    # savestate_auto_load = true
    
    # Load libretro from a dynamic location for dynamically built RetroArch.
    # This option is mandatory.
    
    # Path to a libretro implementation.
    # libretro_path = "/path/to/libretro.so"
    
    # A directory for where to search for libretro core implementations.
    # libretro_directory =
    
    # Sets log level for libretro cores (GET_LOG_INTERFACE).
    # If a log level issued by a libretro core is below libretro_log_level, it is ignored.
    # DEBUG logs are always ignored unless verbose mode is activated (--verbose).
    # DEBUG = 0, INFO = 1, WARN = 2, ERROR = 3.
    # libretro_log_level = 0
    
    # Enable or disable verbosity level of frontend.
    # log_verbosity = false
    
    # Enable or disable RetroArch performance counters
    # perfcnt_enable = false
    
    # Path to core options config file.
    # This config file is used to expose core-specific options.
    # It will be written to by RetroArch.
    # A default path will be assigned if not set.
    core_options_path = /opt/retropie/configs/all/retroarch-core-options.cfg
    
    # Path to content load history file.
    # RetroArch keeps track of all content loaded in the menu and from CLI directly for convenient quick loading.
    # A default path will be assigned if not set.
    # game_history_path =
    
    # Number of entries that will be kept in content history file.
    # game_history_size = 100
    
    # Sets the "system" directory.
    # Implementations can query for this directory to load BIOSes, system-specific configs, etc.
    system_directory = /home/pi/RetroPie/roms/../BIOS
    
    # Sets start directory for menu content browser.
    # rgui_browser_directory =
    
    # Content directory. Interacts with RETRO_ENVIRONMENT_GET_CONTENT_DIRECTORY.
    # Usually set by developers who bundle libretro/RetroArch apps to point to assets.
    # content_directory =
    
    # Assets directory. This location is queried by default when menu interfaces try to look for
    # loadable assets, etc.
    # assets_directory =
    
    # Sets start directory for menu config browser.
    # rgui_config_directory =
    
    # Show startup screen in menu.
    # Is automatically set to false when seen for the first time.
    # This is only updated in config if config_save_on_exit is set to true, however.
    # rgui_show_start_screen = true
    
    # Flushes config to disk on exit. Useful for menu as settings can be modified.
    # Overwrites the config. #include's and comments are not preserved.
    config_save_on_exit = false
    
    # Load up a specific config file based on the core being used.
    # core_specific_config = false
    
    #### Video
    
    # Video driver to use. "gl", "xvideo", "sdl"
    # video_driver = "gl"
    
    # Which OpenGL context implementation to use.
    # Possible ones for desktop are: glx, x-egl, kms-egl, sdl-gl, wgl.
    # By default, tries to use first suitable driver.
    # video_gl_context =
    
    # Windowed xscale and yscale
    # (Real x res: base_size * xscale * aspect_ratio, real y res: base_size * yscale)
    # video_xscale = 3.0
    # video_yscale = 3.0
    
    # Fullscreen resolution. Resolution of 0 uses the resolution of the desktop.
    # video_fullscreen_x = 0
    # video_fullscreen_y = 0
    
    # Start in fullscreen. Can be changed at runtime.
    # video_fullscreen = false
    
    # If fullscreen, prefer using a windowed fullscreen mode.
    # video_windowed_fullscreen = true
    
    # Which monitor to prefer. 0 (default) means no particular monitor is preferred, 1 and up (1 being first monitor),
    # suggests RetroArch to use that particular monitor.
    # video_monitor_index = 0
    
    # Forcibly disable composition. Only works in Windows Vista/7 for now.
    # video_disable_composition = false
    
    # Video vsync.
    # video_vsync = true
    
    # Attempts to hard-synchronize CPU and GPU. Can reduce latency at cost of performance.
    # video_hard_sync = false
    
    # Sets how many frames CPU can run ahead of GPU when using video_hard_sync.
    # Maximum is 3.
    # video_hard_sync_frames = 0
    
    # Inserts a black frame inbetween frames.
    # Useful for 120 Hz monitors who want to play 60 Hz material with eliminated ghosting.
    # video_refresh_rate should still be configured as if it is a 60 Hz monitor (divide refresh rate by 2).
    # video_black_frame_insertion = false
    
    # Use threaded video driver. Using this might improve performance at possible cost of latency and more video stuttering.
    video_threaded = true
    
    # Use a shared context for HW rendered libretro cores.
    # Avoids having to assume GL state changes inbetween frames.
    # video_shared_context = false
    
    # Smoothens picture with bilinear filtering. Should be disabled if using pixel shaders.
    video_smooth = false
    
    # Forces rendering area to stay equal to content aspect ratio or as defined in video_aspect_ratio.
    # video_force_aspect = true
    
    # Only scales video in integer steps.
    # The base size depends on system-reported geometry and aspect ratio.
    # If video_force_aspect is not set, X/Y will be integer scaled independently.
    # video_scale_integer = false
    
    # A floating point value for video aspect ratio (width / height).
    # If this is not set, aspect ratio is assumed to be automatic.
    # Behavior then is defined by video_aspect_ratio_auto.
    video_aspect_ratio = 1.33
    
    # If this is true and video_aspect_ratio is not set,
    # aspect ratio is decided by libretro implementation.
    # If this is false, 1:1 PAR will always be assumed if video_aspect_ratio is not set.
    # video_aspect_ratio_auto = false
    
    # Forces cropping of overscanned frames.
    # Exact behavior of this option is implementation specific.
    # video_crop_overscan = true 
    
    # Path to shader. Shader can be either Cg, CGP (Cg preset) or GLSL, GLSLP (GLSL preset)
    # video_shader = "/path/to/shader.{cg,cgp,glsl,glslp}"
    
    # Load video_shader on startup.
    # Other shaders can still be loaded later in runtime.
    # video_shader_enable = false
    
    # Defines a directory where shaders (Cg, CGP, GLSL) are kept for easy access.
    video_shader_dir = /opt/retropie/emulators/RetroArch/shader/
    
    # CPU-based video filter. Path to a dynamic library.
    # video_filter =
    
    # Path to a font used for rendering messages. This path must be defined to enable fonts.
    # Do note that the _full_ path of the font is necessary!
    # video_font_path = 
    
    # Size of the font rendered.
    # video_font_size = 32
    
    # Enable usage of OSD messages.
    # video_font_enable = true
    
    # Offset for where messages will be placed on screen. Values are in range 0.0 to 1.0 for both x and y values. 
    # [0.0, 0.0] maps to the lower left corner of the screen.
    # video_message_pos_x = 0.05
    # video_message_pos_y = 0.05
    
    # Color for message. The value is treated as a hexadecimal value.
    # It is a regular RGB hex number, i.e. red is "ff0000".
    # video_message_color = ffffff
    
    # Video refresh rate of your monitor.
    # Used to calculate a suitable audio input rate.
    # video_refresh_rate = 59.95
    
    # Allows libretro cores to set rotation modes.
    # Setting this to false will honor, but ignore this request.
    # This is useful for vertically oriented content where one manually rotates the monitor.
    # video_allow_rotate = true
    
    # Forces a certain rotation of the screen.
    # The rotation is added to rotations which the libretro core sets (see video_allow_rotate).
    # The angle is <value> * 90 degrees counter-clockwise.
    # video_rotation = 0
    
    #### Audio
    
    # Enable audio.
    # audio_enable = true
    
    # Audio output samplerate.
    # audio_out_rate = 48000
    
    # Audio resampler backend. Which audio resampler to use.
    # Default will use "sinc".
    # audio_resampler =
    
    # Audio driver backend. Depending on configuration possible candidates are: alsa, pulse, oss, jack, rsound, roar, openal, sdl, xaudio.
    # audio_driver =
    
    # 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 ...
    # audio_device =
    
    # Audio DSP plugin that processes audio before it's sent to the driver. Path to a dynamic library.
    # audio_dsp_plugin =
    
    # Will sync (block) on audio. Recommended.
    # audio_sync = true
    
    # Desired audio latency in milliseconds. Might not be honored if driver can't provide given latency.
    # audio_latency = 64
    
    # Enable audio rate control.
    # audio_rate_control = true
    
    # Controls audio rate control delta. Defines how much input rate can be adjusted dynamically.
    # Input rate = in_rate * (1.0 +/- audio_rate_control_delta)
    # audio_rate_control_delta = 0.005
    
    # Audio volume. Volume is expressed in dB.
    # 0 dB is normal volume. No gain will be applied.
    # Gain can be controlled in runtime with input_volume_up/input_volume_down.
    # audio_volume = 0.0
    
    #### Overlay
    
    # Enable overlay.
    # input_overlay_enable = false
    
    # Path to input overlay
    # input_overlay =
    
    # Overlay opacity
    # input_overlay_opacity = 1.0
    
    # Overlay scale
    # input_overlay_scale = 1.0
    
    #### Input
    
    # Input driver. Depending on video driver, it might force a different input driver.
    # input_driver = sdl
    
    # Joypad driver. (Valid: linuxraw, sdl, dinput)
    # input_joypad_driver =
    
    # Keyboard layout for input driver if applicable (udev/evdev for now).
    # Syntax is either just layout (e.g. "no"), or a layout and variant separated with colon ("no:nodeadkeys").
    # input_keyboard_layout =
    
    # Defines axis threshold. Possible values are [0.0, 1.0]
    # input_axis_threshold = 0.5
    
    # Enable input auto-detection. Will attempt to autoconfigure
    # joypads, Plug-and-Play style.
    input_autodetect_enable = true
    
    # Directory for joypad autoconfigs (PC).
    # If a joypad is plugged in, that joypad will be autoconfigured if a config file
    # corresponding to that joypad is present in joypad_autoconfig_dir.
    # Input binds which are made explicit (input_playerN_*_btn/axis) will take priority over autoconfigs.
    # Autoconfigs can be created with retroarch-joyconfig, manually, or with a frontend.
    # Requires input_autodetect_enable to be enabled.
    joypad_autoconfig_dir = /opt/retropie/emulators/RetroArch/configs/
    
    # Enable debug input key reporting on-screen.
    # input_debug_enable = false
    
    # Sets which libretro device is used for a player.
    # Devices are indentified with a number.
    # This is normally saved by the menu.
    # Device IDs are found in libretro.h.
    # These settings are overridden by explicit command-line arguments which refer to input devices.
    # None: 0
    # Joypad (RetroPad): 1
    # Mouse: 2
    # Keyboard: 3
    # Generic Lightgun: 4
    # Joypad w/ Analog (RetroPad + Analog sticks): 5
    # Multitap (SNES specific): 257
    # Super Scope (SNES specific): 260
    # Justifier (SNES specific): 516
    # Justifiers (SNES specific): 772
    
    # input_libretro_device_p1 =
    # input_libretro_device_p2 =
    # input_libretro_device_p3 =
    # input_libretro_device_p4 =
    # input_libretro_device_p5 =
    # input_libretro_device_p6 =
    # input_libretro_device_p7 =
    # input_libretro_device_p8 =
    
    # Keyboard input. Will recognize letters ("a" to "z") and the following special keys (where "kp_"
    # is for keypad keys):
    #
    #   left, right, up, down, enter, kp_enter, tab, insert, del, end, home,
    #   rshift, shift, ctrl, alt, space, escape, add, subtract, kp_plus, kp_minus,
    #   f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11, f12,
    #   num0, num1, num2, num3, num4, num5, num6, num7, num8, num9, pageup, pagedown,
    #   keypad0, keypad1, keypad2, keypad3, keypad4, keypad5, keypad6, keypad7, keypad8, keypad9,
    #   period, capslock, numlock, backspace, multiply, divide, print_screen, scroll_lock,
    #   tilde, backquote, pause, quote, comma, minus, slash, semicolon, equals, leftbracket,
    #   backslash, rightbracket, kp_period, kp_equals, rctrl, ralt
    #
    # Keyboard input, Joypad and Joyaxis will all obey the "nul" bind, which disables the bind completely, 
    # rather than relying on a default.
    #input_player1_a = x
    #input_player1_b = z
    #input_player1_y = a
    #input_player1_x = s
    #input_player1_start = enter
    #input_player1_select = rshift
    #input_player1_l = q
    #input_player1_r = w
    #input_player1_left = left
    #input_player1_right = right
    #input_player1_up = up
    #input_player1_down = down
    # input_player1_l2 =
    # input_player1_r2 =
    # input_player1_l3 =
    # input_player1_r3 =
    
    # Two analog sticks (DualShock-esque).
    # Bound as usual, however, if a real analog axis is bound,
    # it can be read as a true analog.
    # Positive X axis is right, Positive Y axis is down.
    # input_player1_l_x_plus =
    # input_player1_l_x_minus =
    # input_player1_l_y_plus =
    # input_player1_l_y_minus =
    # input_player1_r_x_plus =
    # input_player1_r_x_minus =
    # input_player1_r_y_plus =
    # input_player1_r_y_minus =
    
    # If desired, it is possible to override which joypads are being used for player 1 through 8.
    # First joypad available is 0.
    # input_player1_joypad_index = 0
    # input_player2_joypad_index = 1
    # input_player3_joypad_index = 2
    # input_player4_joypad_index = 3
    # input_player5_joypad_index = 4
    # input_player6_joypad_index = 5
    # input_player7_joypad_index = 6
    # input_player8_joypad_index = 7
    
    # Joypad buttons.
    # Figure these out by using RetroArch-Phoenix or retroarch-joyconfig.
    # You can use joypad hats with hnxx, where n is the hat, and xx is a string representing direction. 
    # E.g. "h0up"
    # input_player1_a_btn =
    # input_player1_b_btn =
    # input_player1_y_btn =
    # input_player1_x_btn =
    # input_player1_start_btn =
    # input_player1_select_btn =
    # input_player1_l_btn =
    # input_player1_r_btn =
    # input_player1_left_btn =
    # input_player1_right_btn =
    # input_player1_up_btn =
    # input_player1_down_btn =
    # input_player1_l2_btn =
    # input_player1_r2_btn =
    # input_player1_l3_btn =
    # input_player1_r3_btn =
    
    # Axis for RetroArch D-Pad. 
    # Needs to be either '+' or '-' in the first character signaling either positive or negative direction of the axis, then the axis number. 
    # Do note that every other input option has the corresponding _btn and _axis binds as well; they are omitted here for clarity.
    # input_player1_left_axis =
    # input_player1_right_axis =
    # input_player1_up_axis =
    # input_player1_down_axis =
    
    # Holding the turbo while pressing another button will let the button enter a turbo mode
    # where the button state is modulated with a periodic signal.
    # The modulation stops when the button itself (not turbo button) is released.
    # input_player1_turbo =
    
    # Describes the period and how long of that period a turbo-enabled button should behave.
    # Numbers are described in frames.
    # input_turbo_period = 6
    # input_turbo_duty_cycle = 3
    
    # This goes all the way to player 8 (*_player2_*, *_player3_*, etc), but omitted for clarity.
    # All input binds have corresponding binds for keyboard (none), joykeys (_btn) and joyaxes (_axis) as well.
    
    # Toggles fullscreen.
    # input_toggle_fullscreen = f
    
    # Saves state.
    # input_save_state = f2
    # Loads state.
    # input_load_state = f4
    
    # State slots. With slot set to 0, save state name is *.state (or whatever defined on commandline).
    # When slot is != 0, path will be $path%d, where %d is slot number.
    # input_state_slot_increase = f7
    # input_state_slot_decrease = f6
    
    # Toggles between fast-forwarding and normal speed.
    # input_toggle_fast_forward = space
    
    # Hold for fast-forward. Releasing button disables fast-forward.
    # input_hold_fast_forward = l
    
    # Key to exit RetroArch cleanly. 
    # Killing it in any hard way (SIGKILL, etc) will terminate RetroArch without saving RAM, etc.
    # On Unix-likes, SIGINT/SIGTERM allows a clean deinitialization.
    input_exit_emulator = escape
    
    # Applies next and previous shader in directory.
    input_shader_next = m
    input_shader_prev = n
    
    # Hold button down to rewind. Rewinding must be enabled.
    input_rewind = r
    
    # Toggle between recording and not.
    # input_movie_record_toggle = o
    
    # Toggle between paused and non-paused state
    # input_pause_toggle = p
    
    # Frame advance when content is paused
    # input_frame_advance = k
    
    # Reset the content.
    # input_reset = h
    
    # Cheats.
    # input_cheat_index_plus = y
    # input_cheat_index_minus = t
    # input_cheat_toggle = u
    
    # Mute/unmute audio
    # input_audio_mute = f9
    
    # Take screenshot
    # input_screenshot = f8
    
    # Netplay flip players.
    # input_netplay_flip_players = i
    
    # Hold for slowmotion.
    # input_slowmotion = e
    
    # Enable other hotkeys.
    # If this hotkey is bound to either keyboard, joybutton or joyaxis,
    # all other hotkeys will be disabled unless this hotkey is also held at the same time.
    # This is useful for RETRO_KEYBOARD centric implementations
    # which query a large area of the keyboard, where it is not desirable
    # that hotkeys get in the way.
    
    # Alternatively, all hotkeys for keyboard could be disabled by the user.
    # input_enable_hotkey =
    
    # Increases audio volume.
    # input_volume_up = kp_plus
    # Decreases audio volume.
    # input_volume_down = kp_minus
    
    # Toggles to next overlay. Wraps around.
    # input_overlay_next =
    
    # Toggles eject for disks. Used for multiple-disk content.
    # input_disk_eject_toggle =
    
    # Cycles through disk images. Use after ejecting.
    # Complete by toggling eject again.
    # input_disk_next =
    
    # Toggles menu.
    # input_menu_toggle = f1
    
    # Toggles mouse grab. When mouse is grabbed, RetroArch hides the mouse,
    # and keeps the mouse pointer inside the window to allow relative mouse input
    # to work better.
    # input_grab_mouse_toggle = f11
    
    #### Menu
    
    # Menu driver to use. "rgui", "lakka", etc. 
    # menu_driver = "rgui"
    
    #### Camera
    
    # Override the default camera device the camera driver uses. This is driver dependant.
    # camera_device =
    
    # Override the default privacy permission for cores that want to access camera services. Is "false" by default.
    # camera_allow = false
    
    #### Location
    
    # Override the default privacy permission for cores that want to access location services. Is "false" by default.
    # location_allow = false
    
    #### Netplay
    
    # When being client over netplay, use keybinds for player 1.
    # netplay_client_swap_input = false
    
    # The nickname being used for playing online.
    # netplay_nickname = 
    
    # The amount of delay frames to use for netplay. Increasing this value will increase
    # performance, but introduce more latency.
    # netplay_delay_frames = 0
    
    # Netplay mode for the current user.
    # false is Server, true is Client.
    # netplay_mode = false
    
    # Enable or disable spectator mode for the player during netplay.
    # netplay_spectator_mode_enable = false
    
    # The IP Address of the host to connect to.
    # netplay_ip_address = 
    
    # The port of the host IP Address. Can be either a TCP or an UDP port.
    # netplay_ip_port = 55435
    
    #### Misc
    
    # Enable rewinding. This will take a performance hit when playing, so it is disabled by default.
    rewind_enable = false
    
    # Rewinding buffer size in megabytes. Bigger rewinding buffer means you can rewind longer.
    # The buffer should be approx. 20MB per minute of buffer time.
    rewind_buffer_size = 10
    
    # Rewind granularity. When rewinding defined number of frames, you can rewind several frames at a time, increasing the rewinding speed.
    rewind_granularity = 2
    
    # Pause gameplay when window focus is lost.
    # pause_nonactive = true
    
    # Autosaves the non-volatile SRAM at a regular interval. This is disabled by default unless set otherwise.
    # The interval is measured in seconds. A value of 0 disables autosave.
    # autosave_interval =
    
    # Path to XML cheat database (as used by bSNES).
    # cheat_database_path =
    
    # Path to XML cheat config, a file which keeps track of which
    # cheat settings are used for individual games.
    # If the file does not exist, it will be created.
    # cheat_settings_path =
    
    # Directory to dump screenshots to.
    # screenshot_directory =
    
    # Records video after CPU video filter.
    # video_post_filter_record = false
    
    # Records output of GPU shaded material if available.
    # video_gpu_record = false
    
    # Screenshots output of GPU shaded material if available.
    video_gpu_screenshot = true
    
    # Block SRAM from being overwritten when loading save states.
    # Might potentially lead to buggy games.
    # block_sram_overwrite = false
    
    # When saving a savestate, save state index is automatically increased before
    # it is saved.
    # Also, when loading content, the index will be set to the highest existing index.
    # There is no upper bound on the index.
    # savestate_auto_index = false
    
    # Slowmotion ratio. When slowmotion, content will slow down by factor.
    # slowmotion_ratio = 3.0
    
    # The maximum rate at which content will be run when using fast forward. (E.g. 5.0 for 60 fps content => 300 fps cap).
    # RetroArch will go to sleep to ensure that the maximum rate will not be exceeded.
    # Do not rely on this cap to be perfectly accurate.
    # A negative ratio equals no FPS cap.
    # fastforward_ratio = -1.0
    
    # Enable stdin/network command interface.
    # network_cmd_enable = false
    # network_cmd_port = 55355
    # stdin_cmd_enable = false
    
    input_enable_hotkey_btn = “8”
    input_exit_emulator_btn = “9”
    
    input_player1_joypad_index = "0"
    input_player1_b_btn = "2"
    input_player1_y_btn = "3"
    input_player1_select_btn = "8"
    input_player1_start_btn = "9"
    input_player1_up_axis = "-1"
    input_player1_down_axis = "+1"
    input_player1_left_axis = "-0"
    input_player1_right_axis = "+0"
    input_player1_a_btn = "1"
    input_player1_x_btn = "0"
    input_player1_l_btn = "4"
    input_player1_r_btn = "5"

    Question 2, how do I configure the second control pad? I’ve tried copying the above and pasting, but changing player1 to player2 and the joypad_index = “1”, but when this code is in place it controls both P1 and P2 from the one control pad.

    Any ideas or pointers welcome.

Viewing 35 results - 806 through 840 (of 1,077 total)