MOUSE(4)

名前
mouse - シリアルマウスインターフェース

設定
シリアルマウスは RS232/V24 ダイアルアウトラインに接続される。 RS232/V24 ダイアルアウトライン については cua(4) を参照のこと。

説明

  概説
シリアルマウスで使われる普通の 9 ピンプラグのピン配列は以下である:
ピン | 名前 | 用途
2 | RX | Data
3 | TX | -12 V, Imax = 10 mA
4 | DTR | +12 V, Imax = 10 mA
7 | RTS | +12 V, Imax = 10 mA
5 | GND | Ground
これは仕様書であり、実際はほとんどのマウスでは 9 V で十分である。

マウスドライバは RTS をロー(low)に落すことによって、マウスを認識でき る。おおよそ 14 ms 後、マウスはデータライン上に 0x4D を送るだろう。さら に 63ms あと、マイクロソフト互換マウスは 0x33 を送る。その他のマウスは 別の値を送る。

マウスの相対的な移動は、dx(正が右)とdy(正が下)として伝えられる。 各種のマウスは違った速度で動く。スピードを選択するには、 下の表の２文字を送ってから 0.1 秒待つことで、9600, 4800 2400, 1200 bit/s を順に選べる。 以下の表では選択可能なスピードとそれを選択するための文字列を示している。
bit/s | 文字列
9600 | *q
4800 | *p
2400 | *o
1200 | *n
データパケットの第 1 バイトは同期をとるのに利用できる。

  マイクロソフト プロトコル(Microsoft Protocol)
マイクロソフトプロトコルは、1200 bits/sec のスピードで、1 ス タートビット(1 start bit)、7 データビット(7 data bits)、パリティな し、1 ストップビット(1 stop bit)である。 データは RxD に 3 バイトのパケットとして送られる。dx と dy の動きは 2 の補数表示で送られ、左(右)のボタンが押された時には lb (rb)がセットされる。
byte | 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
本来のマイクロソフトマウスは 2 つのボタンしか持たない。しかし、3 つボタン のマウスでマイクロソフトプロトコルの物も存在する。3 つめのボタンを押し た時は、動きゼロでボタンが押されていないというパケットが送られる。

  マウスシステムズ プロトコル(Mousesystems protocol)
マウスシステムズプロトコルは、1200 bits/secで、1 スタートビット、 8 データビット、パリティなし、2 ストップビットである。 データは、RxD に 5 バイトのパケットとして送られる。dx は 2 つの 2 の補数の和として送られ、dy は 2 つの 2 の補数の和の否定 として送られる。左(中、右)のボタンが押された時にはlb (mb, rb) がクリアされる。
byte | 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

  サン プロトコル(Sun protocol)
サン プロトコルは、1200 bits/sec の 1 スタートビット、8 データビッ ト、パリティーなし、2 ストップビットである。データは RxD に 3 バイトの パケットして送られる。 dx は一つの 2 の補数値として送られ、dy は 2 の補数値の否定 として送られる。 左(中、右)のボタンが押された時、lb (mb, rb)がクリアされる。
byte | 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

  MM プロトコル(MM protocol)
MM プロトコルは 1200 bits/sec で 1 スタートビット、8 データビッ ト、奇数パリティ、 1 ストップビットを使う。データは RxD に 3 バイトのパ ケットとして送られる。dx と dy は一つの符合つきの値として 送られ、サインビットは負の値を表す。左(中、右)のボタンが押された時には lb (mb, rb)がセットされる。
byte | 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

ファイル

/dev/mouse
    一般的にマウスデバイスをさすのに使われるシンボリックリンク

関連項目
cua(4), bm(4)

翻訳者
石川 睦 <ishikawa@linux.or.jp> 高橋 睦司 <muz@ilp.iijnet.or.jp>