The RGBCommander site has installation instructions, which I'll post here (maybe a little more clearly)
First you have to download the installer and extract it, and then get the installer folder on the PI. If you have trouble with that, let me know. So... assuming the installer is on the pi, you have to use a terminal to navigate to the installer and execute some terminal commands. You can do this directly on the pi in the console, or you can login remotely. I usually login via terminal and execute commands that way. If any of that makes no sense, let me know.
So.... navigate to the installer... wherever you put it. For argument's sake, lets assume it's here in the /home/pi/RGBcommander_0401_beta1_Setup folder
cd /home/pi/RGBcommander_0401_beta1_Setup
(cd is change directory)
make the installer executable:
sudo chmod +x ./setup.sh
(sudo sets you temporarily to the root/master user that has all the power over your whole system. chmod changes the permissions on files and folders... in this case making the script executable)
run the installer:
sudo ./setup.sh install
So... then it's installed, and you have to edit the configuration file to make it work with your setup. To edit that file:
sudo pico /usr/sbin/rgbcommander/rgbcmdd.xml
(pico is one of the simplest text editors in linux... others use Nano or Vi. Most retropie docs reference pico or nano. I've never seen much difference for my purposes between the two)
To page down use ctrl+v, to navigate up, ctrl+y. To save, hit ctrl+x and follow the prompts. You can use ctrl+w (where command) to search for something... which is handy to skip to a specific rom. For instance: ctrl+w then type sinistar and hit return. Or ctrl+w then qbert... it'll find the first instance... so you have to hit ctrl+w again a few times to find the rom.
That file has its own docs for configuration. The important parts for starters are probably:
<option
portnumber="2724"
led0="P1_START"
led1="P2_START"
led2="P1_BUTTON1"
retroarchbinary="retroarch"
rgbadefault="RANDOM"
activedefault="Orange"
inactivedefault="Black"
frontendbinary="attract"
waydefault="4"
/>
That is the option set for attract mode
And the joystick configuration:
<joystick name="U360_1" on="1" hwthrottle="100"/>
On needs to be set to "1"
Then, you'll notice thousands of lines of mame roms. To set the configuration override on a specific rom:
<rom id="qbert" way="12">
The options are:
4 4-Way
8 8-Way
10 2-Way, Left & Right
11 2-Way, Up & Down
12 4-Way, Diagonals Only
13 4-Way, No Sticky (UD Bias)
20 8-Way Easy Diagonals
21 Analog
22 Mouse Pointer
For the most part I use 12 and 21. 8 way and 4 way are pretty much automatic. Once you've made your changes, you need to restart rgbcommander. You can either reboot the pi, or restart rgbcommander.
sudo /etc/init.d/rgbcmdd restart
That's the easy part...
The tricky part is configuring qbert, congo bongo, etc. Even if you have your stick set to 4-way diagonal, Mame isn't expecting it. Originally, the stick was a 4 way stick, rotated... so the directions are up,down,left,right... pressing those directions on the keyboard and watching qbert go the wrong way made my head spin. So, you have to go into the tab menu. It was a bit annoying to figure out what direction should map to the diagonals... so what I did was:
I mapped up,down,left,right to A,S,D,F on the keyboard. Then, I pressed A; watched the direction qbert went, and went back in and mapped the A direction to my joystick when I pushed in the diagonal direction that corresponded. Then I did the same with all the other letters. My advmame config file has this:
qbert/input_map[p1_left] joystick_digital[0,0,0,1] joystick_digital[0,0,1,1]
qbert/input_map[p1_right] joystick_digital[0,0,0,0] joystick_digital[0,0,1,0]
qbert/input_map[p1_down] joystick_digital[0,0,0,1] joystick_digital[0,0,1,0]
qbert/input_map[p1_up] joystick_digital[0,0,0,0] joystick_digital[0,0,1,1]
You CAN edit that file directly if you want. It's found here:
/opt/retropie/configs/mame-advmame/advmame-0.94.0.rc
The rgbcommander configuration is pretty simple for the basics. Configuring Mame for the diagonal games is a little annoying. For the games like sinistar or pigskin, you can probably just set the way=21 and call it a day. Some games may have configurations to change between analog / 8-way controls.
If you're not that great with linux, the above can be a little overwhelming. If you have any problems, please post and I'll do what I can to help you out. I worked with Gijsbrecht on the xml file's documentation, so I've got a pretty good handle on that stuff.
By the way, I attached my rgbcmdd.xml file for reference. It's not a lot different from the default, but it might help if you get stuck. I haven't yet configured more than a few games... qbert, congo bongo, sinister and zaxxon I think.