diff --git a/src/g_game.c b/src/g_game.c
index b4a127a73149eb5e7f5cb09b087f291ae775f89e..b406b8f9488bb7baf273ca825800e906cdf0c333 100644
--- a/src/g_game.c
+++ b/src/g_game.c
@@ -935,12 +935,7 @@ static INT16 GetJoystickAxisValue(UINT8 which, joyaxis_e axissel, INT32 axisval)
 
 	// flip it around
 	if (flp)
-	{
-		if (retaxis == -32768)
-			retaxis = 32767;
-		else
-			retaxis = -retaxis;
-	}
+		retaxis = -retaxis;
 
 	return retaxis;
 }
@@ -948,7 +943,6 @@ static INT16 GetJoystickAxisValue(UINT8 which, joyaxis_e axissel, INT32 axisval)
 INT16 G_JoyAxis(UINT8 which, joyaxis_e axissel)
 {
 	INT32 axisval;
-	INT32 value;
 
 	// find what axis to get
 	switch (axissel)
@@ -981,16 +975,7 @@ INT16 G_JoyAxis(UINT8 which, joyaxis_e axissel)
 			return 0;
 	}
 
-	value = GetJoystickAxisValue(which, axissel, axisval);
-	if (axissel == JA_LOOK)
-	{
-		// Look is inverted because +Y goes _down_ in gamepads.
-		if (value == -32768)
-			value = 32767;
-		else
-			value = -value;
-	}
-	return value;
+	return GetJoystickAxisValue(which, axissel, axisval);
 }
 
 static INT16 GetAnalogInput(UINT8 which, gamecontrols_e gc)