<!DOCTYPE Article PUBLIC "-//OASIS//DTD DocBook V3.1//EN">

<article>

<artheader>

<title>i810 with XFree86 4.x HOWTO</title>
<author>
<firstname>Toby</firstname><surname>Russell</surname>
</author>
<pubdate>May 2001</pubdate>
   <revhistory>
      <revision>
         <revnumber>1.1</revnumber>
         <date>2001-05-09</date>
         <authorinitials>tr</authorinitials>
         <revremark>
         </revremark>
      </revision>
      <revision>
         <revnumber>1.0</revnumber>
         <date>2001-05-01</date>
         <authorinitials>tr</authorinitials>
         <revremark>
                Initial release.
         </revremark>
      </revision>
    </revhistory>

<abstract>
<para>
<!--
This HOWTO describes getting XFree86 4.x running on Intel's i810 graphics 
chipset by using special features of the 2.2.18 and 2.4.x kernels.
-->
この HOWTO では、カーネル 2.2.18 と 2.4.x の特別な機能を使って、Intel の
i810 グラフィックチップセット上で XFree86 4.x を動作させる方法を説明します。
</para>
</abstract>
</artheader>

<sect1>
<title><!--Introduction-->はじめに</title>

<para>
<!--
This document has a very specific purpose; to help people who are failing to
get X working on Intel's i810 graphics chipset (hereafter "the i810"). It is
written by a beginner (me), and it is imagined that it will be of use
primarily to other beginners. The author would be flattered to hear that he
has helped anyone more skilled than he. Furthermore, I know that the i810
works with XFree86 3.3.6, but I personally have not trod that path. My
experience comes purely from XFree86 4.0 (hereafter "X4.x") and the
i810/agpgart support available in the 2.2.18 and 2.4.x kernels, and
consequently this HOWTO tackles that solution, or procedure, alone. The
instructions that follow were written to the 2.4.x compile tune, but the
procedure is similar enough to be translatable to the 2.2.18. Use your head, as
Tony Buzan would say, and read the READMEs to be sure of any required alterations
of method.-->
この文書には、非常に明確な目的があります − Intel の i810
グラフィックチップセット (以後 "i810") 上で X を動かすのに失敗している人の
手助けをすることです。これは初心者 (私です) によって書かれ、主として他の
初心者達が使うことを想定したものです。著者は、よりスキルのある人の助けに
なったと聞けば喜ぶでしょう。なお、私は i810 が XFree86 3.3.6 で動作することを
知っていますが、個人的にはその道を通っていません。私の経験は、純粋に
XFree86 4.0 (以後 "X4.x") と カーネル 2.2.18 及び 2.4.x で利用できる
i810/agpgart サポートから来るものです。それゆえに、この HOWTO はその解法や
手続きに取り組むだけです。以後の手引きは 2.4.x のコンパイルに合わせて書かれて
いますが、手順は同様なので、十分 2.4.0 に置きかえることができます。
トニー・ブザンの言ですが、頭を使ってください。そして、必要とされる変更を
把握するため、README を読んでください。
</para>

<para>
<!--
Even though I know this procedure works I feel obliged to point out that what
I have recorded here is mostly that which I have worked out in my own bumbling
way. It may well be that others know a quicker and more efficient method than
that which follows. If so I will be happy to hear from them. As I mentioned
previously, the i810 will work with XFree86 3.3.6, if one uses also some
drivers designed by Intel for the task (namely XFCom_i810-1.2-3 and
I810Gtt-0.2-4) but, in the interests of Linux purity, and of course knowing
one does not have to use Intel's software, I recommend the method detailed
here. It does not need Intel drivers.
-->
この手順が機能することを知っているとはいえ、ここに記録したことは、ほとんど
私自身の不器用な方法で解決した内容だということを告白せねばなりません。多分
以下の手順より早くて効果的な方法を知っている人はきっといます。もしそうなら、
それを伝えてもらえると嬉しいです。前に触れたように、Intel がデザインした
ドライバ (すなわち XFCom_i810_1.2-3 と I810Gtt-0.2-4) を併用することで、i810
は XFree86 3.3.6 では動作しますが、Linux の純粋性という関心の面で、そして
もちろん必ずしも Intel のソフトウェアを使う必要がないということを知る上で、
ここに詳説した方法をお勧めします。これだと Intel のドライバは不要です。
</para>

<para>
<!--
Finally, no introduction would be complete without the following words of
caution; I feel this HOWTO should be regarded as a 'bare bones' set of
instructions and should therefore be followed with all relevant README
literature to hand. What follows is not exhaustive by any stretch of the
imagination, and needs, at least for beginners, said README stuff.
-->
最後に、以下の注意の言葉で序文を締めくくりたいと思います −
この HOWTO が手引きの基本セットと見なされ、ゆえに関連する全 README 文書を
入手して追随されるべきだと思います。以下の記述は、どう想像をたくましくして
みても網羅的なものではありませんし、少なくとも初心者には、前記の README 文書が
必要です。

</para>
</sect1>

<sect1>
<title><!--Down to business-->作業まで</title>

<note><title><!--Note-->注意</title>
<para><!--Do everything that follows logged on as root.-->
以下の作業は全て、root としてログインして行なってください。</para>
</note>

<para>
<!--
There are three distinct stages that need <emphasis>not</emphasis> be followed
in the order listed here (please feel free to use your imagination). Said
stages are;
-->
ここに並べた順番に従う必要の<emphasis>ない</emphasis>別々のステージが 3 つ
あります (自由に想像してください)。そのステージとは −

</para>

<itemizedlist mark=bullet>

<listitem>
<para>
<!--get and install X4.x-->
X4.x の入手とインストール
</para>
</listitem>


<listitem>
<para>
<!--
get and compile kernel 2.2.18 or 2.4.x (including mknod agpgart stuff)
-->
kernel 2.2.18 か 2.4.x の入手とコンパイル (mknod agpgart 関係も含む)
</para>
</listitem>


<listitem>
<para>
<!--nimbly tweak XF86Config-->
XF86Config をさくっといじる
</para>
</listitem>
</itemizedlist>


<sect2>
<title><!--Getting and installing X4.x-->X4.x の入手とインストール</title>

<para>
<!--
The first stage is of course listed only as a guide for those who have perhaps
tried getting XFree86 3.3.6 working with the i810 and failed, or perhaps those
who have not even heard that X4.x supports the i810 and have been struggling
vainly with their <filename class=headerfile>XF86Config</filename> file. I
suppose the majority of people who find these instructions useful will have
already loaded X4.x. You lot can skip this bit. Anyway, if you do need to
know, X4.x can be got from; <ulink
url="ftp://ftp.xfree86.org/pub/XFree86/4.0/binaries"></ulink>
-->
最初のステージはもちろん、おそらく i810 で XFree86 3.3.6 を動かそうとして
失敗した、あるいはおそらく X4.x が i810 をサポートしてることを聞いたことも
なく無駄に <filename class=headerfile>XF86Config</filename> ファイルと
とっくみあっている、そういう人むけの手引きとしてリストされているだけです。
これらの指示を有用だと思うほとんどの人は既に X4.x をロードしているものと
思います。読者のほとんどはこの部分を飛ばせるでしょう。ともあれ、もし知る
必要があるなら、X4.x は
<ulink url="ftp://ftp.xfree86.org/pub/XFree86/4.0/binaries">ここ</ulink>
から入手することができます。
</para>

<para>
<!--
But before you rush ahead and download away you must first be sure which
version of X4.x suits your system. So download <filename
class=headerfile>Xinstall.sh</filename> on its own and run (from within the
folder containing <filename class=headerfile>Xinstall.sh</filename>):
-->
ただし、がむしゃらに進んでダウンロードする前に、最初に X4.x スイートのどの
バージョンが自分のシステムに適しているか確かめねばなりません。ですので、
(<filename class=headerfile>Xinstall.sh</filename>) があるフォルダの中から)
単独でダウンロードして実行してください (<filename
class=headerfile>Xinstall.sh</filename> があるフォルダの中から) −

<para>
<userinput>sh Xinstall.sh -check</userinput>
</para>

<para>
<!--
The results will direct you to the correct folder within the above mentioned
URL from where the appropriate files for your system can be downloaded.
-->
スクリプトの結果は、上記の URL 内の正しいフォルダを示すでしょう。そこから
システムに適したファイルをダウンロードできます。
</para>

<para>
<!--
For a basic installation and to save time downloading one needs only the
following absolute necessities, without exception (the others are optional and
when included in the install process, I feel, increase the chances of things
going wrong for the unwary and inexperienced):
-->
基本的なインストールのため、そしてダウンロード時間を省くために説明して
おきますと、例外なく以下のものが絶対必要になります (他のものはオプション
であり、私が思うに、インストール過程で含まれていると、不注意や未熟さのために
ことが悪い方向へ向かう可能性が増えます)。

<simplelist type=vert columns=3>
<member><filename class=headerfile>extract[.exe]</filename></member>
<member><filename class=headerfile>Xbin.tgz</filename></member>
<member><filename class=headerfile>Xlib.tgz</filename></member>
<member><filename class=headerfile>Xman.tgz</filename></member>
<member><filename class=headerfile>Xdoc.tgz</filename></member>
<member><filename class=headerfile>Xfenc.tgz</filename></member>
<member><filename class=headerfile>Xfnts.tgz</filename></member>
<member><filename class=headerfile>Xetc.tgz</filename></member>
<member><filename class=headerfile>Xvar.tgz</filename></member>
<member><filename class=headerfile>Xxserv.tgz</filename></member>
<member><filename class=headerfile>Xmod.tgz</filename></member>
</simplelist>
</para>

<para>
<!--
Now knowing which set of files are suited to your system you can go ahead and
download whichever suits. Then install with the following command (from within
the folder containing freshly downloaded files):
-->
これで、どのファイルのセットが自分のシステムに適しているか分りました。先に
進んでどのスイートでもダウンロードできます。それから、(新たにダウンロードした
ファイルのあるフォルダから) 以下のコマンドでインストールしてください −
</para>

<para>
<userinput>sh Xinstall.sh</userinput>
</para>

<para>
<!--
If you have been good everything will proceed smoothly. You will be asked some
questions which the README file can explain/answer better than I. If something
doesn't work as expected I refer you to the far more detailed, aforementioned
README file, which you should definitely peruse. As a newbie I always read the
readme files before downloading, installing, compiling and even getting up
from my seat to go to the toilette. You can never be too sure.
-->
ここまでちゃんとしていれば、全ては円滑に進むでしょう。いくつか質問をされる
でしょうが、これには私よりも README ファイルの方がよりよく説明/回答して
くれます。何か期待した通りに動かないものがあるなら、きっちりと熟読するべき、
はるかに詳しい前述の README ファイルをおすすめします。初心者らしく、私は
ダウンロードやインストール、コンパイルはおろかトイレに行くために席を立つ
前ですら readme を読みます。完全にわかることはありえないのです。
</para>

<para>
<!--That is the end of this stage.-->
これで、このステージは終了です。
</para>
</sect2>

<sect2>
<title><!--Get and compile kernel 2.2.18 or 2.4.x (including mknod agpgart stuff)-->kernel 2.2.18 か 2.4.x (mknod とagpgart含む) の入手とコンパイル</title>

<para>
<!--
You can get either kernel from <ulink url="ftp://ftp.kernel.com"></ulink>. Of
course, read everything called README while you are at it. (In the README
literature that comes with the 2.4.x kernel, there is an important note about
where to unpack the source. Make sure you read it.) Put the kernel source file
in <filename class=directory>/usr/src/kernels</filename>, and
then run the following compile sequence, which I learned from a linuxnewbie
article (to which you should refer if my directions are not clear enough for
you, however it is specific to 2.2.x kernels). It can be found at the following address; <ulink
url="http://www.linuxnewbie.org/nhf/intel/compiling/kernel_update.html"></ulink>.
Of course, the location of the still-packed kernel is not really relevant, it
only matters that it is unpacked to an acceptable location. OK, now for the
commands:
-->

どちらの kernel でも、<ulink url="ftp://ftp.kernel.com">ここ</ulink> から入手する
ことができます。当然、README と呼ばれるあらゆるファイルをその時に読んで
ください (2.4.x kernel に附属している README 文書には、ソースをどこに解凍するかについて重要な注記があります。忘れずに読んでください)。kernel ソースファイルを
<filename class=directory>/usr/src/kernels</filename> に保存し、私が
linuxnewbie の記事 (もし私の指示がわかりにくければこれを参照してください。
ただし、2.2.x kernel 限定です) で学んだ以下のコンパイル手順を実行してください。
記事は、
<ulink
url="http://www.linuxnewbie.org/nhf/intel/compiling/kernel_update.html">このアドレス</ulink>
で見ることができます。
もちろん、まだ圧縮されている kernel の置き場所は本当はどこでも構いません。
ただ一つ重要なのは、便利な場所で解凍する、ということです。それじゃ、コマンドを
打ちましょう −
</para>

<para>
<userinput>tar -xzvf /usr/src/kernels/linux-2.4.x.tar.gz</userinput>
</para>

<para>
<!--
or if you downloaded the better compressed bz2 version
-->
あるいはより圧縮率の良い bz2 版をダウンロードしたのなら、</para>

<para>
<userinput>bzcat /usr/src/kernels/linux-2.4.x.tar.bz2 | tar xv</userinput>
</para>

<para>
<!--
and watch the screen spew out pages of information about what's happening.
When it is finished it will have created a new <filename
class=directory>linux</filename> folder.
-->
それでは、何が起きているのか、画面の出力をよく見てください。
終わったら、新しい <filename class=directory>linux</filename> フォルダが
できているはずです。
</para>

<para>
<!--OK, so, change to the new directory:-->
いいでしょう、では新しいディレクトリに移動します −
</para>

<para>
<userinput>cd linux</userinput>
</para>

<para>
<!--and begin the compile process proper...-->
そして、適切にコンパイルをはじめてください……。
</para>

<para>
<userinput>make config</userinput>
</para>

<para>
<emphasis><!--Or preferably-->あるいはむしろ</emphasis>
</para>

<para>
<userinput>make menuconfig</userinput>
</para>

<para>
<!--
There's also <command>make xconfig</command>, but you haven't got X running,
or you wouldn't be reading this. So that won't work. And I'm embarrassed to
mention it in such an imperfect fashion but there is also something like
<command>make oldconfig</command> but I can't find any reference to it in my
books. In any case I am not addressing it here, though I am sure the procedure
for it is very similar to that which follows for <command>make
menuconfig</command>, should you be awkward and want to use it.
-->
<command>make xconfig</command> という選択肢もあるにはありますが、まだ X
は走っていません。さもなくばこれを読んでるはずがありません。ですから、
使うことはできません。こんな不完全なやり方でこのことに触れるのは
気恥ずかしいのですが、<command>make oldconfig</command> というのもあります。
ですが、私の持つ書籍の中に、これについての言及を見つけることはできません
でした。いずれにせよ、私はここではこれについて触れません。もしあなたが不便に
思って、それを使いたければ、その過程は <command>make menuconfig</command>
によるものと非常に似ていると確信しています。
</para>

<para>
<!--
Now, I have gone through three text based kernel compiles (<command>make
config</command>) and know how long winded they are. I reommend <command>make
menuconfig</command> instead, which requires only that ncurses be loaded (you
don't need X) and you will be taken through the pretty face of kernel
recompilation. I loaded ncurses during a custom install of Red Hat 6.1, but I
forget exactly at which stage that option is available. Otherwise ncurses is,
I'm sure, on your distro's CD in rpm format, so if issuing <command>make
menuconfig</command> just produces errors, install the ncurses rpm and try
again.
-->
さて、私はテキストベースの kernel コンパイルを 3 回ほど行い
(<command>make config</command>)、それが如何に長く曲がりくねっているか
知りました。私は <command>make menuconfig</command> を代わりに使うのを
おすすめします。これは、ncurses のロードを要求するだけ (X は不要) で、kernel
再コンパイルをきれいな外観で行うことができるでしょう。私は Red Hat 6.1
のカスタムインストールで ncurses を入れてましたが、この時点ではこの選択が
できることを完全に忘れていました。一方、あなたのディストリビューションの CD
には rpm 形式で ncurses があると思いますので、もし
<command>make menuconfig</command> がただエラーを返すなら、ncurses の rpm を
インストールしてもう一度やってみてください。
</para>

<para>
<!--
The most relevant stages of the <command>make</command> process for solving
our particular problem are:
-->
私達特有の問題を解決するために <command>make</command> の過程で一番意味のある
ステージは −
</para>

<itemizedlist mark=bullet>
<listitem>
<para>
<!--
to select EXPERIMENTAL early on (by hitting return while the very first option
is highlighted and then selecting the only suboption which is consequently
revealed),
-->
前もって (ハイライトされている一番最初の選択肢で return を押し、その結果
現れる唯一のサブオプションを選ぶことで) EXPERIMENTAL を選ぶこと、
</para>
</listitem>

<listitem>
<para>
<!--
towards the bottom of the base options, to enter "Character Devices" and
select (not as "M" but as "*") "/dev/agpgart (AGP) support" (only available if
the above instruction has been followed), and
-->
基本オプションの下の方へいって、キャラクタデバイスに入り、 "/dev/agpgart (AGP)
support" (上の指示に従った場合のみ出現します) を選択します ( "M" ではなくて
"*" で)。それから、
</para>
</listitem>

<listitem>
<para>
<!--
select the appropriate sub-option of "/dev/agpgart (AGP) support" (again not
as a module "M" but as a static part of the kernel "*"), namely the "I810/I810
dc100I810e support" part.
-->
"/dev/agpgart (AGP) support" (繰り返しますが、モジュール "M" ではなくて kernel
への静的な組みこみ "*" として、です) の適切なサブオプション、つまり "I810/I810
dc100I810e support" を選択します。
</para>
</listitem>
</itemizedlist>

<note><title><!--Note-->注意</title>
<para>
<!--
The above explanation assumes you have run <command>make menuconfig</command>
and so a little thinkology will be required to map it to a situation where
<command>make</command> has been issued instead. But only a little.
-->
上の説明は、読者が <command>make menuconfig</command> を実行したことを
想定しており、それを <command>make</command> が代わりに実行された状況に
対応づけるには、多少頭をひねる必要があるでしょう。とはいえ、ほんの少しです。
</para>
</note>

<para>
<!--
(It has been pointed out to me that loading these features as modules would be
more logical, since they are not required until <command>startx</command> is
run. I have not tried the 'loadable module way' yet and will ammend this
section of the HOWTO after I have tested it. I recommend the static mode here
because I ran this procedure on a test version of the 2.4.0 kernel and it was
suggested to me that loading statically was a safer and stabler way to go. Now
that 2.4.0 is officially out there, perhaps modules will be more sensible.
I'll let you know how it goes. (Thanks to Heron Ordonez for this.))
-->
(これらの機能をモジュールとしてロードする方がより論理的だと指摘されました。
というのも、これらは <command>startx</command> が実行されるまでは必要と
されないからです。私はまだ「ローダブルモジュールの方法」を試していませんし、
テストした後で HOWTO のこのセクションを追記すると思います。私がここで静的な
やり方をおすすめするのは、この過程をテストバージョンの 2.4.x kernel で実行し、
静的なロードがより安全で安定した方法であると思えるからです。今では 2.4.x は
公式にリリースされており、モジュールは多分よりまともになっているでしょう。
私は、それがどんな状況なのか記載するつもりです。
(このことについて、Heron Ordonez に感謝します)
</para>

<para>
<!--When all is over and you feel calm enough, do this;-->
全て終了して十分に落ちついたら、このようにします −

<simplelist type=vert columns=1>
<member><userinput>make dep</userinput></member>
<member><userinput>make clean</userinput> (not violently necessary but does no
harm)</member>
<member><userinput>make bzImage</userinput> (takes a while, this bit)</member>
<member><userinput>make modules</userinput></member>
<member><userinput>make modules_install</userinput></member>
</simplelist>
</para>

<para>
<!--
Now have a look at the <filename class=directory>/boot</filename> directory.
You will probably see that <filename class=headerfile>System.map</filename> is
a symbolic link to <filename
class=headerfile>System.map-[your_kernel_version]</filename> and <filename
class=headerfile>vmlinuz</filename> is a symbolic link to <filename
class=headerfile>vmlinuz-[your_kernel_version]</filename>. This arrangement is
true for many distros, but not all. I think some store <filename
class=headerfile>vmlinuz</filename> in <filename class=directory>/</filename>,
while <filename class=headerfile>System.map</filename> resides in <filename
class=directory>/boot</filename>. Whatever the case is, use your brain and
apply these instructions accordingly. So, basically you need to remove the
symbolic links like so:
-->
では、<filename class=directory>/boot</filename> ディレクトリを見てみましょう。
おそらく、<filename class=headerfile>System.map</filename> という
<filename class=headerfile>System.map-[kernel バージョン]</filename> への
シンボリックリンクと、<filename class=headerfile>vmlinuz</filename> という
<filename class=headerfile>vmlinuz-[kernel バージョン]</filename> への
シンボリックリンクがあると思います。この配置は全てではないですが多くの
ディストロ (訳注:ディストリビューション) で通用します。<filename
class=headerfile>vmlinuz</filename> を <filename class=directory>/</filename>
にあるのに、<filename class=headerfile>System.map</filename> は
<filename class=directory>/boot</filename> にあるようなものがあると思います。
どんなケースであれ、頭を使ってこれらの指示をそれに合うように適用してください。
ですから、基本的には、このようにしてシンボリックリンクを削除する必要が
あります −

<simplelist type=vert columns=1>
<member><userinput>rm System.map</userinput></member>
<member><userinput>rm vmlinuz</userinput></member>
</simplelist>
</para>

<para>
<!--
Then new symbolic links need to be created to the
about-to-be-copied-over-while-simultaneously-being-renamed, recently created
files. It goes like this (assuming you have an i386 computer):
-->
それから「名前を変更しつつ実は今作ったファイルで上書きする」
カーネル関連ファイルへの新しいシンボリックリンクを作成する必要があります。
それにはこのようにします (i386 のコンピュータを使っているという前提で) −

<simplelist type=vert columns=1>
<member><userinput>cp /usr/src/linux/arch/i386/boot/bzImage 
/boot/vmlinuz-2.4.x</userinput></member>
<member><userinput>ln -s /boot/vmlinuz-2.4.x 
/boot/vmlinuz</userinput></member>
<member><userinput>cp /usr/src/linux/System.map
/boot/System.map-2.4.x</userinput></member>
<member><userinput>ln -s /boot/System.map-2.4.x
/boot/System.map</userinput></member>
</simplelist>
</para>

<tip>
<para>
<!--
You don't need to use absolute pathnames if you are within <filename
class=directory>/boot</filename>. But if you are the excessively cautious type
and do use absolute pathnames, you just have longer names for your symbolic
files. In fact the whole symbolic link thing here is only necessary if
you want to play it that way. Essentially, minimalistically, you can have
one kernel called <filename class=headerfile>vmlinuz</filename>
and name all the others by their version number (or just trash them!), and swap
all the names around when you want to boot another kernel. Or give each kernel
a unique
name, and have one entry per kernel in <filename class=headerfile>/etc/lilo.con
f</filename>.
It's up to you.
-->
もし <filename class=directory>/boot</filename> にいるなら、絶対パスを使う
必要はありません。しかし、過度に用心深い性格で、絶対パスを使うのであれば、
シンボリックファイルにもっと長い名前を使ってください。実際、
根本的に、最低限としては、<filename class=headerfile>vmlinuz</filename>
という名前のカーネルを一つと、他の全てをバージョン番号で名付け
(あるいは単にそれらを捨てるとか！)、別のカーネルを起動したい時は、
名前を入れかえるのです。あるいは、各カーネルに独自の名前をつけ、それぞれに
<filename class=headerfile>/etc/lilo.conf</filename>のエントリを用意する
こともできます。読者次第です。
</para>
</tip>

<para>
<!--
Now you need to edit <filename class=headerfile>/etc/lilo.conf</filename>.
This is achieved thusly:-->
次に、<filename class=headerfile>/etc/lilo.conf</filename> を編集しなくては
なりません。

<simplelist type=vert columns=1>
<member><computeroutput>image=/boot/vmlinuz</computeroutput></member>
<member><computeroutput>label=[what-ever-you-want-that-is-relevant-easy-to-type-and-remember]</computeroutput></member>
<member><computeroutput>read-only</computeroutput></member>
<member><computeroutput>root=/dev/hda[n]</computeroutput></member>
</simplelist>
</para>

<para>
<!--
After editing <filename class=headerfile>lilo.conf</filename> you must do
this:
-->
<filename class=headerfile>lilo.conf</filename> の編集が済んだら、こうします −
</para>

<para>
<userinput>/sbin/lilo</userinput>
</para>

<para>
<!--
so that the crisp, shiny, new linux kernel be make known by lilo, otherwise (I
have experienced this) the new kernel will not be available for booting. Which
would be silly. So after all this take a deep breath and reboot, select your
new kernel and with fingers crossed, watch. It should work. If it does, go and
celebrate a little. But don't let it get to your head because you have yet to
mknod the agpgart module, a simple yet essential procedure done thusly:
-->
こうして、新鮮でピカピカの、新しい Linux kernel のことを lilo が知ります。
でなければ (私はこれを経験しました)、新しいカーネルでは起動することが
できません。実に間抜けなことになります。ではこれの後で、深呼吸して、
再起動してください。新しいカーネルを選んだら、指を組んでじっと見守ります。
無事起動するはずです。起動したら少しばかり浮かれましょう。ただし、
それで頭をヤられてはいけません。というのも、このようにして、単純ではある
けれども重要な、agpgart モジュールを mknod するという手続きが必要だからです −

<simplelist type=vert columns=1>
<member><userinput>cd /dev</userinput></member>
<member><userinput>mknod agpgart c 10 175</userinput></member>
</simplelist>
</para>

<para>
<!--
Which basically creates the very essential character device (X won't run
without it) driver which acts kinda like a 'go-between' for the i810 chipset
and the X server. (Thanks to Heron Ordonez for saving me some embarrassment
here.) Pretty scientic stuff there. Sorry about that.-->
基本的にはこれで、i810 チップセットと X サーバをあたかも「とりもつ」ような、
非常に本質的な (X はこれなしでは走りません) キャラクタデバイスが作成されます。
(Heron Ordonez のおかげで私はここで恥をかかずにすみました)。かなり技術的に
いろいろあるところですが、この説明で勘弁してください。
</para>

<para>
<!--That was the end of this stage.-->
これで、このステージは終わりです。
</para>
</sect2>

<sect2>
<title><!--Nimbly tweak XF86Config-->XF86Config をさくっといじる</title>

<para>
<!--
I've done a lot of this and it get's mighty tedious when it fails 23 times in
a row I CAN TELL YOU, so pay attention and read very closely the man page (run
<userinput>man XF86Config</userinput> at the command prompt). First of all I
recommend running the in-no-way-user-friendly  <command>xf86config</command>
(<emphasis>observe case!</emphasis>) to genertate a base <filename
class=headerfile>XF86Config</filename> file as the other tools seem to produce
<filename class=headerfile>XF86Config</filename> files which are in my
experience incompatible with X4.x. When you run through the questions
<command>xf86config</command> asks and you reach the card section, there will
be nothing for you to choose, so choose that very nothing. You'll be entering
the right stuff later, after the base file has been created. Then, after
answering all the questions as well as you can, save the file as <filename
class=headerfile>/etc/X11/XF86Config</filename>.
-->
私は、かなりこの作業を行ないました。23 回も続けて失敗すれば、大変長ったらしくて
うんざりです。声を大にして言いますが、注意して、しっかりとマニュアルページを
読んでください(コマンドプロンプトで <userinput>man XF86Config</userinput> を
実行します)。まず最初に、全く不親切な <command>xf86config</command> (<emphasis>
小文字のままで！</emphasis>) を実行して、ベースとなる <filename
class=headerfile>XF86Config</filename> ファイルを生成するようにおすすめします。
これは、他のツールだと、私の経験では X4.x とは互換性のない <filename
class=headerfile>XF86Config</filename> ファイルを生成するみたいだからです。
<command>xf86config</command> の質問にざっと答えていって、カードの項目まで
来たら、そこに選ぶべき選択肢はありませんので、何も選ばないでください。後ほど、
基本のファイルを作成した後で、必要な要素を追加します。では、可能な限りの
質問に全て答え終えたら、ファイルを <filename
class=headerfile>/etc/X11/XF86Config</filename> としてセーブしてください。
</para>

<para>
<!-- So, finally, the all important addition is:-->
さて、最後に、重要な追加項目はこれらで全てです −

<simplelist type=vert columns=1>
<member><computeroutput>Section "Device"</computeroutput></member>
<member><computeroutput>   Identifier  "i810"</computeroutput></member>
<member><computeroutput>   Driver   "i810"</computeroutput></member>
<member><computeroutput>   VideoRam	"4096"</computeroutput></member>
</simplelist>
</para>

<para>
<!--
and it should be inserted in the Graphics Device Section. There should in any
case be an existing "Device" section which you could edit if you prefer. From
thereon you should, having defined the i810 for X, enter "i810" wherever you
see a "Device" field. I am including a couple of sections from my <filename
class=headerfile>XF86Config</filename> file as an example, and hopefully to
make a little clearer what I mean:
-->
これは、Graphics Device セクションに挿入されねばなりません。いずれにせよ、好みで既存の "Device" セクションを編集することもできるはずです。それからは、X のために i810 を定義するのに、"Device" フィールドを見つける度に "i810" と入力していきます。例として、私の <filename class=headerfile>XF86Config</filename> から一組のセクションを含めています。できれば、私の意図するところが明確になればいいのですが −

<simplelist type=vert columns=1>
<member><computeroutput>Section "Device"</computeroutput></member>
<member><computeroutput>   Identifier  "i810"</computeroutput></member>
<member><computeroutput>   Driver   "i810"</computeroutput></member>
<member><computeroutput>   VideoRam	"4096"</computeroutput></member>
</simplelist>
</para>

<para>
<simplelist type=vert columns=1>
<member><computeroutput>Section "Screen"</computeroutput></member>
<member><computeroutput>   Identifier  "Screen 1"</computeroutput></member>
<member><computeroutput>   Device   "i810"</computeroutput></member>
<member><computeroutput>   Monitor	"Highscreen
17inch"</computeroutput></member>
<member><computeroutput>   DefaultColorDepth 24</computeroutput></member>
<member><computeroutput>   SubSection "Display"</computeroutput></member>
<member><computeroutput>      Depth        8</computeroutput></member>
<member><computeroutput>      Modes        "1024x768"</computeroutput></member>
<member><computeroutput>   EndSubSection</computeroutput></member>
<member><computeroutput>   SubSection "Display"</computeroutput></member>
<member><computeroutput>      Depth        15</computeroutput></member>
<member><computeroutput>      Modes        "1024x768"</computeroutput></member>
<member><computeroutput>   EndSubSection</computeroutput></member>
<member><computeroutput>   SubSection "Display"</computeroutput></member>
<member><computeroutput>      Depth        16</computeroutput></member>
<member><computeroutput>      Modes        "1024x768"</computeroutput></member>
<member><computeroutput>   EndSubSection</computeroutput></member>
<member><computeroutput>   SubSection "Display"</computeroutput></member>
<member><computeroutput>      Depth        24</computeroutput></member>
<member><computeroutput>      Modes        "1024x768"</computeroutput></member>
<member><computeroutput>   EndSubSection</computeroutput></member>
<member><computeroutput>   SubSection "Display"</computeroutput></member>
<member><computeroutput>      Depth        32</computeroutput></member>
<member><computeroutput>      Modes        "1024x768"</computeroutput></member>
<member><computeroutput>   EndSubSection</computeroutput></member>
<member><computeroutput>EndSection</computeroutput></member>
</simplelist>
</para>

<warning>
<para>
<!--
As you can see I have only given X the option of "1024x768", and have a
default colour depth of 24 bits, because I like it that way, and the i810 can
easily cope with that resolution and depth on my 17" monitor. How that would
work on a 21" I do not know. Experimentation will teach you.
-->
私が、X へのオプションとして "1024x768" のみ与えていて、デフォルトの色深度を
24 bit にしているのがわかると思いますが、これは、私がこの方法を好むからです。
加えて、i810 は私の 17" モニタでは、その解像度と色深度でたやすく動作して
くれます。21" のモニタでどう動くかは分りません。実験すればわかるでしょう。
</para>
</warning>

<para>
<!--
I am going to be boring and say it again, but a more complete understanding
than I can give here of the mysteries of the <filename
class=headerfile>XF86Config</filename> file can be achieved by closely reading
the man page (see above). This is really important if you want to have a
chance of solving any problems that are bound to come up now and again, that
have not been covered here.
-->
うんざりしながらもう一度言っておきますが、私がここで与えることができるより
完全に <filename class=headerfile>XF86Config</filename> ファイルのナゾを
理解するのは、マニュアルページ (上記参照) をしっかり読むことでなしとげる
ことができます。これからきっと発生するであろう、ここでは触れられていない
あらゆる問題を解決する見込みが欲しいなら、これは本当に重要なことです。
</para>

<para>
<!--
That should do it. Now save <filename class=headerfile>XF86Config</filename>
and run:
-->
これで完了です。
では、<filename class=headerfile>XF86Config</filename> を保存して、
これを実行します −
</para>

<para>
<userinput>startx</userinput>
</para>

<para>
<!--
It should work. It did for me. You will be happy. If not contact me at
<email>trussl@hotmail.com</email> and I will endeavour to help you.
-->
動いたはずです。私の場合は動きました。幸せになれたと思います。
うまくいかないようでしたら、<email>trussl@hotmail.com</email> で私と
連絡をとれば、手助けするよう努力します。
</para>

<note><title><!--Note-->付記</title>
<para>
<!--
This is a kind of a p.s. to this section but may be helpful. I had a wee
problem when going through the XF86Config part of this HOWTO during a test
run. It stemmed from having read but not fully understood some blurb about the
i810 and X4.x not working at all resolutions with a buffer extension (or
something like that). Anyway, I made no notes about this and cannot therefore
remember exactly what I read. Because I remember this vaguely I can only say
the following with certainty; you need the following stanza at the beginning
of your <filename class=headerfile>XF86Config</filename> file:
-->
これは、このセクションへのいわば追伸のようなものですが、役に立つと思います。
私はこの HOWTO の XF86Config 部分を試験的に実行している時、ささいな問題に
ぶつかりました。それは、読みはしたものの完全には理解していなかった、i810 と
X4.x がバッファ拡張 (あるいはその同類) のもとでは、全ての解像度で動作しない
ことに関する宣伝文によるものでした。ともあれ、私はこのことについてメモを
とらなかったので、自分が読んだものを正確には思いだせません。私はこれについて
ぼんやりとしか覚えていないので、確信をもって言えるのはこれだけです −
<filename class=headerfile>XF86Config</filename> ファイルの最初に、
以下の節が必要となります。

<simplelist type=vert columns=1>
<member><computeroutput># This loads the DBE extension
module</computeroutput></member>
<member><computeroutput>   Load "dbe"  # Double buffer
extension</computeroutput></member>
<member><computeroutput># This loads the miscellaneous extensions module, and
disables </computeroutput></member>
<member><computeroutput># initialisation of the XFree86-DGA extension within
that module.</computeroutput></member>
<member><computeroutput>   SubSection "extmod"</computeroutput></member>
<member><computeroutput>    Option "omit xfree86-dga" # don't initialise the
DGA extension</computeroutput></member>
<member><computeroutput>   EndSubSection</computeroutput></member>
</simplelist>
</para>

<para>
<!--
So if X reports errors about a "shape extender" or "shape extension", you may
well find that your <filename class=headerfile>XF86Config</filename> file is
missing the above listed stanza.
-->
ですから、もし X が "shape extender" や "shape extension" についてのエラーを
出すようなら、おそらく <filename class=headerfile>XF86Config</filename>
ファイルに上の節が欠けていると思ってよいでしょう。
</para>
</note>

</sect2>

</sect1>

<sect1>
<title><!--Thank you-->謝辞</title>

<para>
<!--
I must point out that I would not have known how to fix the i810 and X4.x
problem if it were not for the pioneering efforts of Val Henson who guided me
through the process and recommended the 2.4.0 kernel in the first place. And
now that this is an ammended version, I would also like to thank Heron Ordonez
for pointing out a few problems which I have in part addressed, and will fully
address in due course. Curtis Stone pointed out to me that the features I
thought only available in the 2.4.0 kernel were present in 2.2.18. Thanks to
him too. I am now also endebted to Cameron kerr for pointing out that the 2.4.x
kernel must not be unpacked in /usr/src/linux. I had had no success with the
2.4.x until this was pointed out to me, but would have been OK had I read the
accompanying README, ie followed my own instructions.
-->
i810 と X4.x の問題を修正する方法を知ることは、Val Henson という先達の努力が
なければなしえませんでした。彼は、私の作業を指導し、最初の時点で 2.4.0 kernel
の使用を勧めてくれました。それから、この改訂版においては、Heron Ordonez にも
謝意を述べたいと思います。彼からは、ここで私が一部説明したこと
(そしてゆくゆくはきっちり説明したいと思っていること) についての問題の指摘を
受けました。Curtis Stone は私が 2.4.0 kernel でのみ使えると思っていた機能が
2.2.18 でも使えると教えてくれました。彼にも感謝を。それから、2.4.x カーネルは
/usr/src/linux で解凍してはいけないと教えてくれた Cameron kerr にも恩義が
あります。この指摘があるまで、私は 2.4.x では成功していなかったのですが、
添付の README を読んで、すなわち私自身の手引きに従ってさえいれば、
成功していたでしょう。
</para>

<para>
<!--
If this process carries on in this fashion the 'Thank you' will one
day be the largest section of this HOWTO. This is an open process and all
comments (politely phrased of course!) are welcome.
-->
こういう風にこの(訳注：感謝の)過程を続けていると、一日でこの HOWTO 中一番
大きいセクションになってしまいます。この過程は開かれており、(もちろん丁寧な
言葉遣いで！) どんなコメントも歓迎です。
</para>
</sect1>

</Article>

