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

5. XF86Config における指定

このドライバでは、クロックを除いて、XF86Config においてデフォルトの操 作に対する指定を行う必要が全くありません。ですが、以下の指定を行なうこ とによってドライバの動作を変えることができます。

5.1 ChipSet "name"

このドライバにおける name のデフォルト値は "ati"です。

"ati" ではなく "ativga" を指定すると、ドライバは検出した ATI アクセラ レータの CRTC を全く使わず、検出した ATI VGA CRTC を使用してスクリーン 表示を行います。

name として "ibmvga" を指定すると、ドライバの汎用 VGA サポートが有効に なりますが、これが有効になるのは ATI 製でないアダプタの場合だけです。 ATI 製のアダプタを検出した場合、ドライバは "ibmvga" でなく "ativga" が 指定されたものとして動作します。

ATI アダプタをサポートしている今までの XFree86 のサーバとの互換性のた め、このドライバは "vgawonder", "mach8", "mach32", "mach64" をチップセッ ト名として認識します。現在のバージョンのドライバでは、これらの名前は全 て "ati" と同じ意味になります。将来のリリースでは、それぞれの名前は別 の意味を持つようになるでしょう。これについてはその時に説明します。

5.2 Clocks 値

XF86Config でクロック行を指定するときに生じる状況は4パターンあります。 これを以下に示します。

ATI 製でないアダプタのためにドライバの汎用 VGA サポートを設定する場合 は、後述の「ATI 製でないアダプタの Clocks 値」セクションまで進んでくだ さい。Mach64 アダプタのためにドライバ設定をしようとしていない 場合には、後述の「ATI アダプタの固定クロックジェネレータに対する Clocks 値」セクションまで進んでください。

ごく初期の Mach64 アダプタは固定(つまりプログラマブルでない)クロックジェ ネレータを使っています。このようなアダプタがあることはほとんど(試作品 くらいしか)知られていませんが、このようなアダプタを持っている場合には、 後述の「ATI アダプタの固定クロックジェネレータに対する Clocks 値」セク ションまで進んでください。

残りの2つのケースはプログラマブルクロックジェネレータを扱うためのもの です。プログラマブルクロックジェネレータは、ほとんど全ての Mach64 アダ プタで使われています。

読者の皆さんがお持ちのアダプタがどの場合に当てはまるのかが分からなけれ ば、コマンド "X -probeonly" を実行してクロックを自動検出することができ ます。

サポートされているプログラマブルクロックジェネレータの Clocks 値

システム起動時に、ビデオ BIOS の初期化で周波数の組の初期値がプログラム されます。周波数の組のうち2つは予約されていて、初期値の組以外の周波数 を使うモードを設定することができます。この予約されているスロットの1つ は BIOS のモード設定ルーチンが使い、もう1つは特定のドライバ(例: MS-Windows, AutoCAd, X等)が使います。このように予約されているクロック 数は、アダプタが使っている特定のクロックジェネレータには依存します。

現在のドライバは、Mach64 アダプタで使われていることが知られている全て のプログラマブルクロックジェネレータをサポートしています。この場合、ド ライバは XF86Config におけるクロック指定を完全に無視し、X のセッション 中に使われるモードが必要とするようにクロックジェネレータをプログラムし ます。

サポートされていないプログラマブルクロックジェネレータの Clocks 値

このケースはまず起こらないはずですが、万全を期すために説明しておきます。

この場合には、XF86Config でクロック値が既に指定されていない限り、ドラ イバはアダプタに対してクロック周波数の自動検出を行います。どちらの場合 にも、ドライバはクロック値を正規化して以下の指定のうちのどれかにしよう とします:

BIOS 設定 1:

  Clocks   0.000 110.000 126.000 135.000  50.350  56.640  63.000  72.000
           0.000  80.000  75.000  65.000  40.000  44.900  49.500  50.000
           0.000  55.000  63.000  67.500  25.180  28.320  31.500  36.000
           0.000  40.000  37.500  32.500  20.000  22.450  24.750  25.000
BIOS 設定 2:

  Clocks   0.000 110.000 126.000 135.000  25.180  28.320  31.500  36.000
           0.000  80.000  75.000  65.000  40.000  44.900  49.500  50.000
           0.000  55.000  63.000  67.500  12.590  14.160  15.750  18.000
           0.000  40.000  37.500  32.500  20.000  22.450  24.750  25.000
BIOS 設定 3:

  Clocks   0.000   0.000   0.000   0.000  25.180  28.320   0.000   0.000
           0.000   0.000   0.000   0.000   0.000   0.000   0.000   0.000
           0.000   0.000   0.000   0.000  12.590  14.160   0.000   0.000
           0.000   0.000   0.000   0.000   0.000   0.000   0.000   0.000
ドライバがクロックを上記の3番目の設定に合わせた場合、(仮に動いたとして も)機能は「極めて」制限されたものになります。

ATI アダプタの固定クロックジェネレータに対する Clocks 値

このセクションの内容は、ごく初期の Mach64 アダプタのほとんどを除く全て の ATI 製アダプタに適用されます。

ドットクロックを生成するためにアダプタが使っているクロックジェネレータ に基づいて、以下のクロック指定(または指定のうち最初のいくつか)を使うこ とができます:

Crystals (VGA Wonder V3 と V4 アダプタのみ):

  Clocks  50.000  56.644   0.000  44.900  44.900  50.000   0.000  36.000
          25.000  28.322   0.000  22.450  22.450  25.000   0.000  18.000
          16.667  18.881   0.000  14.967  14.967  16.667   0.000  12.000
          12.500  14.161   0.000  11.225  11.225  12.500   0.000   9.000
クロックジェネレータ ATI 18810:

  Clocks  30.240  32.000  37.500  39.000  42.954  48.771   0.000  36.000
          40.000  56.644  75.000  65.000  50.350  56.640   0.000  44.900
          15.120  16.000  18.750  19.500  21.477  24.386   0.000  18.000
          20.000  28.322  37.500  32.500  25.175  28.320   0.000  22.450
          10.080  10.667  12.500  13.000  14.318  16.257   0.000  12.000
          13.333  18.881  25.000  21.667  16.783  18.880   0.000  14.967
           7.560   8.000   9.375   9.750  10.739  12.193   0.000   9.000
          10.000  14.161  18.750  16.250  12.586  14.160   0.000  11.225
クロックジェネレータ ATI 18811-0 と ATI 18812-0:

  Clocks  30.240  32.000 110.000  80.000  42.954  48.771  92.400  36.000
          39.910  44.900  75.000  65.000  50.350  56.640   0.000  44.900
          15.120  16.000  55.000  40.000  21.477  24.386  46.200  18.000
          19.955  22.450  37.500  32.500  25.175  28.320   0.000  22.450
          10.080  10.667  36.667  26.667  14.318  16.257  30.800  12.000
          13.303  14.967  25.000  21.667  16.783  18.880   0.000  14.967
           7.560   8.000  27.500  20.000  10.739  12.193  23.100   9.000
           9.978  11.225  18.750  16.250  12.588  14.160   0.000  11.225
クロックジェネレータ ATI 18811-1 と ATI 18811-2 :

  Clocks 135.000  32.000 110.000  80.000 100.000 126.000  92.400  36.000
          39.910  44.900  75.000  65.000  50.350  56.640   0.000  44.900
          67.500  16.000  55.000  40.000  50.000  63.000  46.200  18.000
          19.955  22.450  37.500  32.500  25.175  28.320   0.000  22.450
          45.000  10.667  36.667  26.667  33.333  42.000  30.800  12.000
          13.303  14.967  25.000  21.667  16.783  18.880   0.000  14.967
          33.750   8.000  27.500  20.000  25.000  31.500  23.100   9.000
           9.978  11.225  18.750  16.250  12.588  14.160   0.000  11.225
VGAWonder VLB, VGA 1024 VLB, Mach32, Mach64 を使っている場合には、最初 から 32 個までの周波数だけを指定しなければなりません。

ATI のアダプタに使われている他のクロックジェネレータ(どれも前述のいず れかのジェネレータのクローンと言えます)では、上記でゼロになっている部 分に対してゼロでない周波数が生成されることがあります。また、ゼロでない 部分に対して、ゼロを生成されることもあります。

クロック値の順序はとても「重要」です。しかし、クロック値の並べ直しを適 切と判断した場合、ドライバはクロック値を並べ直します。Mach32 と Mach64 を使っている場合には、この順序はアクセラレーション付きのサーバで使って いる順序とは異なることを注意しておくべきです。

ATI 製でないアダプタの Clocks 値

クロック値が XF86Config ファイルで指定されていない場合、ドライバは 4 つのクロック値を自動的に検出します。そのうち 2 番目の値は 28.322MHz と 仮定されます。XF86Config ファイルで 4 つまでのクロック周波数を指定して、 アダプタが実際に使う値を指定することができます。それ以外は全て無視され ます。

5.3 Option "nolinear"

Mach64 アクセラレータの CRTC か組み込みの Mach64 グラフィックスチップ を使っている場合、色の深さが256色以上のモードでは、ドライバはリニアビ デオメモリアパーチャをデフォルトで有効にします。このオプションは、この リニアアパーチャを無効にします。現在はこのオプションを指定すると、256 色以上のサポートも無効になります。

5.4 MemBase address

この指定は PCI でない Mach64 アダプタに対してのみ有効で、アダプタがビ デオメモリをマップする CPU アドレスを上書きするために使います。PCI で ないアダプタの場合、普通はアダプタ付属の DOS 用インストールユーティリ ティを使ってこのアドレスを設定します。MemBase オプションを使うと、ATI のユーティリティが使われていない、あるいは使えない場合にリニアアパーチャ を有効にすることができます。

PCI アダプタの場合は、このアドレスはシステム起動時にPCI のプラグ& プレイ仕様にしたがって決められます。この仕様は、システムのほとんどのデ バイスのリソース要求を調停します。つまり、ドライバは簡単にはリニアアパー チャアドレスを変更することはできません。

5.5 Modelines

モードは XFree86 の doc ディレクトリにある情報から決めることができます。 XF86Config ファイル内の適切な Screen セクションの Display サブセクショ ンで「Modes」行を指定しない場合、ドライバはデフォルトのモードを生成し、 これを使おうとします。デフォルトモードのタイミングは、サーバ起動時に有 効になっているモード(通常はテキストモード)から決められます。


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