patch-2.4.4 linux/drivers/char/joystick/spaceball.c
Next file: linux/drivers/char/joystick/stinger.c
Previous file: linux/drivers/char/joystick/sidewinder.c
Back to the patch index
Back to the overall index
- Lines: 38
- Date:
Wed Apr 11 19:02:30 2001
- Orig file:
v2.4.3/linux/drivers/char/joystick/spaceball.c
- Orig date:
Fri Feb 9 11:30:23 2001
diff -u --recursive --new-file v2.4.3/linux/drivers/char/joystick/spaceball.c linux/drivers/char/joystick/spaceball.c
@@ -1,5 +1,5 @@
/*
- * $Id: spaceball.c,v 1.7 2000/06/24 11:55:40 vojtech Exp $
+ * $Id: spaceball.c,v 1.8 2000/11/23 11:42:39 vojtech Exp $
*
* Copyright (c) 1999-2000 Vojtech Pavlik
*
@@ -108,10 +108,8 @@
/*
* Spaceball 4000 FLX packets all start with a one letter packet-type decriptor,
- * and end in 0x0d. It uses '^' as an escape for 0x0d characters which can
- * occur in the axis values. ^M, ^Q and ^S all mean 0x0d, depending (I think)
- * on whether the axis value is increasing, decreasing, or same as before.
- * (I don't see why this is useful).
+ * and end in 0x0d. It uses '^' as an escape for CR, XOFF and XON characters which
+ * can occur in the axis values.
*/
static void spaceball_interrupt(struct serio *serio, unsigned char data, unsigned int flags)
@@ -126,7 +124,7 @@
return;
case '^':
if (!spaceball->escape) {
- spaceball->escape ^= 1;
+ spaceball->escape = 1;
return;
}
spaceball->escape = 0;
@@ -135,7 +133,7 @@
case 'S':
if (spaceball->escape) {
spaceball->escape = 0;
- data = 0xd;
+ data &= 0x1f;
}
default:
if (spaceball->escape) {
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)