Subject: Re: ADB oddities
To: John P. Wittkoski <jpw@netscape.com>
From: Colin Wood <cwood@ichips.intel.com>
List: port-mac68k
Date: 12/29/1997 17:28:16
John P. Wittkoski wrote:
> 
> (Yeah, ok, so I'm a little behind in reading mail!)

;-)
 
> Colin Wood wrote:
> > 
> > Xiamin Raahauge wrote:
> > >
> > > Thanks to the advice of Colin Wood and Alan Briggs, I switched to a HWDIRECT
> > > kernel. Now I can reinit adb at will! Muahahaahahahah!
> > > Here's the dark side to this new found power. This is the message I got while
> > > booting:

> > > adb: adjustable keyboard at 2
> > > adb: extended mouse <LT\^C> 0-button 3539 dpi unknown device at 3
> > > adb: misc. device (remote control?) (2) at 7
> > 
> > I see the same thing (well, something similarly strange) on my Q700 using
> > a Logitech Mouseman.
> > 
> > > That mouse dpi seems to be a tad bit off. Also, I have just noticed that the
> > > third mouse button, which worked with MRG_ADB, no longer works. The mouse in
> > > question is a Logitech TrackMan Marble.
> > 
> > Yeah, that's pretty much what I got.
> > 
> > > Here is what I got running my adb reinit program (from dmesg):
> > > adb: using II series hardware support
> > > adb: cleanup: nothing returned
> > > adb: ADBReInit complete
> > > adb: adjustable keyboard at 2
> > > adb: extended mouse <LT> 0-button 566 dpi unknown device at 3
> > > adb: misc. device (remote control?) (2) at 7
> > >
> > > The dpi is different!!!
> 
> > I definitely think the erroneous dpi is a result of timing problems with
> > the HWDIRECT code.  Maybe John's latest code will perform better.  You
> > might try downloading his latest HWDIRECT patches off of Puma and seeing
> > if they help things...
> 
> I don't think this is a timing issue on the ADB's part. Most likely the
> ADB "packet" is received correctly, but the information reported back is
> not recognized, so it defaults to thinking the mouse is simply an
> extended mouse, and mis-interprets the dpi/button info.

Hmmmm...that'd be a little strange, since this definitely is an EMP
compatible mouse.  It's recognized just fine under MRG-based ADB with the
latest recognition code.
 
> The earlier HWDIRECT kernels (356, for example), probably did not have
> all the most recent "detection" code for this mouse type that had been
> put into -current.

I don't think that's really the problem.  This isn't one of the broken
semi-EMP Logitech mice that I'm using, it's fully EMP capable (no
psuedo-keyboard in slot 15 or anything like that).  The code should be
doing a listen register 3 to change the handler id to 4, followed by a
talk register 1 (or is it 2?) to get the EMP data from the mouse.
Somehow, this EMP data is getting corrupted.  Likewise, the incoming
button data seems to be coming in incorrectly as well, as I seem to
remember that only the first button behaves correctly, the middle button
sometimes works, and the right button not at all.  I haven't had time to
really dig into this one yet, but I'd be more than willing to test out
anything you come up with.

None of this behavior is observed under the MRG-based ADB code.

> Have either of you tried a 1.3_alpha kernel, which should have all the
> HWDIRECT fixes AND the code that detects more ADB device types properly?

I've used a fairly recent kernel (probably more recent than the last
HWDIRECT kernel) with the HWDIRECT stuff turned on, and that's where I got
the funny message.  I'll try it again sometime soon with 1.3, tho.

Later.

-- 
Colin Wood                                 cwood@ichips.intel.com
Component Design Engineer - MD6                 Intel Corporation
-----------------------------------------------------------------
I speak only on my own behalf, not for my employer.