Hi!

5-Янв-2008 01:43 [EMAIL PROTECTED] (Eric Auer) wrote to
freedos-devel@lists.sourceforge.net:

>> >>   /3       - force 3-button mode (for Microsoft and PS/2 mice only)
>> >>              force wheel support (for PS/2 mice)
>> >> BTW, /3 option was used to force middle button support through L+R
>> It has effect - without it, PS2 handler will not return info about 3rd
EA> Well but then /3 only affects reporting now, not protocol.

     Protocol too. See "buttonsmask" variable at start of mouseupdate
procedure.

EA> Bit for middle button is the same in PS2 whether or not a
EA> middle button exists. Enabling wheel support, on the other
EA> hand, is a serious thing which involves switching to 4 byte
EA> protocol and doing a handshake, both of which can hang the
EA> PC if you have a bad BIOS or bad USB PS2 emulation. So the
EA> option to enable the wheel should stay a SEPARATE option
EA> from the "change reported button count but keep same proto".

     Well... What about /pw (where "w" is argument of /p option, like "2"
in /s2)?

>> EA> The "enable PS2 wheel" option should have another name then.
>> Why not /3? It already there and already does half of work (wheel
>> support is linked with 3rd button support).
EA> Not for PS2 mice. In PS2, wheel support is linked with 4th / 5th
EA> button support, but I believe CuteMouse does not read the 4th and
EA> 5th buttons yet anyway :-). And for COM port mice, as you say, a
EA> /3 option is no longer relevant for the protocol because L+R=M is
EA> not supported any more anyway.

     For serial mice, /3 is ignored for WM/LT protocols (they already offer
3 buttons), it have effect only for MS protocol...

     Ops. Reviewing MSLTproc I see, that "3 buttons support through MS
protocol" isn't removed, it remained there (see MSLTCODE2 label) and
should work... (My bad memory: I not remove this code, I just not use it for
myself). So, if/when you will add autoswitch, don't forget about this part:
MS3 protocol sends 3 bytes, but middle button toggle indicated by "empty
event" (not L+R, but packet, which identical to previously sent packet -
ie., this packet changes nothing, it just indicates event). This makes MS3
protocol incompatible with MS2/WM/LT, where middle button should be released
in case of truncated (3 bytes only) packets.

     The more so, see ctmouse.txt:

"
WARNING: when the middle button of a plain Microsoft mouse is enabled,
pressing left or right button along with the middle button can cause
"middle button state triggering" - i.e. when the middle button is pressed
the driver thinks it is released and vice-versa. This is a peculiarity of
the Microsoft protocol and can't be changed. If button triggering occurs
simply press the left or right button along with the middle button once
again to clear the problem.
"

     Alain, MS3 protocol is another reason, which hinder autoswitch
introduction.

EA> So as said - today, /3 does something
EA> simple (report 3rd button if PS2 even if PnP said there are 2) but
EA> an "enable PS2 wheel" option does something complicated (allow the
EA> driver to do wheel init setup at startup) and should be used with
EA> more care than the /3 option.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to