On Thu, Jul 9, 2009 at 09:50, Stefan Dösingerstefandoesinger@gmx.at wrote:
Am 09.07.2009 um 02:58 schrieb Michael Gruber:
This patch series implements parts of the XInput library. You can use this to play games that support Xbox 360 Controllers. To be able to use this you will need to have your Controller working on Linux via the xpad kernel driver and the event interface. It will not work on any OS other than Linux. It supports gamepads, should work with guitars and wheels, but will not work with dance-mats. <1-XInputGetState.patch>
Is it possible to implement XInput on top of DirectInput? DirectInput already has some internal abstraction layers for differnet joystick APIs, and has basic support for OSX joysticks. Does DInput have enough capabilities to access all the Xbox controller's features? My gut says no, otherwise MS wouldn't have created a new lib. I guess its worth checking though.
I actually wrote an implementation on top of DirectInput earlier, but I ditched it since I couldn't get the features to work that I wanted. For example DirectInput does not support FF_RUMBLE, only FF_PERIODIC can be used. This means that the two vibration motors cannot be adjusted independently. Also, with DirectInput I was unable to re-connect the controller while an application was using it.