Questions regarding current autoconfig files for Xbox 360 pads

Hi!

I have been using the autoconfig files with my Xbox Wireless receiver for a while and have been wondering about a few things which I hope you can shed some light on :wink:

When using the xpad kernel driver autoconfig uses the udev config file for the Xbox wireless receiver, which is very complete and works well. The only thing here that I am a little puzzled about is why the analog triggers are mapped to l1/r1 and the shoulder buttons are l2/r2. This leads to SNES cores using the triggers as buttons…which works, but since those were digital inputs on the original SNES input it seems inconsistent. Does the RetroPad model propose to use the analogs as l1/r1?

When using the userspace driver I do have some problem getting the pads to work out of the box:

I am guessing the current config file assumes the driver is called with --triggers-as-buttons, the triggers will send button inputs, the dpad will send axis input. Why is this? Wouldn’t it be more consistent to assume the driver called with --dpad-as-buttons, which then would have the analog triggers as axis and the dpad as buttons (which resembles what these inputs actually are). I have made a config file for this, just wanted to check what the reasoning behind this is. Also, when using the current autoconfig file from the sources which have the dpad mapped as axis I can’t get any movement inputs in the snes9x-next core…not sure if the core does not like having the dpad directionals as axis or if it is another problem entirely…

Any advice on this would be great…

Nobody having these observations?

Perhaps these are peculiarities related to the wireless receiver? I don’t have any of these issues with wired 360 pads.

Hi hunterk,

many thanks for your reply.

Are you using the kernel or userspace driver for your pads?

For me the xpad kernel driver will result in RetroArch using the Xbox_360_Wireless_Receiver.cfg file, which works very well for me. When using the userspace driver XboxGamepad(userspacedriver).cfg is used which has the dpad mapped as an analog axis and the triggers as digital inputs. As I detailed this might match the default call to xboxdrv, doesn’t reflect the actual gamepad though and at least for me will result in the dpad not working in specific cores, possibly because they expect up_button instead of up_axis, etc.?