[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Wheel mouse



On Sat, 2002-03-09 at 15:21, Daniel Toffetti wrote:
> On Saturday 09 March 2002 00:17, Kent West wrote:
> > >This is what I currently have (working well except for the wheel):
> > >
> > >Section "InputDevice"
> > >    Identifier	"Mouse1"
> > >    Driver	"mouse"
> > >    Option "Protocol"    "IMPS/2"
> > >    Option "Device"      "/dev/mouse"
> > >#    Option "Emulate3Buttons"
> > >    Option "ZAxisMapping" "4 5"
> > >EndSection
> >
> > Try commenting out the Emulate line (you have three buttons, so you
> > don't need to emulate a third button). The IMPS/2 and ZAxisMapping
> > line activate the scroll wheel. This assumes you're not running gpm
> > and that /dev/mouse is a link to your actual mouse device (reasonable
> > assumption, since you say it works well with your original
> > configuration).
> 
> Well, in fact gpm _is_ running. Using ps -ax I see it's started as:
> 
> gpm -m /dev/psaux -t ps2 -Rms3
> 
> But the "device" in XF86Config-4 is "/dev/mouse" which in fact is a 
> link to /dev/gpmdata. I'm completely puzzled... I'll try to look for 
> and read about the relationships between gpm and the xserver. Thanks 
> for your help !

Aha!  This makes no end of sense.  Your mouse is plugged into the PS/2
port, and gpm gets the input from it via /dev/psaux.  gpm then converts
the input from the mouse into Microsoft mouse format and passes it on to
X via /dev/mouse aka /dev/gpmdata.  Since it is the Microsoft mouse
format, X goes insane when you specify the IMPS/2 protocol, which looks
nothing like the Microsoft mouse protocol, and the scroll wheel never
works, because the Microsoft mouse protocol doesn't support them.

The fix should be simple - reconfigure gpm and change the repeat type
from "ms3" to "raw", which should then just pass on everything via
/dev/gpmdata to X.  You then change the X configuration back to IMPS/2,
which will then correctly recognize the scroll wheel.

Alternatively, if you don't need the mouse at the text console, you
could remove gpm.  I got berated for suggesting that to someone else a
week or so ago, but I note that the person who berated me for suggesting
that has spent the entire time between then and now trying to help
someone else get gpm working, and has not yet succeeded.  If you do
remove gpm, then /dev/mouse should be a link to /dev/psaux.

In either case, you then change the X configuration back to IMPS/2 and
set the ZAxisMapping and Emulate3Buttons lines as suggested before,
which will then correctly recognize the scroll wheel because it's
getting the raw data from the mouse, including the scroll wheel events.

HTH,



Reply to: