From imdave@mcs.net  Tue Dec 16 09:58:28 1997
Received: from base486.home.org (root@imdave.pr.mcs.net [205.164.3.77])
          by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id JAA13726
          for <FreeBSD-gnats-submit@freebsd.org>; Tue, 16 Dec 1997 09:58:25 -0800 (PST)
          (envelope-from imdave@mcs.net)
Received: from base586.home.org (root@base586.home.org [10.0.0.2])
	by base486.home.org (8.8.8/8.8.8) with ESMTP id LAA11948
	for <FreeBSD-gnats-submit@freebsd.org>; Tue, 16 Dec 1997 11:58:40 -0600 (CST)
Received: (from imdave@localhost)
	by base586.home.org (8.8.8/8.8.8) id DAA04420;
	Tue, 16 Dec 1997 03:56:56 -0600 (CST)
Message-Id: <199712160956.DAA04420@base586.home.org>
Date: Tue, 16 Dec 1997 03:56:56 -0600 (CST)
From: Dave Bodenstab <imdave@mcs.net>
Reply-To: imdave@mcs.net
To: FreeBSD-gnats-submit@freebsd.org
Subject: moused loses simultaneous buttons for 3-button microsoft/logitech mouseman
X-Send-Pr-Version: 3.2

>Number:         5321
>Category:       bin
>Synopsis:       moused loses simultaneous buttons for 3-button microsoft/logitech mouseman
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    yokota
>State:          closed
>Quarter:
>Keywords:
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Dec 16 10:00:02 PST 1997
>Closed-Date:    Wed Jan 7 05:58:13 PST 1998
>Last-Modified:  Wed Jan  7 05:59:00 PST 1998
>Originator:     Dave Bodenstab
>Release:        FreeBSD 2.2.5-RELEASE i386
>Organization:
myself
>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;

>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-bugs->yokota 
Responsible-Changed-By: yokota 
Responsible-Changed-When: Tue Dec 16 16:55:22 PST 1997 
Responsible-Changed-Why:  
I am currently working on moused. 
State-Changed-From-To: open->closed 
State-Changed-By: yokota 
State-Changed-When: Wed Jan 7 05:58:13 PST 1998 
State-Changed-Why:  
This has been fixed in 3.0-CURRENT. 
>Unformatted:
