Homepage Forums RetroPie Project Everything else related to the RetroPie Project Can't change emulator exit button

Viewing 35 posts - 1 through 35 (of 36 total)
  • Author
    Posts
  • #15021
    murderousmincepie
    Participant

    I want to be able to exit an emulator by pressing the centre button on my wireless Xbox controller (button 10) however I have had no such luck trying to make this work correctly and I’m clueless as to what I’m doing wrong.

    I adding the same line at the bottom of my “retroarch.cfg” (# input_exit_emulator_btn = “10”) script multiple times in many different ways however none have worked. I have attached my “retroarch.cfg” file if anyone knows how to get this working.

    If this thread has already been brought up and the thread has a solution to my problem please link me to it.

    Thanks.

    #15031
    murderousmincepie
    Participant

    CFG files are not permitted so I’ve pasted my config into an DOCX document.

    Hopefully this format is allowed.

    #15406
    copperfield81
    Guest

    I believe the ‘#’ indicates comment out the line?
    Maybe remove the ‘#’ from that line?

    BTW where (what path) did you edit the ‘retroarch.cfg’ file in?

    #15670
    murderousmincepie
    Participant

    I’ve already tried it without the ‘#’ it changed nothing but I’ll give it another go. Also it’s in /etc/retroarch.cfg I’m on Linux so I can access it directly from the SD card plugged into my PC however to edit it on the Pi I use the command “sudo pico /etc/retroarch.cfg”.

    #15673
    nemo93
    Participant

    hi murderousmincepie,

    you have to edit the config files that are in the “/opt/retropie” directory. You should have a “/opt/retropie/configs” folder at this location. If you don’t then something is going wrong with your Retropie installation :(

    If this helps I’ve posted 2 of my config files in other posts:
    https://www.petrockblock.com/forums/topic/xbox-controller-config/#post-15617

    hope this helps.
    cheers,

    #15679
    murderousmincepie
    Participant

    Odd I have a /opt/ folder but their is no ‘retropie’ subfolder. The only folders within /opt/ are ‘sonic-pi’ and a folder called ‘vc’.

    I’m not sure if I have the latest version of RetroPie I’ll have a go at updating it and I’ll see what happens then.

    #15684
    murderousmincepie
    Participant

    I think I’ve updated it (using https://github.com/retropie/RetroPie-Setup) still nothing but those two files in /opt/

    #17236
    murderousmincepie
    Participant

    I’ve decided to revert to a completable new image of retropie to see if this helps. Only time will tell if this works.

    #17297
    murderousmincepie
    Participant

    This thread can be closed/abandoned. After putting the new image on my SD card it worked but even after installing and setting-up xboxdrv my controller isn’t functioning in any of the emulators and xboxdrv throws out and error no matter what fix I try. I will open a new thread explaining these issues and this one can be abandoned as trying to be able to exit an emulator is the least of my worries.

    #17302
    trimmtrabb
    Participant
    #17315
    murderousmincepie
    Participant

    Hallelujah! Thanks so much I’ve been searching everywhere for most of the day trying to find how to get my controllers working, but because of how new the update is I couldn’t find much. Granted my controller is still flashing like a Christmas tree but it’s much better than before.

    #18762
    murderousmincepie
    Participant

    Now that I’ve got everything back to where it was on my Pi and I’m more fammiliar with the new filesystem organiztation lets swiftly head back to the original topic of how to set an exit button on my wireless xbox 360 controller.

    I’ve looked in the file named ‘XboxGamepad(userspacedriver).cfg’ located in ‘/opt/retropie/emulators/RetroArch/configs’ and I found this at the bottom of the config file (it has been altered by me):

    input_enable_hotkey_btn = “8”
    input_exit_emulator_btn = “1”
    input_save_state_btn = “2”
    input_load_state_btn = “3”

    The current setting should make it so that when I press the back button followed by the B button it should exit however this hasn’t worked otherwise I would’t be here to bother you :). Am I looking in the right file or should I still be using the old ‘retroarch.cfg’ method?

    #18823
    trimmtrabb
    Participant

    Retroarch.cfg in configs/all/ is the file you need to use so just copy that over.

    #19120
    murderousmincepie
    Participant

    I now have the text shown below in both config files just to make sure (XboxGamepad(userspacedriver).cfg & retroarch.cfg) however the result is as usual nothing, only the escape button allows me to exit the emulator. I swear there must be something blindingly obvious I’m missing.

    Text in the bottom of the config files:
    input_enable_hotkey_btn = “8″
    input_exit_emulator_btn = “1″
    input_save_state_btn = “2″
    input_load_state_btn = “3″

    #24609
    murderousmincepie
    Participant

    Is there anything that is required in order for the exit button to be bound correctly? Would it be worth reuploading my retroarch.cfg (I updated recently from a very old version of retropie and my config has most likely changed).

    #24713
    trimmtrabb
    Participant

    Please post the contents of your retroarch.cfg in plain text

    #25255
    murderousmincepie
    Participant

    Well there is something blindingly obvious in the retroarch.cfg file now that I’ve read through it again literally right at the top there are two lines saying:

    input_enable_hotkey = escape
    input_exit_emulator = escape

    If this is why I am having this issue then the sound of face-palming shall become a symphony heard from all the corners of the universe. I will try editing this line to see if this fixes it which it hopefully will.

    #25321
    murderousmincepie
    Participant

    Nevertheless I will also post my config here:

    system_directory = /home/pi/RetroPie/roms/../BIOS
    config_save_on_exit = false
    video_aspect_ratio = 1.33
    video_smooth = false
    video_threaded = true
    input_enable_hotkey = escape
    input_exit_emulator = escape
    rewind_enable = false
    rewind_buffer_size = 10
    rewind_granularity = 2
    input_rewind = r
    video_gpu_screenshot = true
    input_shader_next = m
    input_shader_prev = n
    video_shader_dir = /opt/retropie/emulators/RetroArch/shader/
    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_autodetect_enable = true
    joypad_autoconfig_dir = /opt/retropie/emulators/RetroArch/configs/
    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_btn = “13”
    input_player1_down_btn = “14”
    input_player1_left_btn = “11”
    input_player1_right_btn = “12”
    input_player1_a_btn = “0”
    input_player1_x_btn = “2”
    input_player1_l_btn = “4”
    input_player1_r_btn = “5”
    input_player1_l2_axis = “+2”
    input_player1_r2_axis = “+5”
    input_player1_l3_btn = “9”
    input_player1_r3_btn = “10”
    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 = “+3”
    input_player1_r_x_minus_axis = “-3”
    input_player1_r_y_plus_axis = “-4”
    input_player1_r_y_minus_axis = “-4”
    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_axis = “+2”
    input_player1_r2_axis = “+5”
    input_player1_l3_btn = “9”
    input_player1_r3_btn = “10”
    input_player1_l_x_plus_btn = “12”
    input_player1_l_x_minus_btn = “11”
    input_player1_l_y_plus_btn = “14”
    input_player1_l_y_minus_btn = “13”
    input_player1_r_x_plus_axis = “+3”
    input_player1_r_x_minus_axis = “-3”
    input_player1_r_y_plus_axis = “+4”
    input_player1_r_y_minus_axis = “-4”

    #25322
    murderousmincepie
    Participant

    I may have gotten an older version of my config and pasted it but if you want to alter it so that it would work then feel free.

    #25327
    murderousmincepie
    Participant

    Okay so ignore the previous RetroArch.cfg post this is not the configuration file I am using. By using this config I seem to have almost got this working…kind of. Whenever I press the A button on my controller it results in the game saving and exiting immediatly.

    P.S: Is there any way to detect what buttons are being pressed on the contoller without going in to the xbox controller setup?

    Here is the NEW config file:

    system_directory = /home/pi/RetroPie/roms/../BIOS
    config_save_on_exit = false
    video_aspect_ratio = 1.33
    video_smooth = false
    video_threaded = true
    # input_enable_hotkey6
    # input_exit_emulator7
    rewind_enable = false
    rewind_buffer_size = 10
    rewind_granularity = 2
    input_rewind = r
    video_gpu_screenshot = true
    input_shader_next = m
    input_shader_prev = n
    video_shader_dir = /opt/retropie/emulators/RetroArch/shader/
    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_autodetect_enable = true
    joypad_autoconfig_dir = /opt/retropie/emulators/RetroArch/configs/
    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_btn = “13”
    input_player1_down_btn = “14”
    input_player1_left_btn = “11”
    input_player1_right_btn = “12”
    input_player1_a_btn = “0”
    input_player1_x_btn = “2”
    input_player1_l_btn = “4”
    input_player1_r_btn = “5”
    input_player1_l2_axis = “+2”
    input_player1_r2_axis = “+5”
    input_player1_l3_btn = “9”
    input_player1_r3_btn = “10”
    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 = “+3”
    input_player1_r_x_minus_axis = “-3”
    input_player1_r_y_plus_axis = “-4”
    input_player1_r_y_minus_axis = “-4”
    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_axis = “+2”
    input_player1_r2_axis = “+5”
    input_player1_l3_btn = “9”
    input_player1_r3_btn = “10”
    input_player1_l_x_plus_btn = “12”
    input_player1_l_x_minus_btn = “11”
    input_player1_l_y_plus_btn = “14”
    input_player1_l_y_minus_btn = “13”
    input_player1_r_x_plus_axis = “+3”
    input_player1_r_x_minus_axis = “-3”
    input_player1_r_y_plus_axis = “+4”
    input_player1_r_y_minus_axis = “-4”
    input_enable_hotkey_btn = “8″
    input_exit_emulator_btn = “1″
    input_save_state_btn = “2″
    input_load_state_btn = “3″

    #25403
    trimmtrabb
    Participant

    Yes, yoy can determine which buttons are which with jstest:

    jstest /dev/input/js0

    Then edit retroarch.cfg accordingly.

    #25768
    murderousmincepie
    Participant

    Just tried running jstest and it just said command not found. I typed in the full “jstest /dev/input/js0”.

    #26033
    trimmtrabb
    Participant

    Try js1 instead

    #26208
    murderousmincepie
    Participant

    Typing ““jstest /dev/input/js1″ also results in “jstest command not found”.

    #26361
    trimmtrabb
    Participant

    Ok, run:

    sudo apt-get install joystick

    And try again

    #26703
    murderousmincepie
    Participant

    Good it’s installed and is now working using “js0”, I will alter the config now and see if it works. Just for future reference:

    A = 0
    B = 1
    X = 2
    Y = 3
    LB = 4
    RB = 5
    BACK = 6
    START = 7
    XBOX BUTTON = 8
    LEFT JOYSTICK PRESS IN = 9
    RIGHT JOYSTICK PRESS IN = 10
    DPAD LEFT = 11
    DPAD RIGHT = 12
    DPAD UP = 13
    DPAD DOWN = 14

    #26727
    murderousmincepie
    Participant

    Well I was about to say it hadn’t worked but I tried putting the numbers in without using quotes and it has finally worked! There shall be many hours of playing Atari 2600 games from this day onward :D! My only possible complaints now is the fact that my xbox controller flashes all four green lights even when connected and exiting emulators in kinda slow (considering that exiting emulators on older versions of retropie was instantaneous) but regardless I’m so glad it’s finally working!

    #27285
    trimmtrabb
    Participant
    #27604
    murderousmincepie
    Participant

    Neat! I’ll install XboxDrv tonight (I had thought that we couldn’t get it any more). Also as for the very slow exit it seems to happen on all emulators/games (From Atari 2600 all the way up to the Playstation 1) and it always takes the exact same amount of time it does show something at the bottom which I will also look into and write down to post later.

    #29975
    murderousmincepie
    Participant

    I have successfully installed XboxDRV and it does seem to be working (first light on the controller is lit up and not flashing like usual which implies it is connected) however on boot I am greeted with the “Welcome no gamepads detected hold a button on your device to configure it” however it doesn’t detect and buttons being pressed on my controller.

    Also not sure if this is just my TV but the display is acting unusual some colours are ‘off’and red circles can be seen around the welcome screen. Not sure how much of a problem it is (potential corruption of my SD card?).

    #30016
    trimmtrabb
    Participant

    sudo rm /etc/emulationstation/es_input.cfg and reboot

    #31541
    murderousmincepie
    Participant

    “es_input.cfg” doesn’t exist (no such file or directory). The only files contained within /etc/emualtionstation are “es_systems.cfg” and “themes”.

    #31545
    murderousmincepie
    Participant

    and my controller has started flashing again which implies that something has gone wrong with XboxDRV.

    Scratch that it seems to have started functioning again.

    #31710
    trimmtrabb
    Participant

    [quote=31541]“es_input.cfg” doesn’t exist (no such file or directory). The only files contained within /etc/emualtionstation are “es_systems.cfg” and “themes”.[/quote]

    It must be in the home directory, I haven’t booted up RetroPie for a while. I was trying to remember the location off the top of my head.

    #41531
    murderousmincepie
    Participant

    I will have a look at this but currently I do not have the time. The problem might still persist so please do not close this thread in my absence.

    Thanks.

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