I wasn't going to bring that up in this thread but since we went that direction...
I was actually planning my cabinet to have player one as one set of joystick/buttons off of Pi USB 1, player two as the second set off Pi USB 2, the dedicated buttons on the third controller on Pi USB 3, and then a hub stuck into Pi USB 4 which would tie (via extension cables) to two external USB ports on the cabinet, to which I could plug in a keyboard, or two SNES joypads or other types of joypads or joysticks. I was going to cross that "hot swappable/which is active/how do I program that" bridge when I came to it.
It sounds like, from above, it actually matters which of the 4 USB ports on the Pi I plug into? I figured they were all just addressed the same. Is that true? If so, I assume I plug a hub into USB 4 and those become 4, 5, 6, 7...?
To clarify what I'm actually doing...
I'm making a portable console like those ones you can buy online, which simply has a power cord and an HDMI cable and can be plugged into a TV anywhere. But my intent is to have the central portion of the panel have all the "hotkey default" dedicated buttons - save, load, exit, reset, etc. - and then have each of the two joy/button controller areas be small pull-out boxes with long cords, so the "base" can sit on the coffee table while the two controllers get passed between the kids sitting on the sectional sofa. I have plans in my head, and I'm using USB extension cables as the "pull out" cables (connecting the zero-delay boards to the Pi in the base).
But what this means is that I can't (at least easily) use the pin plugs on the zero-delay boards in each "remote controller" for the buttons which I want on the base. Each zero-delay board will be in the pull-out box, and the "hotkey" dedicated buttons will be several feet away in the base on the coffee table. The only way to have those "hotkey" buttons plugged into the boards which operate the joysticks and action buttons would be to do some wire dissecting and soldering, and I don't want to bother with that.
So my original question above was, can I use a third zero-delay board in the "base" which would only have those load-save-exit-reset-RGUI dedicated buttons, but NO actual controls tied to it? I suppose another way of looking at it is, can you "null" out all the hotkeys on player one and player two, and then null out all the directional/joystick/X/Y/A/B stuff on player 3 and still assign the hotkey commands?
I'm working up a sketch of what I'm imagining for more clarity and will post when done, if this isn't clear... or too long that you didn't read it... :)
Reviving this, because I just found out that you can have the hotkey act as a dedicated pausekey if in Retroarch you assign it to the same button press.
In my situation, my middle front button on my arcade is mapped to keyboard "o".
In Retroarch I assigned both my hotkey and my toggle pause key to "o", and this means that games pauses when I press it, but it still serves as a hotkey, so the other hotkey commands works as well (though the game pauses).
Not sure if this will work as an exit button (the game will then exit when you hotkey), but with pause it does!