Date: Mon, 11 Jan 1999 19:06:40 +0900 From: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp> To: Nick Hibma <nick.hibma@jrc.it> Cc: usb-bsd@egroups.com, FreeBSD current Mailing list <current@FreeBSD.ORG>, yokota@zodiac.mech.utsunomiya-u.ac.jp Message-ID: <199901111006.TAA02476@zodiac.mech.utsunomiya-u.ac.jp>
next in thread | raw e-mail | index | archive | help
Subject: Re: [usb-bsd] Re: Hand needed: debugging the USB mouse driver
In-reply-to: Your message of "Mon, 11 Jan 1999 09:26:23 +0100."
<Pine.GSO.3.95q.990111092335.7144C-100000@elect8>
References: <Pine.GSO.3.95q.990111092335.7144C-100000@elect8>
-----------------------------------------------------------------
>[thanks for all the info]
>
> > The level 0 is "compatibility level." The drivers stick to the
>...
> > The level 1 is "sysmouse level". 8 byte sysmouse protocol is used in
>...
> > The level 2 is called "native level." Currently only the psm driver
> >
> > The FreeBSD USB mouse driver should at least implement the level 0 and
> > 1 operation. If there already is an sort of accepted data format for
> > the USB mouse, that should be used for the level 0. The level 1 must
> > use the sysmouse protocol.
> >
> > (The level 0 may use the sysmouse protocol too, if there doesn't seem
> > to be the De facto standard yet. The OSes may choose to implement the
~~~~~~~ <- I meant to say "the OSes
other than FreeBSD"
> > sysmouse protocol too, if it suits them.)
>
>At the moment level 0 is PS/2 (3 buttons, 2 directions) and I tried to
>get the third direction working.
>
>But it makes sense to push that into level two. This means however that
>we need multiple encoding routines.
The standard PS/2 mouse protocol is 3 byte long and does not have a
field for the third axis (Z axis) motion. If you think you prefer the
PS/2 mouse style protocol, I think you should use the standard 3 byte
protocol at level 0, and the PS/2 IntelliMouse protocol (4 byte long
and encodes the third axis motion and the third button in the 4th
byte) at level 2.
But, as I understand that the USB mouse can have more buttons, I don't
think the PS/2 IntelliMouse protocol is suitable for the level 2
protocol, because sooner or later we have to change the level 2
protocol to accomodate more buttons.
>Probably best is to use sysmouse at level 0 & 1 and support both levels?
Or
a) Use the standard PS/2 protocol at level 0, sysmouse at level 1.
or
b) Use MouseSystems protocol at level 0, sysmouse at level 1. (The
first 5 bytes of the sysmouse protocol is the same as the MouseSystems
protocol.)
We can leave the level 2 protocol undecided for the time being.
Kazu
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199901111006.TAA02476>
