Xbox HID Driver FAQ

Home Download Buy Get Help FAQ Screenshot

How do I get Halo for Mac OS X to work with it?

Download the Halo v1.5 patch from Macsoft. When you open Halo, hold down the command key, in the dialog that comes up select your gamepad and hit "Calibrate". When you are back in the Halo menu, go to Settings->Gamepad to assign game actions to the buttons/axes/triggers of the controller.

What games is it compatible with?

It works with any Mac OS X-native game that supports HID joystick input (sorry, no Classic/Mac OS 9 games will work). It can work with Mac OS X games that have no joystick support by using additional software like GamePad Companion.

Why doesn't function X work in game Y? Also, why doesn't game Y work?

I get a lot of questions about games that either don't work at all or don't work completely or very well. HID is a relatively new technology on the Mac and is somewhat more difficult to use for game developers. Due to this fact, game developers have been slow to adopt it, and when they have adopted it they've made mistakes or introduced limitations in their implementations due to lack of experience with this technology. Unfortunately, there is no way to interface with joysticks/gamepads on Mac OS X besides HID.

Here are some guidelines that may help you:

If you have any tips or hints you've discovered for a particular game please email me and I'll post them here.

Why doesn't USB OverDrive work?

USB OverDrive only works with native USB HID devices, which most Xbox devices are not (which is what my driver is for, of course!).

Does Force-Feedback work?

No. That feature may be added in the future.

How do I get Unreal Tournament 2003 to work?

First, open ~/Library/Application Support/Unreal Tournament 2003/User.ini, and make sure you have these lines:

JoyX=Axis aStrafe SpeedBase=32768.0 DeadZone=0.2 JoyY=Axis aBaseY SpeedBase=32768.0 DeadZone=0.2 Invert=-1 JoyZ=Axis aBaseX SpeedBase=1.0 DeadZone=0.2 JoyR=Axis aLookUp SpeedBase=1.0 DeadZone=0.2 Invert=-1 JoyU= JoyV= JoySlider1= JoySlider2=

Note, you can adjust the DeadZone and SpeedBase parameters here to adjust sensitivity.

Next, go into the preference pane, and make sure both triggers are mapped to buttons, and that both sticks have the "Invert Y Axis" option enabled.

Next, launch Unreal Tournament, go to the input settings and select "Enable Joystick".

Next, quit and relaunch Unreal Tournament, go into the controls settings, and map the buttons to what you want (select the action with the mouse and press the joystick button you want mapped to it).

Lastly, the first time you start a game, move each stick in a full circle so UT can calibrate each stick.

Why doesn't GamePad Companion mouse emulation work with the sticks?

Not all games will behave the same when emulating a mouse with the Xbox controller's sticks. This is due to limitations in GPC, how games expect the mouse to work, and the fundamental problem of mapping an absolute-motion device (joystick) to a relative-motion device (mouse).

In Quake-style games, for example, you may see a number of symptoms, including endlessly spinning or being stuck in one view/direction, abrupt rotation and movement, and not being able to spin in a complete circle.

Depending on the game, it may be impossible to get the desired result. However, there are some things you can try that will fix some games. Depending on the symptoms, the solution will be different. Here is a general guide:

Home Download Buy Get Help FAQ Screenshot