MOUSE(4)

NOM
mouse - Interface de souris serie.

CONFIGURATION
Les souris series sont connectees sur une ligne d'interface RS232/V24 voir cua(4) pour la description de ces lignes.

DESCRIPTION

  Introduction
Le brochage de la prise DB9 classique utilisee pour les souris est le suivant :
broche | nom | utilisation
2 | RX | Donnees
3 | TX | -12 V, Imax = 10 mA
4 | DTR | +12 V, Imax = 10 mA
7 | RTS | +12 V, Imax = 10 mA
5 | GND | Masse
Il ne s'agit que de specifications, en realite 9 V suffisent avec la plupart des souris.

Le driver peut s'assurer de la presence d'une souris en abaissant la tension sur la broche RTS. Environ 14 ms plus tard, la souris enverra l'octet 0x4D sur la ligne RX. Encore 63 ms plus tard, les souris compatible Microsoft enverront 0x33 sur RX. D'autres types de souris enverront d'autres valeurs.

Le mouvement relatif de la souris est transmis en tant que dx (positif vers la droite) et dy (positif vers le bas). Diverses souris peuvent travailler avec des vitesses diferentes. Pour selectionner la vitesse, il faut parcourir le cycle 9600, 4800, 2400 et 1200 bit/sec, en envoyant chaque fois les deux caracteres de la table ci-dessous, et attendre 0,1 seconde. La table ci-dessous montre les differentes vitesses, et les deux caracteres correspondants :
bit/sec | message
9600 | *q
4800 | *p
2400 | *o
1200 | *n
Comme on peut le voir, le premier octet peut etre utilise pour se synchroniser.

  Protocole Microsoft
Le protocole Microsoft utilise 1 bit de Start, 7 bits de donnees, pas de parite, et 1 bit de Stop, ceci a 1200 bits/sec. Les donnees sont envoyees sur RX par paquets de 3 octets. Les mouvements dx et dy sont envoyes sous forme de complement a 2. lb (rb) vaut 1 quand le bouton gauche (droit) est presse :
octet | d6 | d5 | d4 | d3 | d2 | d1 | d0
1 | 1 | lb | rb | dy7 | dy6 | dx7 | dx7
2 | 0 | dx5 | dx4 | dx3 | dx2 | dx1 | dx0
3 | 0 | dy5 | dy4 | dy3 | dy2 | dy1 | dy0
Les souris Microsoft originales n'avaient que 2 boutons. Neanmoins, il existe plusieurs souris a 3 boutons qui utilisent le protocole Microsoft. Une pression sur le 3eme bouton (milieu) est indiquee par un paquet sans aucun mouvement et sans bouton presse.

  Protocole Mousesystems
Le protocole Mousesystems utilise 1 bit de Start, 8 bits de donnees, pas de parite et 2 bits de Stop, ceci a la vitesse de 1200 bits/sec. Les donnees sont envoyees sur RX par paquets de 5 octets. dx est emis comme la somme des deux valeurs en complement a 2. dy est emis comme inverse de la somme des deux valeurs en complement a 2. lb (mb, rb) sont mis a zero quand le bouton gauche (central, droit) est presse :
octet | d7 | d6 | d5 | d4 | d3 | d2 | d1 | d0
1 | 1 | ? | ? | ? | ? | lb | mb | rb
2 | 0 | dxa6 | dxa5 | dxa4 | dxa3 | dxa2 | dxa1 | dxa0
3 | 0 | dxb6 | dxb5 | dxb4 | dxb3 | dxb2 | dxb1 | dxb0
4 | 0 | dya6 | dya5 | dya4 | dya3 | dya2 | dya1 | dya0
5 | 0 | dyb6 | dyb5 | dyb4 | dyb3 | dyb2 | dyb1 | dyb0

  Protocole Sun
Le protocole Sun utilise 1 bit de Start, 8 bits de donnees, pas de parite et 2 bits de Stop, ceci a la vitesse de 1200 bits/sec. Les donnees sont envoyees sur RX par paquets de 3 octets. dx est emis en complement a 2. dy est emis en complement a 2 inverse. lb (mb, rb) sont mis a zero quand le bouton gauche (central, droit) est presse :
octet | d7 | d6 | d5 | d4 | d3 | d2 | d1 | d0
1 | 1 | ? | ? | ? | ? | lb | mb | rb
2 | 0 | dx6 | dx5 | dx4 | dx3 | dx2 | dx1 | dx0
3 | 0 | dy6 | dy5 | dy4 | dy3 | dy2 | dy1 | dy0

  Protocole MM
Le protocole MM utilise 1 bit de Start, 8 bits de donnees, parite impaire et 1 bit de Stop, ceci a la vitesse de 1200 bits/sec. Les donnees sont envoyees sur RX par paquets de 5 octets. dx et dy sont emis comme des valeurs signees, le bit de signe indiquant une valeur negative. lb (mb, rb) sont mis a zero quand le bouton gauche (central, droit) est presse :
octet | d7 | d6 | d5 | d4 | d3 | d2 | d1 | d0
1 | 1 | ? | ? | dxs | dys | lb | mb | rb
2 | 0 | dx6 | dx5 | dx4 | dx3 | dx2 | dx1 | dx0
3 | 0 | dy6 | dy5 | dy4 | dy3 | dy2 | dy1 | dy0

FICHIER
/dev/mouse    Un lien symbolique habituellement utilise
pour pointer sur le peripherique souris.

VOIR AUSSI
cua(4), bm(4)