Manpages

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:

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 nastę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 protokołem 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:

The first byte of a data packet can be used for synchronization purposes.

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:

3-przyciskowy protokół Microsoft
Oryginalne myszy Microsoft mają 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 przez 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 żaden 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:

Bajty 4 i 5 opisują zmianę, która nastąpiła od chwili wysłania bajtów 2 i 3.

Protokół Sun
Protokół Sun jest 3-bajtową wersją opisanego powyżej 5-bajtowego protokołu Mousesystemsi: 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:

PLIKI

/dev/mouse

A commonly used symbolic link pointing to a mouse device.

ZOBACZ TAKŻE

ttyS(4), gpm(8)

O STRONIE

Angielska wersja tej strony pochodzi z wydania 5.07 projektu Linux man-pages. Opis projektu, informacje dotyczące zgłaszania błędów oraz najnowszą wersję oryginału można znaleźć pod adresem https://www.kernel.org/doc/man-pages/.

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Paweł Olszewski <alder [AT] amg.pl>, Andrzej Krzysztofowicz <ankry [AT] green.pl> i Michał Kułach <michal.kulach [AT] gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres <manpages-pl-list [AT] lists.net>.