I know this topic is really old but i had the same problem myself and solved it. I noticed that the button mappings in RetroArch interfered with MAME 2010's mappings. One button could mean one thing in RetroArch but another in MAME so RetroArch would say to MAME something like - Hey! We also want to press this button!
What i did was that i blanked out the button mappings in RetroArch so they're seen as ---. After this my MAME mappings worked straight away. Then saved it as a content (game) specific configuration.
@mitu@grant2258 thank you both for all your help. After I couldn’t get any of my controllers working, I imaged a new SD card and started fresh. I can successfully use the Dragonrise controllers. I’m thinking the problem may be permissions related as for some reason the default account (pi?) May have lost permissions to write config files. I’ll look into it.
None of this would be a problem if the ES input configuration were passed to retroarch properly.
My suspicion is that you've reset the RetroArch configuration and it doesn't look for the gamepad auto-configuration file in the folder where Emulationstation saves it (/opt/retropie/configs/all/retroarch-joypads).
Hi, firstly, the thing of DragonRise Controller is weird, I have agamepad and is also recognizable as a DragonRise, but I guess it happens when the controller s not officil. Second, arcade joysticks (The ones you bought) are not analog, they are 8-way sticks. Anyway, there are a few N64 games that work with the pad, like Kirby one.
@mediamogul No, the joysticks have digital microswitches. I noticed an error in my reasoning: The buttons have nothing to do with the problems, as their ports are generating type 1 events. Only the joystick ports on the decoder board (four for each joystick, one per microswitch) generate type 2 events.
That said, the joysticks' microswitches are connected to the ports for axis number 0+1, whereas the ghost inputs only come from axis number 2, which nothing is connected to.
I tried to set the dead zones of axis 2 on both joysticks to its whole range of -32767 to 32767, hoping that would lead to the driver ignoring them alltogether. After that, jstest doesn't show any input from them anymore, but the screensaver still recognizes some input in irregular intervals and quits back to ES.