Contents
Assign Gamepad to Player
In /opt/retropie/configs/all/retroarch.cfg add the following lines:
input_player1_joypad_index = 0 input_player2_joypad_index = 1 input_player3_joypad_index = 2 input_player4_joypad_index = 3
Note: the index corresponds to the /dev/input/js# where # = 0-3
If you want to assign /dev/input/js0 to player 4 then the config would look like this:
input_player4_joypad_index = 0
Exit Emulator from Gamepad
In /opt/retropie/configs/all/retroarch.cfg add the following lines:
input_enable_hotkey_btn = "6" input_exit_emulator_btn = "7"
On a Logitech F310 this would require the user to press the BACK + START keys to exit the emulator. You can assign the same button to both settings and it will cause a single button to exit the emulator. On the Logitech F310 the logo is actually a button (button 8), you could set it like this:
input_enable_hotkey_btn = "8" input_exit_emulator_btn = "8"
Note: "input_enable_hotkey_btn" is a modifier key, and can cause issued in games. For example if you assign the modifier key to the "Select" key (button 6 in the example above) then select acts funny in games. So assign the modifier key to a key that you rarely use in game.
Hide Emulators in EmulationStation
You can hide or re-order emulators/systems in EmulationStation by editing /etc/emulationstation/es_systems.cfg
For example, if you only want Nintendo based emulators you could remove or comment out the other systems.
<?xml version="1.0"?>
<systemList>
<system>
<name>nes</name>
<fullname>Nintendo Entertainment System</fullname>
<path>~/RetroPie/roms/nes</path>
<extension>.nes .zip .NES .ZIP</extension>
<command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _SYS_ nes %ROM%</command>
<platform>nes</platform>
<theme>nes</theme>
</system>
<system>
<name>snes</name>
<fullname>Super Nintendo</fullname>
<path>~/RetroPie/roms/snes</path>
<extension>.bin .smc .sfc .fig .swc .mgd .zip .BIN .SMC .SFC .FIG .SWC .MGD .ZIP</extension>
<command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _SYS_ snes %ROM%</command>
<platform>snes</platform>
<theme>snes</theme>
</system>
<system>
<name>n64</name>
<fullname>Nintendo 64</fullname>
<path>~/RetroPie/roms/n64</path>
<extension>.z64 .n64 .v64 .zip .Z64 .N64 .V64 .ZIP</extension>
<command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _SYS_ n64 %ROM%</command>
<platform>n64</platform>
<theme>n64</theme>
</system>
<!--
<system>
<name>retropie</name>
<fullname>RetroPie</fullname>
<path>~/RetroPie/retropiemenu</path>
<extension>.rp .sh</extension>
<command>sudo /home/pi/RetroPie-Setup/retropie_packages.sh retropiemenu launch %ROM% </dev/tty >/dev/tty</command>
<platform/>
<theme>retropie</theme>
</system>
<system>
<name>amiga</name>
<fullname>Amiga</fullname>
<path>~/RetroPie/roms/amiga</path>
<extension>.sh .SH</extension>
<command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _SYS_ amiga %ROM%</command>
<platform>amiga</platform>
<theme>amiga</theme>
</system>
-->
</systemList>
Note: To comment an XML file use HTML commenting syntax:
Begin Comment: <!-- End Comment: -->
Reference
https://github.com/RetroPie/RetroPie-Setup/wiki/RetroArch-Configuration
https://www.reddit.com/r/RetroPie/comments/31d774/question_how_do_i_force_a_controller_to_be_player/