Use xboxdrv with a keyboard controller?
-
It's an odd question, but here's where my mind is with this idea:
According to the fascinating xboxdrv wiki page, the driver can be used with any controller. . . and one of the benefits for old-school classics is described in section 2D: Restricting Directional Control to Four Ways. By the description, the driver is able to apply some sort of logic for making 4-way games playable using more capable joysticks/gamepads. The obvious implication is that an analog stick has a lot more than 4 directions, but with the setting enabled, it can work like a 4-way. I want that for my 8-way joystick (using an iPAC in Keyboard mode). Has anyone tried this, or does it really only apply to analog sticks? I'd like to solve the "sticking in the corners" issue that plagues 8-way joystick users everywhere when they play 4-way classics. Thoughts?
-
The good news is that for all applicable controllers, the four way restrictor mapping works like a dream. For example, it's so much more fun to play the 'Pac-Man' series and many other titles such as 'Burger Time' the way they were originally intended to be played. Not to mention completely eliminating the corner sticking you mentioned. Unfortunately, the bad news is that you cannot map a controller that reports itself as a keyboard with xboxdrv. I recently started experimenting with a possible way around this using udev to first translate the the key strings into event key codes, but it's too early to tell if it will pay off.
-
@mediamogul I definitely appreciate that you are investigating. Wow, that would be fantastic to "solve" this situation. There are the physical solutions like restrictor plates to force 4-way movement and block triggering the microswitches at the same time on arcade joysticks, but I always thought we should be able to solve this with software.
Some would argue that there's nothing to "solve", that the emulator is perfectly reproducing the experience of the original machine. While that may be true, it's not very flexible, and using an intelligent driver like this is smart from the playability perspective because it effectively emulates the 4-way hardware!
I happen to use an older iPAC4, but I know some folks with newer boards can configure them to detect as gamepads. This is an example where that might come in really handy!
-
I have to admit, with all of it's advanced functionality, I sometimes worry about the long term viability of xboxdrv. It's been over a year since it's last commit and simple issues as mundane as spelling errors are no longer addressed. However, as I was looking through the GitHub, I found a pull request that, if implemented, would seem to allow the mapping of a keyboard to a virtual controller. Unfortunately, it was introduced over two years ago and not so much as a reply was ever made.
-
@mediamogul It's a shame that we miss out on the possible future that would come with active development. Yet, I also understand competing priorities and that these are real people with active lives that may go beyond retro gaming driver development! The very fact that it's out there on Github in the first place is a good thing. There is always an opportunity for someone to pick it up and run with it. It's one of the reasons I continue to be in awe of everyone contributing to the RetroPie community.
I need to spend more time learning the ins and outs of github repos. Collaboration like this is fascinating to me.
-
Well said. I've been meaning to learn more about the basics of GitHub myself. For instance, do you happen to know if it's even possible to compile xboxdrv with that particular change to test it's ability?
-
@mediamogul that PR conflicts currently, so it would need to be updated/fixed.
-
Ah, that's too bad.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.