easy way to switch dpad/analog in psx

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

RetroPie has a new website and forum. Please visit https://retropie.org.uk/ for the new site. The new forum is located at https://retropie.org.uk/forum/. This forum is left here as a read-only archive.

This topic contains 8 replies, has 2 voices, and was last updated by Profile photo of dkcdocdos dkcdocdos 1 year, 10 months ago.

Viewing 9 posts - 1 through 9 (of 9 total)
  • Author
    Posts
  • #99308
    Profile photo of dkcdocdos
    dkcdocdos
    Participant

    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?

    #99334
    Profile photo of jamesandjome-com
    jamesandjome-com
    Participant

    Hi,

    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?

    #99343
    Profile photo of dkcdocdos
    dkcdocdos
    Participant

    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.

    #99773
    Profile photo of dkcdocdos
    dkcdocdos
    Participant

    Hello?

    JJ?

    #99988
    Profile photo of dkcdocdos
    dkcdocdos
    Participant

    Or put to put it this way:

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

    #100053
    Profile photo of jamesandjome-com
    jamesandjome-com
    Participant

    Hello,

    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.

    #100054
    Profile photo of jamesandjome-com
    jamesandjome-com
    Participant

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

    #100064
    Profile photo of dkcdocdos
    dkcdocdos
    Participant

    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…

    #100126
    Profile photo of dkcdocdos
    dkcdocdos
    Participant

    I’ve changed

    input_libretro_device_p1 = “5”

    to

    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.

    • This reply was modified 1 year, 10 months ago by Profile photo of dkcdocdos dkcdocdos. Reason: tell where's RETRO_DEVICE_ANALOG from
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/

Skip to toolbar