#define TRANSLATE_JOYSYMBOL_TO_JOYNAME 0
#define TRANSLATE_JOYNAME_TO_JOYSYMBOL 1
-void translate_joyname(int *joysymbol, char **name, int mode)
+static void translate_joyname(int *joysymbol, char **name, int mode)
{
static struct
{
joystick_device_name[joystick_nr] : "");
}
+char *getFormattedJoystickName(const char *name_raw)
+{
+ static char name[MAX_JOYSTICK_NAME_LEN + 1];
+ boolean name_skip_space = TRUE;
+ int i, j;
+
+ if (name_raw == NULL)
+ name_raw = "(unknown joystick)";
+
+ // copy joystick name, cutting leading and multiple spaces
+ for (i = 0, j = 0; i < strlen(name_raw) && i < MAX_JOYSTICK_NAME_LEN; i++)
+ {
+ if (name_raw[i] != ' ')
+ {
+ name[j++] = name_raw[i];
+ name_skip_space = FALSE;
+ }
+ else if (!name_skip_space)
+ {
+ name[j++] = name_raw[i];
+ name_skip_space = TRUE;
+ }
+ }
+
+ // cut trailing space
+ if (j > 0 && name[j - 1] == ' ')
+ j--;
+
+ name[j] = '\0';
+
+ return name;
+}
+
static int JoystickPositionPercent(int center, int border, int actual)
{
int range, position;
return percent;
}
-void CheckJoystickData()
+void CheckJoystickData(void)
{
int i;
int distance = 100;
int JoystickExt(int player_nr, boolean use_as_joystick_nr)
{
- int joystick_fd = joystick.fd[player_nr];
+ int joystick_nr = joystick.nr[player_nr];
int js_x, js_y;
boolean js_b1, js_b2;
int left, right, up, down;
int result = JOY_NO_ACTION;
if (use_as_joystick_nr)
- joystick_fd = player_nr;
+ joystick_nr = player_nr;
if (joystick.status != JOYSTICK_ACTIVATED)
return JOY_NO_ACTION;
- if (joystick_fd < 0)
+ if (joystick_nr < 0)
return JOY_NO_ACTION;
- if (!ReadJoystick(joystick_fd, &js_x, &js_y, &js_b1, &js_b2))
+ if (!ReadJoystick(joystick_nr, &js_x, &js_y, &js_b1, &js_b2))
{
Error(ERR_WARN, "cannot read joystick device '%s'",
setup.input[player_nr].joy.device_name);
return JoystickExt(player_nr, FALSE);
}
-int JoystickButtonExt(int player_nr, boolean use_as_joystick_nr)
+static int JoystickButtonExt(int player_nr, boolean use_as_joystick_nr)
{
static int last_joy_button[MAX_PLAYERS] = { 0, 0, 0, 0 };
int joy_button = (JoystickExt(player_nr, use_as_joystick_nr) & JOY_BUTTON);
return JoystickButtonExt(player_nr, FALSE);
}
-int AnyJoystick()
+int AnyJoystick(void)
{
int i;
int result = 0;
return result;
}
-int AnyJoystickButton()
+int AnyJoystickButton(void)
{
int i;
int result = JOY_BUTTON_NOT_PRESSED;
return result;
}
-void DeactivateJoystick()
+void DeactivateJoystick(void)
{
/* Temporarily deactivate joystick. This is needed for calibration
screens, where the player has to select a joystick device that
joystick.status &= ~JOYSTICK_ACTIVE;
}
-void ActivateJoystick()
+void ActivateJoystick(void)
{
/* reactivate temporarily deactivated joystick */