Viewing 10 posts - 1 through 10 (of 10 total)
  • Author
  • #2221

    I’m dealing with NES emulation.
    I can start the rom but when I’m in the game tha pad does’t work at all and I have to plug in the keyboard to play.

    In the NES emulator menu there is no buttons configuration and the joypad is properly selected as the P1 controller.

    So I’ve tried to follow some online guides.
    From the terminal I go to:
    cd RetroPie/emulators/RetroArch/tools
    and then launch:

    Here start the problems:
    1. the button mapping process is simply ununderstable. It refer to buttons with names and numbers that simply I can’t understand.
    2. When I open the retroarch.cfg file to edit it I can’t find out the right lines at the bottom of it.

    Is there someone who has a SNES USB pad as me and can just share with me a proper .cfg file?
    Thanks a lot.


    I’ve found, unfortunately, that even with a proper config file, I have to run retroarch-joyconfig before it’ll respond to my controllers. (Although I may be doing something wrong…I don’t know.)

    We may be able to talk you through the button mapping, though. I was confused at first when I saw things like “A (right),” but I figured out that the directions are referring to their standard layout on a SNES or PS controller. The actual directional pad uses axes instead of buttons.

    Where are you opening the retroarch.cfg file? I could never edit it on the raspberry pi, but when I plugged the SD card into my laptop I could fiddle with the files using a text editor.


    I could run retroarch-joyconfig and then just copy and paste from an existing file.

    I can open the file via FTP from my computer.
    Can someone just copy and paste here his own file?
    I’m using a SNES USB controller.

    I don’t understand how someone is smart enough to develop RetroPie but can’t give to the final user a simple experience.


    Same problem here, I run ./retroarch-joyconfig but went done the retroarch.cfg file look the same way. the change are not being saved.

    Sorry about my spelling, English isn’t my first language


    The technique in all the tutorials, using:
    retroarch-joyconfig -o ~/RetroPie/config/all/retroarch.cfg
    –never worked for me.

    The only thing I’ve found that works reliably is running retroarch-joyconfig without the write-to-file feature. It’ll run you through the list of buttons. Press them as they come up. There will be more buttons than you have. For the extra ones, hit any button. At the end, it’ll spit out a long list of numerical values. Write these down (pencil and paper).

    Then you need to open up ~/RetroPie/config/all/retroarch in a GUI text editor. You can do this on the pi by plugging in a keyboard, hitting F4, then typing:


    Open the file manager and browse to the file.


    plug the sd card into a card reader on another computer. Same deal. Browse to the file.

    Under the joypad input section, it’ll give you the option to enter in numerical values for all the buttons a controller might have. Get rid of the “#” from all the buttons you have on your controller, then enter the corrosponding numerical value you wrote down on paper.

    For a second controller, copy + paste the whole thing right after it, but change the “player1” part of each line to “player2”.

    I hope this helps you both.


    After hours and hours its finally working for me.
    Thanks jplaj for the help.

    nicenietzsche this is the only thing I changed from the retroarch.cfg file:

    # 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 = 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_btn = “h0left”
    input_player1_right_btn = “h0right”
    input_player1_up_btn = “h0up”
    input_player1_down_btn = “h0down”

    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

    # 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 = -0
    input_player1_right_axis = +0
    input_player1_up_axis = -1
    input_player1_down_axis = +1

    I’m using a SNES USB controller too.
    if you want I can send you or post the whole file.

    Thanks again jplaj.


    elbotija I’ve tried to replace lines in retroarch.cfg with the ones you pasted here (thanks a lot!) but it doesn’t work.
    When I launch a rom the system go to a terminal interface and then kick me back to the main menu.
    Probably is something wrong in the retroarch.cfg file that make the system crash.
    Can you send me the whole file via PM or attach it here?


    Sending you back to the main menu could mean a lot of things, but I’m not sure what the .cfg file could do to cause that.

    Plug in a keyboard, select a rom, and after it sends you back to the menu, hit F4. This will bring up the log, which should list the problem. Tell us what it says.


    I’ve re-installed everything from the start (again).
    Now it works quite well!
    Joypad buttons are not 100% accurate (SNES pad button “y” is also “left-button” at the same time) but I have no more time to spend on it, really.

    I don’t understand how the same process can bring to so many different results.

    I would like to thank everybody for the support, especially elbotija that save me tons of work hours posting his configuration file.


    If someone still got problems after all (like X/Y input are going left/right), that’s because the ” and ” are different when you config Retroarch.cfg so the input would reset to “0” meaning the two inputs at the same time.

    I don’t have any problem anymore with the input_player1_left_axis and input_player1_left_btn = “h0left” settings.

Viewing 10 posts - 1 through 10 (of 10 total)
  • The forum ‘Everything else related to the RetroPie Project’ is closed to new topics and replies.