Subject: Re: PS/2 Mouse vs. Serial Mouse
To: Todd Vierling <tv@pobox.com>
From: Chris G Demetriou <Chris_G_Demetriou@ux2.sp.cs.cmu.edu>
List: port-i386
Date: 08/16/1996 12:48:12
> - M$ serial mice can attach to a serial mouse port, or a PS/2 mouse port
> if using the special mini-DIN adapter. (Some M$ compatible mice come
> with a mini-DIN as default and a 9-pin adapter for it.)
>
> - PS/2 mice are identical to serial M$ compatible mice excepting the
> connector. PS/2 mice send the same codes, same bit rate, but use a
> mini-DIN (hence you can use the adapters you see in shops). Unlike
> some M$ clone mice, PS/2 mice usually don't have a switch to send back
> Mouse Systems codes, and therefore usually only come in two, rather
> than three, button varieties.
I didn't know this. However, the essential factor is that both bus mice
and ps/2 mice use 'dedicated' hardware to do the data reception,
rather than relying on a general purpose serial port. (yes, the ps/2
aux port isn't necessarily dedicated to mice, but there's exactly one
of them, and if you have a ps/2 mouse that's where you plug it in. 8 -)
Because of this, bus mice and ps/2 mice have special in-kernel
drivers. Those drivers take whatever format the mice give them, and,
for consistency's sake, output the format of data the a 'normal' bus
mouse driver would.
Serial mice don't have any special processing done in the kernel; what
they put on the serial line is what you read from the serial line tty.
It's worth noting that I've never _seen_ a 2-button PS/2 mouse -- i've
only seen the three button variety. The PS/2 mouse protocol
accomodates three button mice with no evil hacks like chording, or
whatever it is. There are three sets of mouse button state bits.
> - A PS/2 mouse port is a serial port specially designed for mouse use;
> it isn't capable of variable speed transfer, and in some cases, is
> input-only.
Uh, i don't the appropriate docs here, but at least part of this is
not true.
the port is:
(1) not a 'mouse' port, and
(2) was not designed specifically for mice.
It's properly known as the PS/2 "AUX" port (perhaps with more words in
there 8-), and is designed to use other devices, e.g. graphics tablets
and light pens, as well. I've got a longer list of known device codes
in said docs, which are at work.
I think you're right that it's fixed speed (like the keyboard port,
no?), but i'm almost certain that it's not spec'd to be input-only.
cgd