summaryrefslogtreecommitdiff
path: root/sys/arch/i386/isa/pms.c
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>1997-05-30 07:35:01 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>1997-05-30 07:35:01 +0000
commitb4408d3f3441e15fd5cb7844bd165783f3001dc8 (patch)
tree48ebbe6b6b47dc8e42fbcbc3e9e37a359c3dc987 /sys/arch/i386/isa/pms.c
parent65fec01c0d1460676525e6d1b0b5b4d708add5fc (diff)
glidepoint & hot-swap support; koji@math.human.nagoya-u.ac.jp
Diffstat (limited to 'sys/arch/i386/isa/pms.c')
-rw-r--r--sys/arch/i386/isa/pms.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/sys/arch/i386/isa/pms.c b/sys/arch/i386/isa/pms.c
index 44d4abbfebe..8b13cfbc5a8 100644
--- a/sys/arch/i386/isa/pms.c
+++ b/sys/arch/i386/isa/pms.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pms.c,v 1.12 1996/10/13 04:25:12 downsj Exp $ */
+/* $OpenBSD: pms.c,v 1.13 1997/05/30 07:35:00 deraadt Exp $ */
/* $NetBSD: pms.c,v 1.29 1996/05/12 23:12:42 mycroft Exp $ */
/*-
@@ -434,6 +434,16 @@ pmsintr(arg)
switch (state) {
case 0:
buttons = inb(PMS_DATA);
+ /* Re-enable if mouse is disconnected and reconnected. */
+ if (buttons == 0xaa) {
+ pms_dev_cmd(PMS_DEV_ENABLE);
+ break;
+ }
+
+ /* For GlidePoint tapping feature. treat as LBUTTON */
+ if ((buttons & PS2BUTMASK) == 0)
+ buttons |= PS2LBUTMASK;
+
if ((buttons & 0xc0) == 0)
++state;
break;