Provided by:
manpages-pl_20060617-2_all 
NAZWA
mouse - interfejs myszy szeregowej
KONFIGURACJA
Myszy szeregowe podłączane są do linii szeregowej RS232/V24, której
opis można znaleźć w ttys(4).
OPIS
Wstęp
Połączenia zwykłej wtyczki 9-pinowej stosowanej w myszach to:
pin nazwa zastosowanie
2 RX Dane
3 TX -12 V, Imax = 10 mA
4 DTR +12 V, Imax = 10 mA
7 RTS +12 V, Imax = 10 mA
5 GND Masa
Taka jest specyfikacja, ale w praktyce dla większości myszy wystarcza 9
V.
Sterownik może rozpoznawać mysz poprzez ustawienie niskiego poziomu
linii RTS, a naztępnie przywrócenie jej poziomu wysokiego. Po około 14
ms mysz odeśle 0x4D ('M') linią danych. Po kolejnych 63 ms
3-przyciskowa mysz zgodna z Microsoft prześle 0x33 ('3').
Względne przemieszczenie myszy wysyłane jest jako dx (wartość dodatnia
oznacza w prawo) i dy (wartość dodatnia oznacza w dół). Myszy mogą
pracować z różnymi prędkościami. Wybór prędkości odbywa się poprzez
cykliczne przejście przez prędkości 9600, 4800, 2400 i 1200 bitów/s, za
każdym razem zapisując dwa znaki z poniższej tabeli i czekając 0,1
sekundy. Następująca tabela pokazuje dostępne prędkości i sekwencje
znaków, służące do ich wyboru:
bitów/s sekwencja
9600 *q
4800 *p
2400 *o
1200 *n
Pierwszy bajt pakietu danych może być używany do celów synchronizacji.
Protokół Microsoft
Protokół Microsoft używa 1 bitu startu, 7 bitów danych, bez
parzystości i z jednym bitem stopu przy prędkości 1200 bitów/sekundę.
Dane są przesyłane do RxD w 3-bajtowych pakietach. Przesunięcia dx i dy
są przesyłane jako uzupełnienie do dwóch, lb (rb) są ustawiane gdy
wciśnięty jest lewy (prawy) przycisk myszy:
bajt d6 d5 d4 d3 d2 d1 d0
1 1 lb rb dy7 dy6 dx7 dx6
2 0 dx5 dx4 dx3 dx2 dx1 dx0
3 0 dy5 dy4 dy3 dy2 dy1 dy0
3-przyciskowy protokół Microsoft
Oryginalne myszy Microsoft posiadają jedynie dwa przyciski. Istnieją
jednak myszy trójprzyciskowe, które również korzystają z protokołu
Microsoft. Wciśnięcie trzeciego przycisku zgłaszane jest poprzez
wysłanie pakietu z zerowym przesunięciem i bez wciśniętych przycisków.
(Zatem, w odróżnieniu od pozostałych dwu przycisków, stan przycisku
środkowego nie jest zgłaszany w każdym pakiecie.)
Protokół Logitech
Szeregowa 3-przyciskowa mysz Logitech korzysta z innego rozszerzenia
protokołu Microsoft: gdy środkowy przycisk jest zwalniany, wysyłany
jest 3-bajtowy pakiet opisany powyżej. Gdy środkowy przycisk jest
naciskany, wysyłany jest 4-bajtowy pakiet, w którym czwarty bajt ma
wartość 0x20 (lub ma ustawiony przynajmniej bit 0x20). W szczególności,
naciśnięcie środkowego przycisku jest sygnalizowane jako 0,0,0,0x20,
gdy żadan inny przycisk nie jest wciśnięty.
Protokół Mousesystems
Protokół Mousesystems korzysta z 1 bitu startu, 8 bitów danych, bez
parzystości i dwu bitów stopu przy prędkości 1200 bitów/s. Dane są
wysyłane do RxD w 5-bajtowych pakietach. dx jest przesyłany jako suma
dwóch wartości uzupełnionych do dwóch, dy jest przesyłane jako
zanegowana suma dwóch wartości uzupełnionych do dwóch. lb (mb, rb) są
zerowane, gdy wciśnięty jest lewy (środkowy, prawy) przycisk myszy:
bajt d7 d6 d5 d4 d3 d2 d1 d0
1 1 0 0 0 0 lb mb rb
2 0 dxa6 dxa5 dxa4 dxa3 dxa2 dxa1 dxa0
3 0 dya6 dya5 dya4 dya3 dya2 dya1 dya0
4 0 dxb6 dxb5 dxb4 dxb3 dxb2 dxb1 dxb0
5 0 dyb6 dyb5 dyb4 dyb3 dyb2 dyb1 dyb0
Protokół Sun
Protokół Sun jest 3-bajtową wersją opisanego powyżej
protokołuMousesystems: ostatnie dwa bajty nie są wysyłane.
Protokół MM
Protokół MM używa 1 bitu startu, 8 bitów danych, nieparzystości i
jednego bitu stopu przy prędkości 1200 bitów/s. Dane są wysyłane do RxD
w 3-bajtowych pakietach. dx i dy są wysyłane jako pojedyncze wartości
ze znakiem, bit znaku oznacza wartość ujemną. lb (mb, rb) są
ustawiane, gdy wciśnięty jest lewy (środkowy, prawy) przycisk myszy:
bajt d7 d6 d5 d4 d3 d2 d1 d0
1 1 0 0 dxs dys lb mb rb
2 0 dx6 dx5 dx4 dx3 dx2 dx1 dx0
3 0 dy6 dy5 dy4 dy3 dy2 dy1 dy0
PLIKI
/dev/mouse Powszechnie używane dowiązanie symboliczne wskazujące na
urządzenie myszy.
ZOBACZ TAKŻE
ttys(4), gpm(8)