diff src/joystick/linux/SDL_sysjoystick.c @ 589:2e58ece48b61

Removed obsolete Linux joystick code
author Sam Lantinga <slouken@libsdl.org>
date Sat, 01 Feb 2003 20:25:34 +0000
parents 38b1a98aeb11
children b8d311d90021
line wrap: on
line diff
--- a/src/joystick/linux/SDL_sysjoystick.c	Sat Feb 01 19:59:23 2003 +0000
+++ b/src/joystick/linux/SDL_sysjoystick.c	Sat Feb 01 20:25:34 2003 +0000
@@ -77,7 +77,6 @@
 struct joystick_hwdata {
 	int fd;
 	/* The current linux joystick driver maps hats to two axes */
-	int analog_hat;		/* Well, except for analog hats */
 	struct hwdata_hat {
 		int axis[2];
 	} *hats;
@@ -366,14 +365,8 @@
 	/* Remap hats and balls */
 	if (handled) {
 		if ( joystick->nhats > 0 ) {
-			/* HACK: Analog hats map to only one axis */
-			if (old_axes == (joystick->naxes+joystick->nhats)){
-				joystick->hwdata->analog_hat = 1;
-			} else {
-				if ( allocate_hatdata(joystick) < 0 ) {
-					joystick->nhats = 0;
-				}
-				joystick->hwdata->analog_hat = 0;
+			if ( allocate_hatdata(joystick) < 0 ) {
+				joystick->nhats = 0;
 			}
 		}
 		if ( joystick->nballs > 0 ) {
@@ -547,20 +540,6 @@
 	}
 }
 
-/* This was necessary for the Wingman Extreme Analog joystick */
-static __inline__
-void HandleAnalogHat(SDL_Joystick *stick, Uint8 hat, int value)
-{
-	const Uint8 position_map[] = {
-		SDL_HAT_UP,
-		SDL_HAT_RIGHT,
-		SDL_HAT_DOWN,
-		SDL_HAT_LEFT,
-		SDL_HAT_CENTERED
-	};
-	SDL_PrivateJoystickHat(stick, hat, position_map[(value/16000)+2]);
-}
-
 static __inline__
 void HandleBall(SDL_Joystick *stick, Uint8 ball, int axis, int value)
 {
@@ -589,21 +568,12 @@
 					break;
 				}
 				events[i].number -= joystick->naxes;
-				if ( joystick->hwdata->analog_hat ) {
-					other_axis = events[i].number;
-					if ( other_axis < joystick->nhats ) {
-						HandleAnalogHat(joystick, other_axis,
-							events[i].value);
-						break;
-					}
-				} else {
-					other_axis = (events[i].number / 2);
-					if ( other_axis < joystick->nhats ) {
-						HandleHat(joystick, other_axis,
-							events[i].number%2,
-							events[i].value);
-						break;
-					}
+				other_axis = (events[i].number / 2);
+				if ( other_axis < joystick->nhats ) {
+					HandleHat(joystick, other_axis,
+						events[i].number%2,
+						events[i].value);
+					break;
 				}
 				events[i].number -= joystick->nhats*2;
 				other_axis = (events[i].number / 2);