Skip site navigation (1)Skip section navigation (2)
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>