先ず最初に、XF86Config
で選択したモードをモニターがサポートし
ていること、つまり水平同期の上限が正しいことを確認してください。25.175
MHz のクロックで標準的な 640x480x256 (単一の水平同期を 31.5 に指定した
場合)が構成上ドライバが動作することの確認からはじめるのがお勧めです。
timing 節にこの解像度用の最高のドットクロックを置いて、mode 行の最初に
書いたモードが常に初期値のモードとして用いられます。
いくつかの VESA 標準モードの調整がいくつかのモニターで問題を起こします ので注意してください(水平同期信号を増やしてみましょう、つまり真ん中の 2つの数値の差を広げる、若くは全ての水平同期の調整数値を 16 又は 32 の 倍数になるように増やす)。
モニターが扱えないモードを使っているのです。標準でないモードを使っ ている場合、少し数値を直す必要があるかもしれません。モニターが取り 扱える標準モードと標準周波数の場合、似たようなモードと周波数で異な る数値の組み合わせを見つけてください。
特に上にスクロールするような描画操作を行う時にこの問題が見られま
す。542x/3x/46/6x を使う場合は
"fifo_conservative"
オプションを試してくださ
い。これが失敗したときは、"fast_dram"
オプ
ションを試すか、より低いドットクロックを使ってみてください。
これでも満足いかない場合は、"noaccel"
オプ
ションか、"no_bitblt"
オプションが
多分助けになるでしょう。
画面の水平揺れ又は全体のジッタが(描画操作に依存しないで)間断な続 く現象です。多分、高すぎるドットクロックを使っているせいで、近い周 波数の MCLK と干渉が起きている可能性があります。もっと低いドットク ロックを試して下さい。また、モードの数値調整を行って、2番目の水平 方向の数字をいくらか増やしてみてください。次は 65MHz のドットクロッ クで 1024x768 (約 60 Hz)のモードが助けになるはずです。:
"1024x768" 65 1024 1116 1228 1328 768 783 789 818Clockchip
"cirrus"
を用いてプログラマブルクロックを使用し
ている場合は、これを無効にして標準値のクロックの組み合わせを使って
ください。
"noaccel"
オプションを試してみましょう。もし動かなかった場
合、いくらか性能向上の為に "no_bitblt"
を試してみてくださ
い。 BIOS の設定が大丈夫かどうか確認して、特に 0xa0000-0xaffff を
キャッシングしないようにしてください。裏 DRAM の更新(hidden DRAM
refresh) を無効にしても良いでしょう。
アクセラレータ機能の一つ、又は BitBLT 機能を使ったときのプログラム
のバグに関連しているかもしれません。"noaccel"
オプション又
は "no_bitblt"
オプションを試してみてください。また、BIOS
の設定を確認してください。
同じ設定がダブっています。
DRAM 構成に問題があることを示しています。カードに2メガバイトのメモ
リを搭載している場合は、"no_2mb_banksel"
オプションか、1
メガバイトのメモリだけを仮想画面に使う場合、
videoram "1024"
を試してください。
標準でないビデオの実装にて報告されています。
"no_bitblt"
オプションを使って下さい。
ドットクロックが高すぎるため、描画用の帯域幅がとても少なくなって (例えば、512K バイトのカードで 40MHz を使う場合)いるか、( 5422 のような)アクセラレータ機能を使っている場合に起こります。
多分、高すぎる MCLK の設定が関係しています(バンクモードが大丈夫で もリニアアドレッシングが引き起こすでしょう)。
使おうとしているチップセットに似たものを強制指定することを試しま しょう。
システムからビデオメモリへの BitBLT 操作に関する問題に関係していま
す。いらいらする場合は "no_imageblt"
オプションを試してみ
ましょう。
いくつかの構成で報告されています。XFree86 3.1 の SVGA サーバの探
査が、Chipset 行で要求した 543x のレジスタの内容を壊したかもしれま
せん。普通はユーティリティ ( Linux の setfont
,
runx
, restorefont
) でテキストモードは回復可能で
しょう。
カード且つ/又はマザーボードの設計に不良のある場合、ビデオカード上 の高いドットクロックとシステム内の他の部分(例えば ディスク I/O)と のインターフェースがうまくいかない時に発生する可能性があります。 (ごくまれに、 5428 チップが PCI をサポートしない時に)いくつかの PCIの 5428 を基にしたカードで観測されます。
"no_bitblt"
が
助けにならない場合に) "noaccel"
オプションを試してみましょう。
この文書に記述の無いドライバに関する問題、又はアクセラレータ機能につい てバグを発見した場合は XFree86 チーム(現在、ドライバの保守は H.Hanemaayer@inter.nl.net で行っています)に連絡を下さるか、 "comp.windows.x.i386unix" というニュースグループに投稿して下さ い。
実際、特にテストしていない構成での (成功や失敗の) 報告を歓迎していま す。ベータレポート (BetaReport) 用紙を使って (report@XFree86.org に メールで) 報告してください。www.xfree86.org からの新刊予定の ベータ版にご期待ください。