たとえ安価なマウスでも MouseSystems プロトコルを使って 3 つあるボ タン全部を動かすことができます。これには、少しトリックが必要です。そ のトリックとは、マウスに「自分は、MouseSystems のマウスなんだ。」 と、思い込ませることです。そのようにするには、次のことを行ないます。
これでマウスを MouseSystems モードに切り替えることができます。 ずいぶんと簡単なことですが、このことが説明書に書かれているのは非常に稀で す。ところが、コンピュータの電源を入れ直しただけでは、マウスの電源 を切ることができないシステムもありますので、そうしたシステムではこの 方法は使えません。モードを切り替える方法には上記以外にもいろいろあり、 それらの方法はあなたがお使いのマウスに当てはまる場合もありますが、そうで ないこともあります。以下で説明する設定方法のうち、少なくともふたつに ついては、コンピュータを立ち上げ直すよりもずっと簡単です。
echo "*n" > /dev/mouse
というコマンドを打てば、マウスをリセット
することができるかもしれません。これは、プラグを差し直すのと同じ効果が
あります。MouseSystems モードの場合のみ、マウスの左ボタンを押して
ください。Microsoft モードの場合、押してはいけません。上記の
コマンドは、X を起動させるスクリプトに書き込んでおくこともできます。
echo "*n"
が機能しない
場合に効果があります(逆に、Nichols のプログラムが駄目な場合は、
echo "*n"
を使ってください)。このプログラムのソースコードは、
http://kipper.york.ac.uk/src/fix-mouse.c にあります。
-----------
| o | o | o | SW1
-----------
1 2 3
スイッチ 1-2 を接続するか、2-3 を接続して、マウスの動作が変わるかどうか
試してください。これで動きが変わるようなら、ジャンパピンを適当な位置に
付けるか、もしくは半田付けしてしまって固定してください。
ChordMiddle
を指定すると、真ん中のボタンを機能させることができます。
第3ピン モード
------- ------
Open デフォルトは、Microsoft。電源投入時にボタンを押していれば MouseSystems。
GND 常時 MouseSystems。
Vdd 常時 Microsoft。
(通常、ピンは次のようになっています:)
____
第 1 ピン -| \/ |-
第 2 ピン -| |-
第 3 ピン -| |-
-| |-
-| |-
-| |-
-| |-
第 8 ピン -|____|-
(これらの情報は、Hans-Christoph Wirth と Juergen Exner 両氏が
de.comp.os.linux.hardware に投稿したものを拝借しました) ここで、
第 3 ピンと GND をハンダ付けすると、MouseSystems モードに固定する
ことができます。
-----
--- R ---------O------ + 電源
| ----- | | C = 100nF コンデンサ
| | E | R = 100kオーム 抵抗
| __ / | T = BC557 トランジスタ
| / \ O
| B | #V | T /
|-----|-# | / マウスの左ボタン
| | #\ | O
| \__/ |
--- \ C |
--- C ------O----------> (マウスの内部へ)
|
### Gnd
【訳注:上記回路ではコンデンサの放電経路がないので、
R にダイオードを抱かせる変更を推奨】
テストしたマウスは、MUS2S という無名のモデルでした。他のマウスでもこの方法が 上手くいくかどうかは、マウスの回路しだいです。スイッチが + 電源では なく GND に繋がっている場合でも、BC547 のような NPN 型トランジスタを使って、 抵抗(R)とコンデンサ(C)を入れ替えれば動くはずです。
この章ではいろいろな方法を説明しましたが、最終的にどうするかは、 あなたしだいです。初期設定である Microsoft プロトコルの 2 モダンモード のままでもいいですし、モードの切り替え方法を見つけだして、X ウィンドウ上で 3 ボタンモードの利点を活かすのもいいと思われます。