次のページ 前のページ 目次へ

4. ハードウェアに合わせた X の設定

XF86Config は使っているモニタやビデオカード、マウスの種類を X サー バに知らせます。必ず XF86Config を作り、使っている特定のハー ドウェアをサーバに知らせなければなりません。

QuickStart ガイドを一通り読むこ とと、`XF86Setup' ユーティリティ(インストールには VGA16 サーバが必要で す)または `xf86config' ユーティリティを使って XF86Config ファイルを作 成することを強くお勧めします。

`XF86Setup' ユーティリティを実行する際には、マウスの設定を終えるまでは マウスに触ってはいけません。さもないと、VGA16 サーバとマウスデバ イスが混乱し、マウスやキーボードの入力の問題が起こるかもしれません。

FreeBSD のバージョン 2.2.1 以降で ``moused''(オンラインマニュアル の moused(8) を参照) を実行している場合、マウスのブランドやモデル に関係なく、マウスのプロトコルの種類には SysMouse を、マウス のデバイス名には /dev/sysmouse指定しなければなりません

``moused'' を実行していない場合には、マウスのインタフェース の種類と /dev のエントリ、使用するプロトコルを知っている必要 があります。

インタフェースの種類はマウスのコネクタを見れば分かります。シリアルマウ スの場合には D-Sub メスの 9 ピンまたは 25 ピンのコネクタが付いています。 バスマウスの場合には、D-Sub オスの 9 ピンコネクタか丸型 DIN の 9 ピン コネクタが付いています。PS/2 マウスには小さい丸型 DIN の 6 ピンコネク タが付いています。 USB マウスには平たい長方形のコネクタが付いています。 一部のマウスには、コネクタを他のタイプのインタフェー スに接続できるアダプタが付属しています。このようなアダプタを使う場合に は、マウスとアダプタを組み合わせた状態で一番端になるコネクタがインタ フェースの種類を決めることを覚えておいてください。

次に決めることは、与えられたインタフェースに対する /dev エン トリです。バスマウスと PS/2 マウスの場合、選ぶ必要はほとんどありません: バスマウスでは必ず /dev/mse0 を使いますし、PS/2 マウスでは必 ず /dev/psm0 を使います。 複数個の USB マウスをお使いのシステムまたは USB ハブに取り付けることが できます。これらは /dev/ums0, /dev/ums1, …として アクセスできます。 シリアルマウスの場合には、マウスを接続できるシリアルポートが複数個ある かもしれません。普通は最初の組み込みシリアルポートである /dev/cuaa0 をマウスに割り当てることが多いようです。

どのシリアルデバイスにマウスを接続したかよく分からない場合、デバイスを 確かめる最も簡単な方法は ``cat'' や ``kermit'' を使ってマウ スの出力を見ることです。まずマウスを接続してから、単に次のコマンドを実 行し、マウスを動かしたりクリックした時に出力が行われることを確認するだ けです。

 % cat < /dev/tty00

正しいマウスデバイスを見つけられなかった場合には、 ``dmesg|grep sio'' を用いて起動時に検出されたシリアルデバイスのリ ストを取得しましょう。

 % dmesg|grep sio
 sio0 at 0x3f8-0x3ff irq 4 on isa

それから、これらのデバイスに対応する /dev のエントリを重ねて 確認します。まだエントリが存在していなければ、/dev/MAKEDEV ス クリプトを用いて作成します。

 % cd /dev
 % sh MAKEDEV tty00

実際にマウスが接続されているポートを指すシンボリックリンク /dev/mouse を作成してもよいでしょう。こうしておくと、後で「マ ウス」ポートを見つけるのが簡単になります。

次のステップは、マウスが使うプロトコルの種類を適切に推定することです。 FreeBSD 2.2.6 以降であれば、マウスが比較的古いモデルでない限り、X サー バは自動的に適切な種類を選択することができます。これらのバージョンでは ``Auto'' プロトコルを指定してください。

他のバージョンの FreeBSD の場合や、バージョン 2.2.6 でも ``Auto'' プロトコルがうまく動作しない場合には、マウスのプロトコル を推定して試してみる必要があります。

ここでは経験則を示しておきます:

  1. バスマウスの場合には、マウスのブランドに関係なく常に ``BusMouse'' プロトコルを使います。
  2. PS/2 マウスの場合には、マウスのブランドに関係なく常に ``PS/2'' プロトコルを指定すべきです。
    注意: XF86Config のオンラインマニュアルには、かなりの数 の PS/2 マウスプロトコルが書かれています。しかし FreeBSD の場合には、 XF86Config に指定する意味がある PS/2 マウスプロトコルは ``PS/2'' だけです。バージョン 2.2.6 以降の FreeBSD は、 PS/2 マウスドライバ psm でこれらの種類のプロトコルを直接サポート しているので、使用する PS/2 マウスプロトコルを X サーバに伝える必要は ありません。``Auto'' は動作するはずですが、これではなく ``PS/2'' を使ってください。
  3. USB マウスに対しては ``Auto'' を指定しなければなりません。
    注意: XFree86 の他の文書では、``Usb'' はマウスプロトコル 用のキーワードの一つと書かれているかもしれません。このキーワードは必要 でなく、したがって FreeBSD ではサポートされていません。USB マウスに対 しては必ず ``Auto'' を使ってください。
  4. Logitech 製の古いモデルのマウスに対しては ``Logitech'' プロトコルを使います。最近の Logitech マウスは ``MouseMan'' プロトコルと ``Microsoft'' プロトコルのどちらも使います。
  5. 2 ボタンのシリアルマウスのほとんどは ``Microsoft'' プロ トコルをサポートしています。
  6. 3 ボタンのシリアルマウスは ``MouseSystems'' プロトコル で動作すると思います。動作しない場合には、``Microsoft'' プロ トコルで動作すると思いますが、この場合には 3 番目のボタン(中ボタン)は 機能しないでしょう。3 ボタンのシリアルマウスは ``MouseMan'' プロトコルで動作することもあり、この場合には 3 番目のボタンも期待通り に動作すると思います。
  7. 3 ボタンのシリアルマウスには小さなボタンが付いていて、 ``MS'' と ``PC''、あるいは ``2'' と ``3'' を選択できることがあります。 通常は ``MS'' と ``2'' は ``Microsoft'' プロトコルのことであ り、``PC'' と ``3'' は ``MouseSystems'' プロトコルのことです。
  8. シリアルマウスにローラーやホイールが付いている場合、このマウスは ``IntelliMouse'' プロトコル互換かもしれません。


次のページ 前のページ 目次へ