Sophie

Sophie

distrib > Mandriva > 2010.1 > x86_64 > by-pkgid > 965e33040dd61030a94f0eb89877aee8 > files > 7289

howto-html-en-20080722-2mdv2010.1.noarch.rpm

<HTML
><HEAD
><TITLE
>Down to business</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.63
"><LINK
REL="HOME"
TITLE="i810 with XFree86 4.x HOWTO"
HREF="index.html"><LINK
REL="PREVIOUS"
TITLE="Introduction"
HREF="x21.html"><LINK
REL="NEXT"
TITLE="Thank you"
HREF="x308.html"></HEAD
><BODY
CLASS="SECT1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>i810 with XFree86 4.x HOWTO</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="x21.html"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="x308.html"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
NAME="AEN26"
>2. Down to business</A
></H1
><DIV
CLASS="NOTE"
><BLOCKQUOTE
CLASS="NOTE"
><P
><B
>Note: </B
>Do everything that follows logged on as root.</P
></BLOCKQUOTE
></DIV
><P
>There are three distinct stages that need <EM
>not</EM
> be followed 
in the order listed here (please feel free to use your imagination). Said 
stages are;</P
><P
></P
><UL
><LI
STYLE="list-style-type: disc"
><P
>get and install X4.x</P
></LI
><LI
STYLE="list-style-type: disc"
><P
>get and compile kernel 2.2.18 or 2.4.x (including mknod agpgart stuff)</P
></LI
><LI
STYLE="list-style-type: disc"
><P
>nimbly tweak XF86Config</P
></LI
></UL
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN40"
>2.1. Getting and installing X4.x</A
></H2
><P
>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 <TT
CLASS="FILENAME"
>XF86Config</TT
> 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; <A
HREF="ftp://ftp.xfree86.org/pub/XFree86/4.0/binaries"
TARGET="_top"
>ftp://ftp.xfree86.org/pub/XFree86/4.0/binaries</A
></P
><P
>But before you rush ahead and download away you must first be sure which 
version of X4.x suits your system. So download <TT
CLASS="FILENAME"
>Xinstall.sh</TT
> on its own and run (from within the 
folder containing <TT
CLASS="FILENAME"
>Xinstall.sh</TT
>):&#13;</P
><P
><TT
CLASS="USERINPUT"
><B
>sh Xinstall.sh -check</B
></TT
></P
><P
>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.</P
><P
>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):

<P
></P
><TABLE
BORDER="0"
><TBODY
><TR
><TD
><TT
CLASS="FILENAME"
>extract[.exe]</TT
></TD
><TD
><TT
CLASS="FILENAME"
>Xdoc.tgz</TT
></TD
><TD
><TT
CLASS="FILENAME"
>Xvar.tgz</TT
></TD
></TR
><TR
><TD
><TT
CLASS="FILENAME"
>Xbin.tgz</TT
></TD
><TD
><TT
CLASS="FILENAME"
>Xfenc.tgz</TT
></TD
><TD
><TT
CLASS="FILENAME"
>Xxserv.tgz</TT
></TD
></TR
><TR
><TD
><TT
CLASS="FILENAME"
>Xlib.tgz</TT
></TD
><TD
><TT
CLASS="FILENAME"
>Xfnts.tgz</TT
></TD
><TD
><TT
CLASS="FILENAME"
>Xmod.tgz</TT
></TD
></TR
><TR
><TD
><TT
CLASS="FILENAME"
>Xman.tgz</TT
></TD
><TD
><TT
CLASS="FILENAME"
>Xetc.tgz</TT
></TD
><TD
>&nbsp;</TD
></TR
></TBODY
></TABLE
><P
></P
></P
><P
>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):&#13;</P
><P
><TT
CLASS="USERINPUT"
><B
>sh Xinstall.sh</B
></TT
></P
><P
>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.</P
><P
>That is the end of this stage.</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN80"
>2.2. Get and compile kernel 2.2.18 or 2.4.x (including mknod agpgart 
stuff)</A
></H2
><P
>You can get either kernel from <A
HREF="ftp://ftp.kernel.com"
TARGET="_top"
>ftp://ftp.kernel.com</A
>. 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 <TT
CLASS="FILENAME"
>/usr/src/kernels</TT
>, 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; <A
HREF="http://www.linuxnewbie.org/nfh/intel/compiling/kernel_update.html"
TARGET="_top"
>http://www.linuxnewbie.org/nfh/intel/compiling/kernel_update.html</A
>. 
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:</P
><P
><TT
CLASS="USERINPUT"
><B
>tar -xzvf /usr/src/kernels/linux-2.4.x.tar.gz</B
></TT
></P
><P
>or if you downloaded the better compressed bz2 version</P
><P
><TT
CLASS="USERINPUT"
><B
>bzcat /usr/src/kernels/linux-2.4.x.tar.bz2 | tar xv</B
></TT
></P
><P
>and watch the screen spew out pages of information about what's happening. 
When it is finished it will have created a new <TT
CLASS="FILENAME"
>linux</TT
> folder.</P
><P
>OK, so, change to the new directory:</P
><P
><TT
CLASS="USERINPUT"
><B
>cd linux</B
></TT
></P
><P
>and begin the compile process proper...</P
><P
><TT
CLASS="USERINPUT"
><B
>make config</B
></TT
></P
><P
><EM
>Or preferably</EM
></P
><P
><TT
CLASS="USERINPUT"
><B
>make menuconfig</B
></TT
></P
><P
>There's also <B
CLASS="COMMAND"
>make xconfig</B
>, 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 
<B
CLASS="COMMAND"
>make oldconfig</B
> 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 <B
CLASS="COMMAND"
>make 
menuconfig</B
>, should you be awkward and want to use it.</P
><P
>Now, I have gone through three text based kernel compiles (<B
CLASS="COMMAND"
>make 
config</B
>) and know how long winded they are. I reommend <B
CLASS="COMMAND"
>make 
menuconfig</B
> 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 <B
CLASS="COMMAND"
>make 
menuconfig</B
> just produces errors, install ncurses and try 
again.</P
><P
>The most relevant stages of the <B
CLASS="COMMAND"
>make</B
> process for solving 
our particular problem are:</P
><P
></P
><UL
><LI
STYLE="list-style-type: disc"
><P
>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),</P
></LI
><LI
STYLE="list-style-type: disc"
><P
>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</P
></LI
><LI
STYLE="list-style-type: disc"
><P
>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.</P
></LI
></UL
><DIV
CLASS="NOTE"
><BLOCKQUOTE
CLASS="NOTE"
><P
><B
>Note: </B
>The above explanation assumes you have run <B
CLASS="COMMAND"
>make menuconfig</B
> 
and so a little thinkology will be required to map it to a situation where 
<B
CLASS="COMMAND"
>make</B
> has been issued instead. But only a little.</P
></BLOCKQUOTE
></DIV
><P
>(It has been pointed out to me that loading these features as modules would be 
more logical, since they are not required until <B
CLASS="COMMAND"
>startx</B
> 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.x kernel and it was 
suggested to me that loading statically was a safer and stabler way to go. Now 
that 2.4.x is officially out there, perhaps modules will be more sensible. 
I'll let you know how it goes. (Thanks to Heron Ordonez for this.))</P
><P
>When all is over and you feel calm enough, do this;

<P
></P
><TABLE
BORDER="0"
><TBODY
><TR
><TD
><TT
CLASS="USERINPUT"
><B
>make dep</B
></TT
></TD
></TR
><TR
><TD
><TT
CLASS="USERINPUT"
><B
>make clean</B
></TT
> (not violently necessary but does no 
harm)</TD
></TR
><TR
><TD
><TT
CLASS="USERINPUT"
><B
>make bzImage</B
></TT
> (takes a while, this bit)</TD
></TR
><TR
><TD
><TT
CLASS="USERINPUT"
><B
>make modules</B
></TT
></TD
></TR
><TR
><TD
><TT
CLASS="USERINPUT"
><B
>make modules_install</B
></TT
></TD
></TR
></TBODY
></TABLE
><P
></P
></P
><P
>Now have a look at the <TT
CLASS="FILENAME"
>/boot</TT
> directory. 
You will probably see that <TT
CLASS="FILENAME"
>System.map</TT
> is 
a symbolic link to <TT
CLASS="FILENAME"
>System.map-[your_kernel_version]</TT
> and <TT
CLASS="FILENAME"
>vmlinuz</TT
> is a symbolic link to <TT
CLASS="FILENAME"
>vmlinuz-[your_kernel_version]</TT
>. This arrangement is 
true for many distros, but not all. I think some store <TT
CLASS="FILENAME"
>vmlinuz</TT
> in <TT
CLASS="FILENAME"
>/</TT
>, 
while <TT
CLASS="FILENAME"
>System.map</TT
> resides in <TT
CLASS="FILENAME"
>/boot</TT
>. Whatever the case is, use your brain and 
apply these instructions accordingly. So, basically you need to remove the 
symbolic links like so:

<P
></P
><TABLE
BORDER="0"
><TBODY
><TR
><TD
><TT
CLASS="USERINPUT"
><B
>rm System.map</B
></TT
></TD
></TR
><TR
><TD
><TT
CLASS="USERINPUT"
><B
>rm vmlinuz</B
></TT
></TD
></TR
></TBODY
></TABLE
><P
></P
></P
><P
>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):

<P
></P
><TABLE
BORDER="0"
><TBODY
><TR
><TD
><TT
CLASS="USERINPUT"
><B
>cp /usr/src/kernels/linux/arch/i386/boot/bzImage 
/boot/vmlinuz-2.4.x</B
></TT
></TD
></TR
><TR
><TD
><TT
CLASS="USERINPUT"
><B
>ln -s /boot/vmlinuz-2.4.x 
/boot/vmlinuz</B
></TT
></TD
></TR
><TR
><TD
><TT
CLASS="USERINPUT"
><B
>cp /usr/src/kernels/linux/System.map 
/boot/System.map-2.4.x</B
></TT
></TD
></TR
><TR
><TD
><TT
CLASS="USERINPUT"
><B
>ln -s /boot/System.map-2.4.x 
/boot/System.map</B
></TT
></TD
></TR
></TBODY
></TABLE
><P
></P
></P
><DIV
CLASS="TIP"
><BLOCKQUOTE
CLASS="TIP"
><P
><B
>Tip: </B
>You don't need to use absolute pathnames if you are in <TT
CLASS="FILENAME"
>/boot</TT
>. 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 <TT
CLASS="FILENAME"
>vmlinuz</TT
> 
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 <TT
CLASS="FILENAME"
>/etc/lilo.conf</TT
>. 
It's up to you.</P
></BLOCKQUOTE
></DIV
><P
>Now you need to edit <TT
CLASS="FILENAME"
>/etc/lilo.conf</TT
>. 
This is achieved thusly:

<P
></P
><TABLE
BORDER="0"
><TBODY
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>image=/boot/vmlinuz</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>label=[what-ever-you-want-that-is-relevant-easy-to-type-and-remember]</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>read-only</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>root=/dev/hda[n]</TT
></TD
></TR
></TBODY
></TABLE
><P
></P
></P
><P
>After editing <TT
CLASS="FILENAME"
>lilo.conf</TT
> you must do this:</P
><P
><TT
CLASS="USERINPUT"
><B
>/sbin/lilo</B
></TT
></P
><P
>so that the crisp, shiny, new linux kernel be made known to 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:

<P
></P
><TABLE
BORDER="0"
><TBODY
><TR
><TD
><TT
CLASS="USERINPUT"
><B
>cd /dev</B
></TT
></TD
></TR
><TR
><TD
><TT
CLASS="USERINPUT"
><B
>mknod agpgart c 10 175</B
></TT
></TD
></TR
></TBODY
></TABLE
><P
></P
></P
><P
>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. Sorry about that.</P
><P
>That was the end of this stage.</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN192"
>2.3. Nimbly tweak XF86Config</A
></H2
><P
>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 
<TT
CLASS="USERINPUT"
><B
>man XF86Config</B
></TT
> at the command prompt). First of all I 
recommend running the in-no-way-user-friendly  <B
CLASS="COMMAND"
>xf86config</B
> 
(<EM
>observe case!</EM
>) to genertate a base <TT
CLASS="FILENAME"
>XF86Config</TT
> file as the other tools seem to produce 
<TT
CLASS="FILENAME"
>XF86Config</TT
> files which are in my 
experience incompatible with X4.x. When you run through the questions 
<B
CLASS="COMMAND"
>xf86config</B
> 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 <TT
CLASS="FILENAME"
>/etc/X11/XF86Config</TT
>.</P
><P
> So, finally, the all important addition is:

<P
></P
><TABLE
BORDER="0"
><TBODY
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>Section "Device"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   Identifier  "i810"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   Driver   "i810"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   VideoRam	"4096"</TT
></TD
></TR
></TBODY
></TABLE
><P
></P
></P
><P
>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 <TT
CLASS="FILENAME"
>XF86Config</TT
> file as an example, and hopefully to 
make a little clearer what I mean:

<P
></P
><TABLE
BORDER="0"
><TBODY
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>Section "Device"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   Identifier  "i810"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   Driver   "i810"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   VideoRam	"4096"</TT
></TD
></TR
></TBODY
></TABLE
><P
></P
></P
><P
><P
></P
><TABLE
BORDER="0"
><TBODY
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>Section "Screen"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   Identifier  "Screen 1"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   Device   "i810"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   Monitor	"Highscreen 
17inch"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   DefaultColorDepth 24</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   SubSection "Display"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>      Depth        8</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>      Modes        "1024x768"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   EndSubSection</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   SubSection "Display"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>      Depth        15</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>      Modes        "1024x768"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   EndSubSection</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   SubSection "Display"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>      Depth        16</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>      Modes        "1024x768"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   EndSubSection</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   SubSection "Display"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>      Depth        24</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>      Modes        "1024x768"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   EndSubSection</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   SubSection "Display"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>      Depth        32</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>      Modes        "1024x768"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   EndSubSection</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>EndSection</TT
></TD
></TR
></TBODY
></TABLE
><P
></P
></P
><DIV
CLASS="WARNING"
><P
></P
><TABLE
CLASS="WARNING"
BORDER="1"
WIDTH="100%"
><TR
><TD
ALIGN="CENTER"
><B
>Warning</B
></TD
></TR
><TR
><TD
ALIGN="LEFT"
><P
>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.</P
></TD
></TR
></TABLE
></DIV
><P
>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 <TT
CLASS="FILENAME"
>XF86Config</TT
> 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.</P
><P
>That should do it. Now save <TT
CLASS="FILENAME"
>XF86Config</TT
> 
and run:</P
><P
><TT
CLASS="USERINPUT"
><B
>startx</B
></TT
></P
><P
>It should work. It did for me. You will be happy. If not contact me at 
<TT
CLASS="EMAIL"
>&#60;<A
HREF="mailto:trussl@hotmail.com"
>trussl@hotmail.com</A
>&#62;</TT
> and I will endeavour to help you.</P
><DIV
CLASS="NOTE"
><BLOCKQUOTE
CLASS="NOTE"
><P
><B
>Note: </B
>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 <TT
CLASS="FILENAME"
>XF86Config</TT
> file:

<P
></P
><TABLE
BORDER="0"
><TBODY
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
># This loads the DBE extension 
module</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   Load "dbe"  # Double buffer 
extension</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
># This loads the miscellaneous extensions module, and 
disables </TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
># initialisation of the XFree86-DGA extension within 
that module.</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   SubSection "extmod"</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>    Option "omit xfree86-dga" # don't initialise the 
DGA extension</TT
></TD
></TR
><TR
><TD
><TT
CLASS="COMPUTEROUTPUT"
>   EndSubSection</TT
></TD
></TR
></TBODY
></TABLE
><P
></P
></P
><P
>So if X reports errors about a "shape extender" or "shape extension", you may 
well find that your <TT
CLASS="FILENAME"
>XF86Config</TT
> file is 
missing the above listed stanza.</P
></BLOCKQUOTE
></DIV
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="x21.html"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="x308.html"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Introduction</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Thank you</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>