OK, I think I’ve finally got my two controllers working properly, and I know, in general, how to configure them in all three places I need to — MAME, Retroarch, and Emulation Station.
Now, it occurs to me that these configuration files are fine if you plan to keep the same controller or two plugged in all the time — but what if you want to switch out controllers? Let’s say I wanted to use a Nintendo-like controller for NES games, but a PS1-style controller for PSX games, or maybe my girlfriend wants to bring over her own… you see what I’m getting at. Is there a way to maintain a “library” of controller configurations and swap between them? (I imagine a shell script could do most of the work; I’m just wondering if there’s a built-in solution.)
Now I have a second, related question: The designation of controllers as /dev/input/js0 and /dev/input/js1 — where does that come from? Is it based on the order in which they are connected, or what USB port they’re in, or what?
Basically, I’d like to try to set up a situation in which I unplug a controller and plug in a different one, and the system recognizes it and applies the right configuration. First of all, I need to figure out how it’s seeing the controllers in the first place.