Hi Geert,
I still get no mouse events in either /dev/input/mice or .../mouse0, though. I
suspect the mouse open hook never gets called. Same bug might affect amimouse
(though the open function does do the full hardware setup there).
Thanks, we're making progress :-)
Sort of ...
I get events from /dev/input/mouse0 and /dev/input/mice (atari_defconfig).
The kernel says (ARAnyM, windowed mode):
| input: Atari mouse as /devices/virtual/input/input1
| Reseting weird mouse packet: 942, 379, 0
| Reseting weird mouse packet: 943, 379, 0
| Reseting weird mouse packet: 945, 378, 0
| Reseting weird mouse packet: 948, 378, 0
| Reseting weird mouse packet: 956, 376, 0
That's the broken packets - the real ones shoule be fine (small x and y
increments in byte 1 and 2, 0x8 in byte 0 unless button pressed).
When running X under ARAnyM (depth 16), some shortcomings show up:
- up and down are interchanged (works fine when rolling the mouse over the
bottom surface of the table --- old arabic map style ;-)
Weird - the inversion of the y direction increment is taken from the old
busmouse driver code where it used to work OK. The point of reference is set to
be at the top of the 'screen' so moving the mouse down ought to generate
positive increments. I'll test that. If the point of reference changed between
busmouse and generic input mouse, just drop the sign inversion on buf[2].
- the left and right mouse button are interchanged
The busmouse driver had no annotation as to the semantics of the buttons so O
guessed bit 0 was for the left button. Guessed wrong, it seems.
- the middle mouse button is dead
As is expexcted - the original code was for a two-button mouse only. If Petr
knows what the ikbd format for the third button is (on real hardware) it's easy
to add that in. WAG: bit three of the first byte, so make
buttons = (buf[0] & 1) | ((buf[0] & 2) << 1);
into
buttons = ((buf[0] & 1) << 2) | ((buf[0] & 2) >> 1) | ((buf[0] & 4) >> 1) ;
and give it a whirl!
Please put a `---' here, so `git am' will strip the signature and the diffstat.
OK, noted.
Signed-off-by: Michael Schmitz <schmitz@xxxxxxxxxx>
Please put the SoB just below the changelog, else `git am' will strip it off.
OK; I'll stick that into my commit message and try to get that into the diff.
Cheers,
Michael
--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html