I have a patch that updates the Logitech PS/2++ protocol to support
their mice with up to 10 buttons (currently they're only using 8 on the
MX500 and MX700).  The PS/2++ protocol now uses 6 bits to identify a
packet instead of 4 as before.  Apparently, there's a touchpad protocol
that also used it (more on that later).

Updated PS/2++ protocol:

The identifier type bits are now 6 bits instead of 4:

      bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
byte1   1    1   t5   t4    1    M    R    L   Button data
byte2  t3   t2   t1   t0   d2   d1    1    0   X data
byte3  d8   d7   d6   d5   d4   d3   d2   d1   Y data

note: bit7, byte1 is 1 for external devices, 0 for internal ones

name   t    description
P0 - 0x0C - attached device type (corded mouse or receiver)
P1 - 0x0D - roller and buttons 4 & 5 info
P2 - 0x0E - buttons 4,5,6,7,8,9,10 info
... (other packet types aren't used/useful to X)

This is the new P2 packet:
 
      bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
byte1   1    1    0    0    1    M    R    L
byte2   1    1    1    0   B5   B4    1    0
byte3   0   B10  B9   B8   B7   B6   B5   B4

B6 = task switch button
B7 = SMS up button
B8 = SMS down button

B9/10 are not yet used in current mice

There are also 2 feature additions (not PS/2++):

Option SmartScroll (boolean) 
in the config enables/disables auto-scrolling on the SMSup/down buttons
on the MX500/700.

Also, 800 cpi resolution is now supported on mice that support it in
hardware (Dual Optical, MX300/500/700, ...).  Hopefully this will make
high sensitivity users happy :)

Here's my patch:

http://yhbt.net/normalperson/files/xfree86/4.3.0_logitech_ps2.patch

The downside of this patch is that some touchpad users that specify
MouseManPlusPS/2 will probably need a new protocol defined for them.

-- 
Eric Wong
_______________________________________________
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel

Reply via email to