First thing you'll have to do is to add the DLL to your references.
You can do that by right clicking on "References" in the project
explorer, selecting "Add Reference," and then browsing to the DLL.
Now you can add the using directive ("using OXClib;") to the classes
you want to use the controller in.
After that the controller is ready to go and works very similar to
the normal GamePad. But depending on the codec and controller settings,
the button mapping might differ from user to user. This controller
configuration can be set by accessing the config directly through
OldGamePad.Config or by loading a config file.
All values not specified will be set to zero, so you don't have to include items that don't have a digital button state.
This, by the way, is the standard configuration, which will be used if you don't change anything.
The vibration works slightly different than the GamePad's.
For one thing, you currently can't apply individual speeds to the two motors,
but you can set the duration of the vibration (in milliseconds). The default duration
is 250ms.
In order for the OldGamePad to recognize new connections, it has to be updated. That happens
automatically by default, but since this is a rather slow process, it only happens every 20 calls. This is a value that
worked more than well for me, but if it should slow your game down or you want to shorten the delay, you can
adjust it easily to your own value by specifing OldGamePad().UpdateInterval.