Date: Tue, 16 Dec 1997 03:56:56 -0600 (CST) From: Dave Bodenstab <imdave@mcs.net> To: FreeBSD-gnats-submit@FreeBSD.ORG Subject: bin/5321: moused loses simultaneous buttons for 3-button microsoft/logitech mouseman Message-ID: <199712160956.DAA04420@base586.home.org> Resent-Message-ID: <199712161800.KAA13841@hub.freebsd.org>
index | next in thread | raw e-mail
>Number: 5321
>Category: bin
>Synopsis: moused loses simultaneous buttons for 3-button microsoft/logitech mouseman
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Tue Dec 16 10:00:02 PST 1997
>Last-Modified:
>Originator: Dave Bodenstab
>Organization:
myself
>Release: FreeBSD 2.2.5-RELEASE i386
>Environment:
moused -t mouseman ...
--or--
moused -t microsoft ...
>Description:
The bits corresponding to each button should reflect the current
state of the button -- on or off. If multiple buttons are pressed
simultaneously, each button's state should be independent of the
other buttons.
>How-To-Repeat:
Start moused with the -d and -f flags. Use a microsoft or logitech
3-button mouse. Press button 1 and hold, press button 2 and hold,
press button 3 and hold, release button 1, release button 2, and
release button 3. The button bits should be 0x04, 06, 07, 03, 01, 00
but they are not.
>Fix:
--- moused.c.orig Mon Sep 29 01:36:13 1997
+++ moused.c Tue Dec 16 03:33:04 1997
@@ -557,6 +557,7 @@
act.buttons = (rodent.lastbuttons & 2)
| ((int)(pBuf[0] & 0x20) >> 3)
| ((int)(pBuf[0] & 0x10) >> 4);
+ rodent.lastbuttons = act.buttons; /* save new button state */
act.dx = (char)(((pBuf[0] & 0x03) << 6) | (pBuf[1] & 0x3F));
act.dy = (char)(((pBuf[0] & 0x0C) << 4) | (pBuf[2] & 0x3F));
break;
>Audit-Trail:
>Unformatted:
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199712160956.DAA04420>
