easy way to switch dpad/analog in psx

Welcome Page Forums RetroPie Project Controller Configuration in RetroPie easy way to switch dpad/analog in psx

This topic contains 8 replies, has 2 voices, and was last updated by  dkcdocdos 2 years, 7 months ago.

Viewing 9 posts - 1 through 9 (of 9 total)
  • Author
  • #99308


    Hi again,

    so i know how to setup the psx pad type via the retroarch-core-options.cfg or the in-emu-menu.

    Is there a way to bind these options, and toggle them ingame, sort of like the original dualshock-hardware-rubber-button?

    Or even better, can i define this setting for each psx game, so it will startup with one or the other?




    If you change this in menu and save it all PSX games can be played with the d-pad or the analog automatically.

    Before I give you advice that you are not wanting, do you want to be able to only use one or the other on certain games or would you be happy with all games being able to use both automatically?



    There’s an automatic option? I only knew “standard” or “analog” for the core options…

    Actually i prefer to set either dpad or analog for each single game, kind of like a launch option.







    Or put to put it this way:

    Is there something like a startup option for psx games to use either “standard” or “analog”?




    I only know how to make it so both the d-pad and analog work in all games.

    There may be an easier way to do this, however this is how I went about it.

    When you hit F1 and are in the retroarch menu, go to options/core options/ and change “Pad Type” to Analog, then go to settings/input settings -joypad mapping and change “User 1 Device Type” to RetroPad w/ Analog.

    Then save your settings and follow these steps.

    1. Go to your terminal and type cd /opt/retropie/configs/all

    2. Type ls (to list the contents of this directory)

    3. Look for your saved file, this will most likely be called libretro-1.cfg if this is your first time. libretro.cfg will be the original file. If you have saved settings in the past it could also be libretro -2,3 etc. Look for the higher number.

    Once you know which one it is type this in the terminal to copy the new file with the new settings to your original file. I will assume your new file is called libretro-1.cfg in these examples.

    If you want these control settings for all retroarch systems type:
    cat libretro-1.cfg >> /opt/retropie/configs/all/retroarch.cfg
    and hit enter, then reboot.

    If you want these control settings for PSX only type:
    cat libretro-1.cfg >> /opt/retropie/configs/psx/retroarch.cfg
    and hit enter, then reboot.



    Also, this video will show you how to do this, it is for psx.



    I’ve did all this, and the relevant lines in the libretto.cfg afterwards seem to be:

    input_device_p1 = “0”
    input_player1_joypad_index = “0”
    input_libretro_device_p1 = “5”
    input_player1_analog_dpad_mode = “0”

    When searching for it in the retroarch.cfg it’s even documented:

    # Sets which libretro device is used for a user.
    # 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

    BUT: When starting up, screen says

    RetroArch [WARN] :: Input device ID 5 is unknown to this libretro implementation. Using RETRO_DEVICE_JOYPAD.

    And it’s behaves like an all analog controller (with the known errors in certain games).

    So, i guess it’s the correct way (THX!), but since retroarch claims to not know the device id, it’s a bug…



    I’ve changed

    input_libretro_device_p1 = “5”


    input_libretro_device_p1 = “RETRO_DEVICE_ANALOG”

    (the expression is from libretro.h)

    and the error won’t show up anymore!

    Sadly, the behaviour is unchanged; certain games won’t take any input from the controller.

Viewing 9 posts - 1 through 9 (of 9 total)

Forums are currently read only - please visit the new RetroPie forums at https://retropie.org.uk/forums/

PLEASE NOTE: All orders that are placed between January 14th and January 28th will be shipped on January 29th. Dismiss