Mach64 用 X サーバ向けリリースノート Kevin E. Martin (martin@cs.unc.edu) 1999 June 28 The X Japanese Documentation Project 1999 August 2 ____________________________________________________________ 目次 1. サポートしているカード、RAMDAC、ピクセル当りのビット数 2. Mach64 用 X サーバの最適化 3. XF86Config のオプション 4. このリリースにおける改良点 5. このリリースで動作することが分かっているカード 6. 既知の問題とバグ報告について 7. 日本語訳について ______________________________________________________________________ 1. サポートしているカード、RAMDAC、ピクセル当りのビット数 Mach64 X サーバは、Mach64 ベースのカード全てにおいて 80MHz までのドッ トクロックで 8bpp をサポートします。ほとんどのカードではもっと高いドッ トクロックと他の色の深さを使用可能です(下の表を参照してください)。この サポートを決めるのは、カードに載っている RAMDAC です。 RAMDAC 最大ドットクロック BPP 最大解像度 必要なビデオ RAM -------- ------------- --- -------------- ------------------ ATI68860 135MHz 8 1280x1024 2Mb ATI68860 135MHz 16 1280x1024 4Mb ATI68860 80MHz 32 1024x768 4Mb ATI68875 80MHz 32 1024x768 4Mb CH8398 135MHz 8 1280x1024 2Mb CH8398 80MHz 16 1024x768 2Mb CH8398 40MHz 32 800x600 2Mb STG1702 135MHz 8 1280x1024 2Mb STG1702 80MHz 16 1024x768 2Mb STG1702 50MHz 32 800x600 2Mb STG1703 135MHz 8 1280x1024 2Mb STG1703 80MHz 16 1024x768 2Mb STG1703 50MHz 32 800x600 2Mb AT&T20C408 135MHz 8 1280x1024 2Mb AT&T20C408 80MHz 16 1024x768 2Mb AT&T20C408 40MHz 32 800x600 2Mb 3D Rage II 170MHz 8 1600x1200 4Mb 3D Rage II 170MHz 16 1600x1200 4Mb 3D Rage II 170MHz 32 1024x768 4Mb 3D Rage II+DVD 200MHz 8 1600x1200 4Mb 3D Rage II+DVD 200MHz 16 1600x1200 4Mb 3D Rage II+DVD 200MHz 32 1024x768 4Mb Rage Pro 230MHz 8 1600x1200 8Mb Rage Pro 230MHz 16 1600x1200 8Mb Rage Pro 230MHz 32 1600x1200 8Mb Internal 135MHz 8 1280x1024 2Mb Internal 80MHz 16 1024x768 2Mb Internal 40MHz 32 800x600 2Mb IBM RGB514 220MHz 8 1600x1200 2Mb IBM RGB514 220MHz 16 1600x1200 4Mb IBM RGB514 135MHz 32 1024x768 4Mb 他のもの全て[*] 80MHz 8 1280x1024 2Mb [*] - ドットクロックは 80MHz に制限され、bpp は 8 に制限されています。 上記の表は最大解像度とその最大解像度を使うのに必要なビデオメモリを示し ています。より小さい解像度にはより少ないビデオメモリで大丈夫です。 "-probeonly" コマンド行オプションを付けて Mach64 用 X サーバを実行する と、RAMDAC が表示されます。表示された RAMDAC は、全ての Mach64 カード について正しいはずです。RAMDAC は XF86Config で指定することもできます が、probeonly の結果が正しくない限り指定しないことをお勧めしま す。XF86Config に RAMDAC を指定する前には、Mach64 カードを目で見てどん なRAMDAC が搭載されているか確認してください。probeonly の出力結果の RAMDAC とボート上のチップが全く違う場合は、XF86Config ファイルでRAMCAD を指定 していないかどうか確認してください。指定していたならば、 RAMDAC の行をコメントアウトしてからもう一度 "-probeonly" オプションを付けて Mach64 X サーバを実行してください。これでもまだ間違った RAMDAC を報告 する場合は、XFree86@XFree86.Org にバグレポートを送ってください。 通常、ATI68860 RAMDAC は ATI Graphics Pro Turbo と ATI WinTurbo カード に搭載されています。IBM RGB514 RAMDAC は ATI Graphics Pro Turbo 1600 カードに搭載されています。一般に ATI Graphics Xpression, ATI Video Xpression, ATI 3d Xpression カードには他の RAMDAC が搭載されています。 Mach64 CT, ET, VT, VT3, VT4, LT, GT (3D Rage), 3D Rage II, 3D Rage IIC, 3D Rage II+DVD, Rage Pro, Rage LT Pro チップには "内蔵" RAMDAC が あります(つまり Mach64 チップに組み込まれています)。 宣伝文句にあるように、Mach64 グラフィックスカードは特別な 24bpp モード (packed ピクセルモード)を使うことができるのですが、現在は Mach64 用 X サーバはこの機能をサポートしていません。次のメジャーリリースでは追加さ れるでしょう。 Mach64 用 X サーバをうまく機能させるためにはビデオメモリアパーチャが必 要です。つまり、メインメモリを 12MB 以上積んだマシンでは ISA の Mach64 カードは動作しません。PCI ベースや VLB ベースの Mach64 カードであれ ば、いくらメモリを積んでいても Mach64 用 X サーバは動作します。 アクセラレーション付きのダブルスキャンモードは VT, VT3, VT4, LT, GT, Rage II, Rage IIC, Rage II+DVD, Rage Pro, Rage LT Pro ベースの Mach64 カードでサポートされています。他のチップセットを載せた Mach64 カード は、ハードウェアの制限のため、アクセラレーション付きのダブルスキャンモ ードを使用できません。アクセラレーション無しのダブルスキャンモードな ら、 SVGA X サーバの ATI ドライバを使えば、どんな Mach64 カードでも動 作します。 2. Mach64 用 X サーバの最適化 Mach64 用 X サーバの速度を最大限に出すためには、以下の最大解像度に従う ことをお勧めします。これは、フォントとピックスマップのキャッシュやハー ドウェアカーソルの分の余裕を見越した数値です。 最大解像度 BPP ビデオ RAM -------------- --- --------- 1600x1200 8 8Mb 1600x1200 16 8Mb 1280x1024 32 8Mb 1280x1024 8 4Mb 1280x1024 16 4Mb 1024x767 32 4Mb 1280x1024 8 2Mb 1024x767 16 2Mb 800x600[*] 32 2Mb 1024x767 8 1Mb 800x600[*] 16 1Mb [*] - 2M バイトのビデオカードにおいてフォントとピックスマップのキャッ シュを使う唯一の方法は、 640x480 モードにおいて 1024x480 の仮想解像度 を使うことです。キャッシュから得られる速度を犠牲にしても、スクリーンを できるだけ広くするために 800x600 を使うことをお勧めします。 16bpp モー ドで動作する 1MB のビデオカードについても同じことが言えます。 1M バイ トのビデオメモリでは 32bpp モードでの動作はできないことに注意してくだ さい。 上記の設定を勧める技術的な理由を述べておきます: Mach64 X サーバでは、 画面の幅が 1024 以上の時にのみフォントとピクスマップキャッシュが有効に なります。この制限は将来のバージョンの X サーバでは無くなるでしょう。 ビデオカードの性能を最大限に引き出すには、キャッシュ用の非表示領域を充 分に(最低 1024x256)確保することが必要です。キャッシュに加えて、Mach64 はメモリマップトレジスタを使います。このレジスタは、メモリアパーチャの 最後の 1024 バイトに割り当てられます。これにより、さらに 1 行ぶんのビ デオメモリが取られます。その結果、少なくとも 1024x257 のビデオメモリ領 域が必要になります。 3. XF86Config のオプション Mach64 X サーバ用のオプションがいくつか "Device" セクションでサポート されています。デフォルトでは、Mach64 X サーバは BIOS からの情報で RAMDAC の 型を認識します。デフォルトの RAMDAC の型に対して上書き指定を 行う場合は(BIOS が間違った RAMDAC の報告をしない限りはお勧めしません が)、XF86Config ファイルの "Ramdac" の項目に RAMDAC の型を指定すること ができます。RAMDAC と同様にクロックについても、BIOS から読み出したク ロックチップに基づいてプログラムが行われます。デフォルトのクロックチッ プの型を上書き指定したい場合は(BIOS が間違ったクロックチップの報告をし ない限りお勧めしませんが)、XF86Config ファイルの "ClockChip" の項目に クロックチップの型を指定することができます。しかし、予めプログラムされ ているクロックを使いたい場合は、 "no_program_clocks" オプションを指定 してクロックをプログラムすることを止めることもできます。この場 合、Mach64 X サーバは BIOS から Clocks の値を読み込みま す。"no_bios_clocks" オプションが指定されない限り、通常は XF86Config ファイルの "Clocks" 行は無視されます。新しい Mach64 カード(CT, ET, VT, GT, 3D Rage II, 3D Rage II+DVD, Rage Pro)においては、"Ramdac", "ClockChip", "Clocks" 行は無意味であり、XF86Config ファイルに記述すべ きで無いことに注意してください。 Option "sw_cursor" ハードウェアカーソルではなく、ソフトウェアカーソルを使えるように します。 Option "hw_cursor" このオプションはハードウェアカーソルを有効にします。ハードウェア カーソルがデフォルトで使用されるので、"sw_cursor" オプションが指 定されている場合以外にはこのオプションは必要がないはずです。 Option "composite" このオプションはコンポジット同期が必要なモニタに対し、コンポジッ ト同期出力の設定を行います。 Option "dac_8_bit" このオプションは RGB 値ごとに 8 ビットを使うようにしま す。Chrontel 8398 RAMDAC ではこのオプションが動作しないことに注 意してください。 Chrontel 8398 RAMDAC を使っているカードを除く と、全ての Mach64 カードに対して RGB 値ごとに 8 ビット使うのがデ フォルトなので、このオプションは必要ではありません。 Option "dac_6_bit" このオプションは RGB 値ごとに 6 ビットを使うようにします。 Option "override_bios" このオプションは、ビデオボードの BIOS が不正と考えるビデオモード を指定できるようにします。一部の BIOS では最大解像度やドットク ロックの制限が間違っていることがあるのです。ただし、このオプショ ンを使うときには特別に注意してください。カードやモニタを痛めるよ うなビデオモードを指定することができるからです。 Option "no_block_write" このオプションはブロック書き込みモードを無効にします。ブロック書 き込みモードは特定の VRAM カードでしか動作しません。このオプショ ンは DRAM ベースのカードでは無効です。xmag で取り込んだ画面にノ イズが表示された場合には、ブロック書き込みモードを無効にすべきな のに有効にしているといった問題が考えられます。この "ノイズ" は通 常、ウィンドウやメニューのビットがスクリーン上で繰り返されるよう に現われます。 Option "block_write" このオプションはブロック書き込みモードを有効にします。ブロック書 き込みモードは特定の VRAM のカードでのみ動作し、このオプションは DRAM ベースのカードでは無効です。自動検出によって決められるデ フォルト値を上書きしたい場合には、このオプションを使うことができ ます。この指定を行うと、画面に「ノイズ」が現われることがありま す。 Option "power_saver" このオプションを指定すると、スクリーンセーバを有効にする時画面を 暗くする代わりに、サーバは特定の「環境」モニタの省電力機能を使う ことができます。このオプションは未だ実験中です。 Option "no_program_clocks" このオプションを使うと、クロックプログラミングを無効にできます。 このオプションが指定されないと、通常 Mach64 サーバはクロックチッ プの型に基づいてクロックをプログラムします。このオプションを指定 すると、クロックをBIOS から読み出すか、("no_bios_clocks" の設定 時に) Clocks 行の値を設定します。 Option "no_bios_clocks" このオプションを指定すると、ビデオカードの BIOS から読み出したク ロックを上書きし、XF86Config ファイルの Clocks 行で指定したク ロック値を使います。"no_program_clocks" オプション(前述)を指定し ない限り、Mach64 サーバは通常、 BIOS のクロック値と Clocks 行で 指定されたクロック値を無視します。 Option "no_font_cache" このオプションはフォントキャッシュを無効にします。デフォルトで は、水平解像度が 1024 ピクセル以上、かつ表示に使わないビデオメモ リが十分にあってキャッシュを保持できる場合に有効になります。 Option "no_pixmap_cache" このオプションはピクスマップキャッシュを無効にします。デフォルト では水平解像度が 1024 ピクセルか以上、かつ表示に使わないビデオメ モリが十分にあってキャッシュを保持できる場合に有効になります。 Option "fifo_conservative" このオプションは、表示 FIFO 値を安全側の値にします。表示に雪のよ うなノイズや縦縞が現われる場合には、このオプションを追加し、問題 が解決するかどうかを確認してください。 MemBase baseaddress この設定はビデオメモリのアパーチャのアドレス指定です。デフォルト では、アパーチャのアドレスは自動的に行われるので、このオプション を使う必要は特にありません。Mach64 X サーバが Segmentation Fault で止まる場合は、アパーチャのアドレスが正しく決められていないかも しれません。この問題を解決するために、アパーチャのアドレスを他の 場所に変えてみましょう。 ClockChip "type" この項目ではクロックチップの型を指定します。 type として有効な値 は以下のものです: o ati18818 o att20c408 o ch8398 o ibm_rgb514 o ics2595 o stg1703 Ramdac "type" この項目では RAMDAC の型を指定します。 type として有効な値は以下 のものです: o ati68860 o ati68860b o ati68860c o ati68875 o att20c408 o ch8398 o ibm_rgb514 o internal o stg1702 o stg1703 o tlc34075 DacSpeed "MHz" この項目を使うと、最大ドットクロックのデフォルト値を上書きするこ とができます。このオプションは、この上なく慎重に使ってくださ い。MHz 値に大きすぎる値を指定すると、カードを壊してしまうことが あります。 4. このリリースにおける改良点 このリリースでは、以下の改良が行われました: o 現在ある Mach64 チップ全てを適切に識別する機能 o VT4 と Rage IIC ベースのカードへの対応 o ビデオ FIFO のタイミング計算の改良 o フォント処理部分におけるタイミング関係のバグの修正 o X サーバ終了時の VGA フォント復元に関するバグの修正 5. このリリースで動作することが分かっているカード このリリースでテストを行ったカードの一覧を以下に示します。 All-In- Wonder, All-In-Wonder Pro ベースのカードや Mach64, 3D Rage II, Rage Pro がオンボードで載っているマザーボードを含め、他にも動作するカードは たくさんあるはずです。動作しないことがわかった新しいカードがあれば、後 述の「既知の問題とバグ報告について」のセクションを御覧ください。 ATI Xpert@Play 98 4MB 3D Rage Pro (AGP) ATI Xpert 98 4MB 3D Rage Pro (PCI) ATI Xpert XL 4MB 3D Rage Pro (AGP) ATI Rage IIC 4MB 3D Rage IIC (AGP) ATI Xpert@Play 8MB 3D Rage Pro (AGP/PCI) ATI Xpert@Work 2MB 3D Rage Pro (PCI) ATI Pro Turbo+PC2TV 4MB 3D Rage II+DVD (rev 154) ATI 3D Xpression+ 4MB 3D Rage II (GT-B, SGRAM, rev 65) ATI 3D Xpression+ 2MB 3D Rage II (GT-B, SDRAM, rev 65) ATI 3D Xpression 2MB 3D Rage (GT-A, rev 72) ATI Video Xpression+ 2MB Mach64 VT-A3 (rev 8) ATI Video Xpression 2MB Mach64 VT-A4 (rev 72) ATI Graphics Xpression 2MB Mach64 CT (rev 9) ATI Graphics Xpression 2MB Mach64 CT-C (rev 65) ATI Graphics Xpression 2MB Mach64 CT-D (rev 10) ATI Graphics Xpression 2MB Mach64 GX (rev 1) with Chrontel8398 RAMDAC ATI Graphics Pro Turbo 2MB Mach64 GX (rev 0) with 68860-B RAMDAC ATI Graphics Pro Turbo 2MB Mach64 CX (rev 1) with AT&T20C408 RAMDAC ATI WinTurbo 2MB Mach64 GX (rev 1) with 68860-C RAMDAC 6. 既知の問題とバグ報告について 現在のバージョンの Mach64 用 X サーバには既知の問題がいくつかありま す。これを以下に挙げます: o ガンマ補正は現在サポートされていません。将来のリリースではサポート されるでしょう。 o 一部の Mach64 CT カードでは、16bpp と 32bpp モードで画面ブランクが 動作しません。 o ダブルキャンモードでは、ハードウェアカーソルの上半分しか表示されま せん。他の全てのモードではハードウェアカーソルはうまく動作します。 o 特定のカード(VT-A3 と CT-D) では、リフレッシュレートを高くすると 32bpp モードでノイズが問題になります。通常はこの問題が起こるのはリ フレッシュレートが 85Hz 以上の時だけなので、リフレッシュレートを低 くすれば(例: 72Hz や75Hz)問題を解決することができます。 o メインメモリを 12MB 以上積んでいると、ISA カードではサーバが動作し ません。これはビデオメモリアパーチャが必要なためです。これを解決す るのは大変です。 問題に出会ったら、利用可能な最新バージョン(ベータ版も含む)を使っている ことを最初に確認してください。ATI は新しいカードを年中いつも発表してい ます。このような新しいカードそれぞれに対して、カードに載っている新しい Mach64 チップや RAMDAC, クロップチップをサポートするための追加のプログ ラムが必要となります。これらのビデオカードをサポートしている可能性が最 も高いのは最新のリリースです。 2番目に、RELNOTES と README ファイルを(そのリリースで利用できる他の文 書も)を調べてください。3番目に、XF86Config ファイルに Ramdac や ClockChip, Clocks 行が書かれていないことを確認しましょう(これらは全て Mach64 サーバが自動検出します)。"Device" セクションには Identifier, VendorName, BoardName しか書かれていてはいけません。他のオプションは全 て自動検出させるべきです。 それでもまだ問題がある場合は、XFree86@XFree86.org まで電子メールを送る か comp.windows.x.i386unix というニュースグループに投稿してください。 作者にはメールを送らないでください。というのも、XFree86@XFree86.org 宛 の電子メールに回答してくれる開発者の方々は大抵の質問にうまく答えてくれ ますし、私はなけなしの暇は X サーバの改良の作業に回したいからです。よ ろしくお願いします。 $XFree86: xc/programs/Xserver/hw/xfree86/doc/Japanese/READ.Mach64,v 3.1.2.2 1999/11/26 15:23:01 hohndel Exp $ $XConsortium: Mach64.sgml /main/8 1996/10/28 05:23:52 kaleb $ 7. 日本語訳について 日本語訳は X Japanese Documentation Project が行いました (XFree86 3.2 版の翻訳: 岡本一幸 , XFree86 3.3.3 版への更新: 藤原輝嘉 , 校正: 金田浩司 )。問題 点の指摘やご意見は藤原まで御連絡ください。原文の著作権は XFree86 プロ ジェクト社にあり、日本語訳の著作権は X Japanese Documentation Project にあります。