So I managed to solve this, but I'm not entirely sure how. I fixed the under-voltage issue with a better power supply. Entered a game and had the same issue. Remapped after exit, then decided to see if it would do it again with other emulators, and like magic, I could never get the issue to reproduce even after a reboot. So.... I have no idea. My guess is it was related to the undervoltage and the board wasn't getting enough power causing a small memory dump when exiting the emulator.
Hey bud, we are in the same boat. Run jstest and write down all the inputs and corresponding numbers. Use your Rii to hit f1 while in lr-mupen64plus-next to open the retroarch GUI and scroll down to "controls", then remap everything according to you jstest results. This got me to the point where every button works except for c-up and c-right. Please let me know if you can get any further or if you've already solved the issue.
@grant2258 Hi Grant - yes I think I've realised that this is the problem. The default RetroArch setup creates a virtual gamepad and binds both virtual gamepad and keyboard. I think the problem with Defender is that these mappings overlap - so the virtual gamepad is triggering as well as producing a keypress, and these are both bound to different things (eg thrust AND fire).
I am dealing with a similar issue and I am now very, very close to getting it working. I found a post from a year or so ago which suggested that opening the retroarch GUI from within the emulator, then remapping from the "control" menu therein. For me, this involved hitting f1 on a keyboard to bring up the retroarch gui and then switching each button around according to the results of jstest, and finally saving a "core remap file". This let me fix everything but a few buttons. The issue that remains is that there is no listing in that controls menu for buttons 0 and 1, which are my C up and C right.
yes, it does. at least, the libretro ones (lr-mame2003, for example).
It didn't seem to for me. I'll have to go back though to process and document what I do better (my memory is not what it once was...). But the way I remember it, I did the initial setup, when into Arcade, played Galaga, and neither the fire button nor the joystick worked. The Tankstick uses out-dated mappings for MAME (I guess they changed at some point). So I assumed that was the cause. I ended up remapping the Tankstick to just 'regular' letters on the keyboard, ran the controller setup, and still no-go. I had to go into the tab menu, and do a 'global' mapping there for it to work.
I'm running into a similar issue as well. Through searching through the moonlight github it seems the move to SDL2 has caused some issues with RetroPie. The developer of Moonlight has stated that they wont bother with fixing the problem as it comes from the way RetroPie handles controllers using SDL2 framework. Something around how the buttons are mapped and what the system sees. I'd love more help trying to track this down as well.
Yeah, for starters, how about reading this, then provide the details listed. It's hard to give advice when we don't know stuff about your build, which exact emulator you are using and so on and so on. Be specific.
@tribunal88 The turnaround on this is fantastic, and you are finding things that might have otherwise persisted for a long time.
I have not updated mine since 3.2, as the install was incomplete on my system for some reason. I ended up building my own references to the .rc file using the version number in emulators.cfg. I will have to reverse this and go with a generic configuration to accommodate the rapid updates.