ControllerMate is a controller programming tool that allows custom functionality to be added to standard HID devices (joysticks, trackballs, gamepads, keyboards, and more).
Using a graphical interface and drag-and-drop editing, users can program controller buttons to perform complex keyboard and mouse sequences. Programming is accomplished using “building blocks”. Each type of building block performs a different type of function. Building blocks can be individually configured and linked together to perform an endless variety of tasks.
Common programming tasks that can be performed with ControllerMate include:
Configuring controller buttons to act like individual keyboard keys
Configuring controller buttons to generate simple text
Configuring controller axes to act like mouse axes
Assigning an AppleScript to a controller button
Redefining keyboard keys
Assigning a custom acceleration curve to a mouse