/* Each axis gets scaled from evdev's reported minimum * and maximum into bzflag's [-1000, 1000] range. */ value = currentJoystick->axis_info[axis].value; /* Correct for ruskie's crazy stick */ value *= 2; if (value > 255) value = 255; else if (value < -255) value = -255; /* Back to scaling */ value -= currentJoystick->axis_info[axis].minimum; value = value * 2000 / (currentJoystick->axis_info[axis].maximum - currentJoystick->axis_info[axis].minimum); value -= 1000;