home *** CD-ROM | disk | FTP | other *** search
/ PC World 1999 August / PCWorld_1999-08_cd.bin / doc / HOWTO / XFree86-HOWTO < prev    next >
Text File  |  1999-05-17  |  28KB  |  925 lines

  1.   The Linux XFree86 HOWTO
  2.   by Eric S. Raymond
  3.   v5.12, 12 May 1999
  4.  
  5.   This document describes how to obtain, install, and configure version
  6.   3.3 of the XFree86 version of the X Window System (X11R6) for Linux
  7.   systems. It is a step-by-step guide to configuring XFree86 on your
  8.   system.
  9.   ______________________________________________________________________
  10.  
  11.   Table of Contents
  12.  
  13.  
  14.   1. Introduction
  15.  
  16.      1.1 Other sources of information
  17.      1.2 New versions of this document
  18.      1.3 Feedback and Corrections
  19.  
  20.   2. Hardware requirements
  21.  
  22.   3. Installing XFree86
  23.  
  24.   4. Configuring XFree86
  25.  
  26.      4.1 Normal Configuration
  27.      4.2 Troubleshooting
  28.      4.3 Custom Configuration
  29.      4.4 Using 16-bit Color
  30.  
  31.   5. Running XFree86
  32.  
  33.      5.1 Terms of Use
  34.      5.2 Acknowledgements
  35.  
  36.   6. Translations
  37.  
  38.  
  39.  
  40.   ______________________________________________________________________
  41.  
  42.   1.  Introduction
  43.  
  44.   The X Window System is a large and powerful (some might say
  45.   excessively large and overly complex) graphics environment for UNIX
  46.   systems. The original X Window System code was developed at MIT;
  47.   commercial vendors have since made X the industry standard for UNIX
  48.   platforms. Virtually every UNIX workstation in the world runs some
  49.   variant of the X Window system.
  50.  
  51.   A freely redistributable port of the MIT X Window System version 11,
  52.   release 6 (X11R6) for 80386/80486/Pentium UNIX systems has been
  53.   developed by a team of programmers originally headed by David
  54.   Wexelblat <dwex@XFree86.org>. The release, known as XFree86, is
  55.   available for System V/386, 386BSD, and other x86 UNIX
  56.   implementations, including Linux. It includes all of the required
  57.   binaries, support files, libraries, and tools.
  58.  
  59.   Complete information on XFree86 is available at the XFree86 web site,
  60.   <http://www.XFree86.org>.
  61.  
  62.   In this document, we'll give a step-by-step description of how to
  63.   install and configure XFree86 for Linux, but you will have to fill in
  64.   some of the details yourself by reading the documentation released
  65.   with XFree86 itself. (This documentation is discussed below.)
  66.   However, using and customizing the X Window System is far beyond the
  67.   scope of this document---for this purpose you should obtain one of the
  68.   many good books on using the X Window System.
  69.  
  70.  
  71.   1.1.  Other sources of information
  72.  
  73.   If you have never heard of Linux before, there are several sources of
  74.   basic information about the system. The best place to find these is at
  75.   the Linux Documentation Project home page at
  76.   <http://metalab.unc.edu/LDP>.  You can find the latest, up-to-date
  77.   version of this document there, as
  78.   <http://metalab.unc.edu/LDP/HOWTO/XFree86-HOWTO.html>
  79.  
  80.  
  81.   1.2.  New versions of this document
  82.  
  83.   New versions of the Linux XFree86 HOWTO will be periodically posted to
  84.   comp.os.linux.help and  and news.answers <news:news.answers>.  They
  85.   will also be uploaded to various Linux WWW and FTP sites, including
  86.   the LDP home page.
  87.  
  88.   You can always view the latest version of this on the World Wide Web
  89.   via the URL  <http://metalab.unc.edu/LDP/HOWTO/XFree86-HOWTO.html>.
  90.  
  91.  
  92.   1.3.  Feedback and Corrections
  93.  
  94.   If you have questions or comments about this document, please feel
  95.   free to mail Eric S. Raymond, at esr@thyrsus.com. I welcome any
  96.   suggestions or criticisms. If you find a mistake with this document,
  97.   please let me know so I can correct it in the next version. Thanks.
  98.  
  99.   Please do not mail me questions about how to make your video card and
  100.   monitor work with X.  This HOWTO is intended to be a rapid, painless
  101.   guide to normal installation using the new interactive configurator.
  102.   If you run into problems, browse the XFree86 Video Timings HOWTO,
  103.   <http://metalab.unc.edu/LDP/HOWTO/XFree86-Video-Timings-HOWTO.html>.
  104.   (This is the up-to-date HTML version of XFree86's `Videomodes.doc'
  105.   file.)  That document tells everything I know about configuration
  106.   troubleshooting.  If it can't help you, I can't either.
  107.  
  108.  
  109.   2.  Hardware requirements
  110.  
  111.  
  112.   XFree86 3.3.3 presently supports the following chipsets: The
  113.   documentation included with your video adaptor should specify the
  114.   chipset used. If you are in the market for a new video card, or are
  115.   buying a new machine that comes with a video card, have the vendor
  116.   find out exactly what the make, model, and chipset of the video card
  117.   is. This may require the vendor to call technical support on your
  118.   behalf; in general vendors will be happy to do this. Many PC hardware
  119.   vendors will state that the video card is a ``standard SVGA card''
  120.   which ``should work'' on your system. Explain that your software
  121.   (mention Linux and XFree86!)  does not support all video chipsets and
  122.   that you must have detailed information.
  123.  
  124.   You can also determine your videocard chipset by running the
  125.   SuperProbe program included with the XFree86 distribution.  This is
  126.   covered in more detail below.
  127.  
  128.  
  129.      Ark Logic
  130.         ARK1000PV, ARK1000VL, ARK2000PV, ARK2000MT
  131.  
  132.  
  133.      Alliance
  134.         AP6422, AT24
  135.  
  136.  
  137.      ATI
  138.         18800, 18800-1, 28800-2, 28800-4, 28800-5, 28800-6, 68800-3,
  139.         68800-6, 68800AX, 68800LX, 88800GX-C, 88800GX-D, 88800GX-E,
  140.         88800GX-F, 88800CX, 264CT, 264ET, 264VT, 264GT, 264VT-B, 264VT3,
  141.         264GT-B, 264GT3 (this list includes the Mach8, Mach32, Mach64,
  142.         3D Rage, 3D Rage II and 3D Rage Pro)
  143.  
  144.  
  145.      Avance Logic
  146.         ALG2101, ALG2228, ALG2301, ALG2302, ALG2308, ALG2401
  147.  
  148.  
  149.      Chips & Technologies
  150.         65520, 65525, 65530, 65535, 65540, 65545, 65546, 65548, 65550,
  151.         65554, 65555, 68554, 69000, 64200, 64300
  152.  
  153.  
  154.      Cirrus Logic
  155.         CLGD5420, CLGD5422, CLGD5424, CLGD5426, CLGD5428, CLGD5429,
  156.         CLGD5430, CLGD5434, CLGD5436, CLGD5440, CLGD5446, CLGD5462,
  157.         CLGD5464, CLGD5465, CLGD5480, CLGD6205, CLGD6215, CLGD6225,
  158.         CLGD6235, CLGD6410, CLGD6412, CLGD6420, CLGD6440, CLGD7541(*),
  159.         CLGD7543(*), CLGD7548(*), CLGD7555(*)
  160.  
  161.  
  162.      Cyrix
  163.         MediaGX, MediaGXm
  164.  
  165.  
  166.      Compaq
  167.         AVGA
  168.  
  169.  
  170.      Digital Equipment Corporation
  171.         TGA
  172.  
  173.  
  174.      Epson
  175.         SPC8110
  176.  
  177.  
  178.      Genoa
  179.         GVGA
  180.  
  181.  
  182.      IBM
  183.         8514/A (and true clones), XGA-2
  184.  
  185.  
  186.      IIT
  187.         AGX-014, AGX-015, AGX-016
  188.  
  189.  
  190.      Matrox
  191.         MGA2064W (Millennium), MGA1064SG (Mystique and Mystique 220),
  192.         MGA2164W (Millennium II PCI and AGP), G100, G200
  193.  
  194.  
  195.      MX MX68000(*), MX680010(*)
  196.  
  197.  
  198.  
  199.      NCR
  200.         77C22(*), 77C22E(*), 77C22E+(*)
  201.  
  202.  
  203.      NeoMagic
  204.         2200, 2160, 2097, 2093, 2090, 2070
  205.  
  206.  
  207.      Number Nine
  208.         I128 (series I and II), Revolution 3D (T2R)
  209.  
  210.  
  211.      NVidia/SGS Thomson
  212.         NV1, STG2000, RIVA128, Riva TNT
  213.  
  214.  
  215.      OAK
  216.         OTI067, OTI077, OTI087
  217.  
  218.  
  219.      RealTek
  220.         RTG3106(*)
  221.  
  222.  
  223.      Rendition
  224.         V1000, V2x00
  225.  
  226.  
  227.      S3 86C911, 86C924, 86C801, 86C805, 86C805i, 86C928, 86C864, 86C964,
  228.         86C732, 86C764, 86C765, 86C767, 86C775, 86C785, 86C868, 86C968,
  229.         86C325, 86C357, 86C375, 86C375, 86C385, 86C988, 86CM65, 86C260
  230.  
  231.  
  232.      SiS
  233.         86C201, 86C202, 86C205, 86C215, 86C225, 5597, 5598, 6326
  234.  
  235.  
  236.      3DLabs
  237.         GLINT 500TX, GLINT MX, Permedia, Permedia 2, Permedia 2v
  238.  
  239.  
  240.      Tseng
  241.         ET3000, ET4000AX, ET4000/W32, ET4000/W32i, ET4000/W32p, ET6000,
  242.         ET6100
  243.  
  244.  
  245.      Trident
  246.         TVGA8800CS, TVGA8900B, TVGA8900C, TVGA8900CL, TVGA9000,
  247.         TVGA9000i, TVGA9100B, TVGA9200CXR, Cyber9320(*), TVGA9400CXi,
  248.         TVGA9420, TGUI9420DGi, TGUI9430DGi, TGUI9440AGi, TGUI9660XGi,
  249.         TGUI9680, ProVidia 9682, ProVidia 9685(*), Cyber 9382, Cyber
  250.         9385, Cyber 9388, 3DImage975, 3DImage985, Cyber 9397, Cyber 9520
  251.  
  252.  
  253.      Video 7/Headland Technologies
  254.         HT216-32(*)
  255.  
  256.  
  257.      Weitek
  258.         P9000, P9100
  259.  
  260.  
  261.      Western Digital/Paradise
  262.         PVGA1
  263.  
  264.  
  265.      Western Digital
  266.         WD90C00, WD90C10, WD90C11, WD90C24, WD90C24A, WD90C30, WD90C31,
  267.         WD90C33
  268.  
  269.   (*) Note, chips marked in this way have either limited support or the
  270.   drivers for them are not actively maintained.
  271.  
  272.   All of the above are supported in both 256 color, and some are
  273.   supported in mono and 16 color modes, and some are supported an higher
  274.   color depths.
  275.  
  276.   The monochrome server also supports generic VGA cards, using 64k of
  277.   video memory in a single bank, the Hercules monochrome card, the
  278.   Hyundai HGC1280, Sigma LaserView, Visa and Apollo monochrome cards.
  279.  
  280.   The VGA16 server supports memory banking with the ET4000, Trident,
  281.   ATI, NCR, OAK and Cirrus 6420 chipsets allowing virtual display sizes
  282.   up to about 1600x1200 (with 1MB of video memory).  For other chipsets
  283.   the display size is limited to approximately 800x600.
  284.  
  285.   You can find an up-to-date list of supported cards at
  286.   http://www.xfree86.org/3.3.3/README3.html
  287.   <http://www.xfree86.org/3.3.3/README3.html>.
  288.  
  289.   Video cards using these chipsets are supported on all bus types,
  290.   including VLB and PCI.
  291.  
  292.   One problem faced by the XFree86 developers is that some video card
  293.   manufacturers use non-standard mechanisms for determining clock
  294.   frequencies used to drive the card. Some of these manufacturers either
  295.   don't release specifications describing how to program the card, or
  296.   they require developers to sign a non-disclosure statement to obtain
  297.   the information. This would obviously restrict the free distribution
  298.   of the XFree86 software, something that the XFree86 development team
  299.   is not willing to do. For a long time, this has been a problem with
  300.   certain video cards manufactured by Diamond, but as of release 3.1 of
  301.   XFree86, Diamond has started to work with the development team to
  302.   release free drivers for these cards.
  303.  
  304.   The suggested setup for XFree86 under Linux is a 486 or better with at
  305.   least 8 megabytes of RAM, and a video card with a chipset listed
  306.   above. For optimal performance, we suggest using an accelerated card,
  307.   such as an S3-chipset card. You should check the documentation for
  308.   XFree86 and verify that your particular card is supported before
  309.   taking the plunge and purchasing expensive hardware.
  310.  
  311.   As a side note, the personal Linux system of Matt Welsh (this FAQ's
  312.   originator) was a 486DX2-66, 20 megabytes of RAM, equipped with a VLB
  313.   S3-864 chipset card with 2 megabytes of DRAM.  He ran X benchmarks on
  314.   this machine as well as on Sun Sparc IPX workstations.  The Linux
  315.   system was roughly 7 times faster than the Sparc IPX (for the curious,
  316.   XFree86-3.1 under Linux, with this video card, runs at around 171,000
  317.   xstones; the Sparc IPX at around 24,000). In general, XFree86 on a
  318.   Linux system with an accelerated SVGA card will give you much greater
  319.   performance than that found on commercial UNIX workstations (which
  320.   usually employ simple framebuffers for graphics).
  321.  
  322.   Your machine will need at least 4 megabytes of physical RAM, and 16
  323.   megabytes of virtual RAM (for example, 8 megs physical and 8 megs
  324.   swap).  Remember that the more physical RAM that you have, the less
  325.   that the system will swap to and from disk when memory is low. Because
  326.   swapping is inherently slow (disks are very slow compared to memory),
  327.   having 8 megabytes of RAM or more is necessary to run XFree86
  328.   comfortably.  16 is better.  A system with 4 megabytes of physical RAM
  329.   could run much (up to 10 times) more slowly than one with 8 megs or
  330.   more.
  331.   3.  Installing XFree86
  332.  
  333.   It's quite likely that you obtained XFree86 as part of a Linux
  334.   distribution, in which case downloading the software separately is not
  335.   necessary.  Or you may be able to get RPM binary packages built for
  336.   your machine, in which case you can just install those using rpm(1).
  337.   In either case you can skip this the rest of this section.
  338.  
  339.   The Linux binary distribution of XFree86 can be found on a number of
  340.   FTP sites.  On the XFree86 site it's under
  341.   <ftp://ftp.xfree86.org/pub/XFree86/current/binaries/>.
  342.  
  343.   Before doing anything else, download and run the `preinst.sh' shell
  344.   script first.  This may tell you about prerequisites you'll need to
  345.   have in place before contibuing your installation.
  346.  
  347.   If you are downloading XFree86 directly, this table lists the files in
  348.   the XFree86-3.3 distribution.
  349.  
  350.   One of the following servers is required:
  351.  
  352.      X8514.tgz
  353.         Server for 8514-based boards.
  354.  
  355.  
  356.      XAGX.tgz
  357.         Server for AGX-based boards.
  358.  
  359.  
  360.      XI128.tgz
  361.         Server for the Number Nine Imagine 128.
  362.  
  363.  
  364.      XMach32.tgz
  365.         Server for Mach32-based boards.
  366.  
  367.  
  368.      XMach64.tgz
  369.         Server for Mach64-based boards.
  370.  
  371.  
  372.      XMach8.tgz
  373.         Server for Mach8-based boards.
  374.  
  375.  
  376.      XMono.tgz
  377.         Server for monochrome video modes.
  378.  
  379.  
  380.      XP9K.tgz
  381.         Server for P9000-based boards.
  382.  
  383.  
  384.      XS3.tgz
  385.         Server for S3-based boards.
  386.  
  387.  
  388.      XS3V.tgz
  389.         Server for the S3 ViRGE and ViRGE/VX (considered beta)
  390.  
  391.  
  392.      XSVGA.tgz
  393.         Server for Super VGA-based boards.
  394.  
  395.  
  396.  
  397.      XW32.tgz
  398.         Server for ET4000/W32-based boards.
  399.  
  400.  
  401.   If you don't know which one to take, take the VGA16 server, XVG16.tgz.
  402.   You want to download this one anyway, because you'll need it to run
  403.   the auto-configuration utility in the next step.
  404.  
  405.   All of the following files are required:
  406.  
  407.      preinst.sh
  408.         Pre-installation script
  409.  
  410.  
  411.      postinst.sh
  412.         Post-installation script
  413.  
  414.  
  415.      Xbin.tgz
  416.         The rest of the X11R6 binaries.
  417.  
  418.  
  419.      Xcfg.tgz
  420.         Config files for xdm, xinit and fs.
  421.  
  422.  
  423.      Xdoc.tgz
  424.         Documentation.
  425.  
  426.  
  427.      Xman.tgz
  428.         Manual pages.
  429.  
  430.  
  431.      Xfnts.tgz
  432.         75dpi, misc and PEX fonts
  433.  
  434.  
  435.      Xlib.tgz
  436.         Shared X libraries and support files.
  437.  
  438.  
  439.      Xset.tgz
  440.         XF86Setup utility.
  441.  
  442.  
  443.      XVG16.tgz
  444.         Server for VGA/EGA-based boards.
  445.  
  446.  
  447.   The following files are optional:
  448.  
  449.      Xf100.tgz
  450.         100dpi fonts
  451.  
  452.  
  453.      Xfcyr.tgz
  454.         Cyrillic fonts
  455.  
  456.  
  457.      Xfnon.tgz
  458.         Other fonts (Chinese, Japanese, Korean, Hebrew)
  459.  
  460.  
  461.      Xfscl.tgz
  462.         Scalable fonts (Speedo and Type1)
  463.      Xfsrv.tgz
  464.         Font server and config files
  465.  
  466.  
  467.      Xprog.tgz
  468.         X header files, config files and compile-time libs
  469.  
  470.  
  471.      Xlkit.tgz
  472.         X server LinkKit
  473.  
  474.  
  475.      Xlk98.tgz
  476.         PC98 X server LinkKit
  477.  
  478.  
  479.      Xnest.tgz
  480.         Nested X server
  481.  
  482.  
  483.      Xprt.tgz
  484.         X print server
  485.  
  486.  
  487.      Xvfb.tgz
  488.         Virtual framebuffer X server
  489.  
  490.  
  491.      Xps.tgz
  492.         PostScript version of the documentation
  493.  
  494.  
  495.      Xhtml.tgz
  496.         HTML version of the documentation
  497.  
  498.  
  499.   The XFree86 directory should contain release notes for the current
  500.   version in RELNOTES.  Consult those for installation details
  501.  
  502.   All that is required to install XFree86 is to obtain the above files,
  503.   create the directory /usr/X11R6 (as root), and unpack the files from
  504.   /usr/X11R6 with a command such as:
  505.  
  506.  
  507.        gzip -dc Xbin.tgz | tar xfB -
  508.  
  509.  
  510.  
  511.  
  512.   Remember that these tar files are packed relative to /usr/X11R6, so
  513.   it's important to unpack the files there.
  514.  
  515.   You need to make sure that /usr/X11R6/bin is on your path.  This can
  516.   be done by editing your system default /etc/profile or /etc/csh.login
  517.   (based on the shell that you, or other users on your system, use). Or
  518.   you can simply add the directory to your personal path by modifying
  519.   .bashrc or .cshrc, based on your shell.
  520.  
  521.   You also need to make sure that /usr/X11R6/lib can be located by
  522.   ld.so, the runtime linker. To do this, add the line
  523.  
  524.  
  525.        /usr/X11R6/lib
  526.  
  527.  
  528.  
  529.   to the file /etc/ld.so.conf, and run /sbin/ldconfig, as root.
  530.  
  531.  
  532.   4.  Configuring XFree86
  533.  
  534.  
  535.   4.1.  Normal Configuration
  536.  
  537.   Configuring XFree86 to use your mouse, keyboard, monitor, and video
  538.   card correctly used to be something of a black art, requiring
  539.   extensive hand-hacking of a complex configuration file.  No more; the
  540.   3.2/3.3 release made the process nearly trivial.  All you do is fire
  541.   up the program XF86Setup.
  542.  
  543.   This program depends on the fact that all new PC hardware these days
  544.   ships with EGA/VGA capable monitors.  It invokes the VGA16 server and
  545.   uses it to bring up X in a lowest-common-denominator 640x480 mode.
  546.   Then it runs an interactive program that walks you through a series of
  547.   five configuration panels -- mouse, keyboard, (video) card, monitor,
  548.   and `other' (miscellaneous server options). The whole process is quite
  549.   painless.
  550.  
  551.   (If you're running Red Hat Linux, you may see a different program
  552.   called xf86config.  This works fairly similarly to XF86Setup but does
  553.   not itself use an X interface and the VGA16 server.)
  554.  
  555.   One minor point to keep in mind is that, if you're like most people
  556.   using a current PC, your keyboard is actually what XF86Setup calls
  557.   `Generic 102-key PC (intl)' rather than the default `Generic 101-key
  558.   PC'.  If you pick the default (101) the key cluster on the extreme
  559.   right of your keyboard (numeric keypad and friends) may stop working.
  560.  
  561.   If you're not sure of your monitor type, you can try the listed ones
  562.   in succession.  Work your way from top down (upper choices involve
  563.   lower dot-clock speeds and are less demanding on the hardware).  Back
  564.   off if you get hash or a seriously distorted picture. Minor
  565.   distortions (picture slightly too large, slightly too small, or
  566.   slightly off-center) are no problem; you'll get a chance to correct
  567.   those immediately by fine-tuning the mode.
  568.  
  569.   And, when the program brings up xvidtune to allow you to tweak your
  570.   video mode, don't let the initial warning box make you nervous.
  571.   Modern multisync monitors (unlike their fixed-frequency predecessors)
  572.   are not easy to damage this way.
  573.  
  574.   XF86Config may assume that your mouse device is /dev/mouse.  If you
  575.   find this doesn't work, you may need to link /dev/mouse to whatever
  576.   /dev/ca[01] the mouse is on.   If you find that XFree86 gives you a
  577.   "mouse busy" error when gpm is running, you may need to link to
  578.   /dev/ttyS[01] instead.
  579.  
  580.   The configuration process operates by selecting a server corresponding
  581.   to to the general type of your video card (such as XF86_VGA16,
  582.   XF86_Mach64, or XF86_S3) and configuring an XF86Config that the server
  583.   will read on startup to get specific parameters for your installation.
  584.   The location of XF86Config varies depending on your OS, but one place
  585.   to look for it is /etc/X11.
  586.  
  587.   On older versions of XFree86, XF86Setup links the `X' command directly
  588.   to the chosen server.  In recent versions, `X' is instead linked to a
  589.   set-user-id wrapper program called Xwrapper.  The idea is that all the
  590.   setuid root stuff gets localized in Xwrapper so the server doesn't
  591.   have to run setuid root.
  592.  
  593.  
  594.  
  595.   4.2.  Troubleshooting
  596.  
  597.  
  598.   Occasionally, something will not be quite right when you initially
  599.   fire up the X server. This is almost always caused by a problem in
  600.   your configuration file. Usually, the monitor timing values are off,
  601.   or the video card dot clocks set incorrectly. Minor problems can be
  602.   fixed with xvidtune; a really garbled screen usually means you need to
  603.   go back into XF86Setup and choose a less capable monitor type.
  604.  
  605.   If your display seems to roll, or the edges are fuzzy, this is a clear
  606.   indication that the monitor timing values or dot clocks are wrong.
  607.   Also be sure that you are correctly specifying your video card
  608.   chipset, as well as other options for the Device section of
  609.   XF86Config. Be absolutely certain that you are using the right X
  610.   server and that /usr/X11R6/bin/X is a symbolic link to this server.
  611.  
  612.   If all else fails, try to start X ``bare''; that is, use a command
  613.   such as:
  614.  
  615.  
  616.        X > /tmp/x.out 2>&1
  617.  
  618.  
  619.  
  620.  
  621.   You can then kill the X server (using the ctrl-alt-backspace key com¡
  622.   bination) and examine the contents of /tmp/x.out. The X server will
  623.   report any warnings or errors---for example, if your video card
  624.   doesn't have a dot clock corresponding to a mode supported by your
  625.   monitor.
  626.  
  627.   Remember that you can use ctrl-alt-numeric + and ctrl-alt-numeric - to
  628.   switch between the video modes listed on the Modes line of the Screen
  629.   section of XF86Config. If the highest resolution mode doesn't look
  630.   right, try switching to lower resolutions. This will let you know, at
  631.   least, that those parts of your X configuration are working correctly.
  632.  
  633.   Also, check the vertical and horizontal size/hold knobs on your
  634.   monitor.  In many cases it is necessary to adjust these when starting
  635.   up X. For example, if the display seems to be shifted slightly to one
  636.   side, you can usually correct this using the monitor controls.
  637.  
  638.   The USENET newsgroup comp.windows.x.i386unix is devoted to discussions
  639.   about XFree86, as is comp.os.linux.x.  It might be a good idea to
  640.   watch that newsgroup for postings relating to your video
  641.   configuration---you might run across someone with the same problems as
  642.   your own.
  643.  
  644.  
  645.   4.3.  Custom Configuration
  646.  
  647.   You will need to hand-hack your X configuration to get optimal
  648.   performance if your monitor can support 1600x1200 -- the highest
  649.   canned resolution XF86Setup supports is 1280x1024.
  650.  
  651.   If you want to hand-hack your video configuration for this or any
  652.   other reason, go see the LDP's XFree86 Video Timings HOWTO,
  653.   <http://metalab.unc.edu/LDP/HOWTO/XFree86-Video-Timings-HOWTO.html>.
  654.   (This is the up-to-date HTML version of XFree86's `Videomodes.doc'
  655.   file.)
  656.  
  657.  
  658.  
  659.  
  660.  
  661.   4.4.  Using 16-bit Color
  662.  
  663.  
  664.   By default, X uses 8-bit color depth giving 256 colors. To circumvent
  665.   this restriction, many applications allocate their own colormaps,
  666.   resulting in sudden color jumps when the cursor moves between two
  667.   windows each having a color map of its own. The Arena WWW browser does
  668.   it this way.
  669.  
  670.   If you want to use advanced graphic applications 256 colors may be not
  671.   sufficient.  You may need to go to 16-bit color depth (65,536 colors).
  672.   But beware, not all applications will work with 16bit colors.
  673.  
  674.   You can use 16bit color depth with 65K different colors simply by
  675.   starting X with
  676.  
  677.  
  678.   ______________________________________________________________________
  679.       startx -- -bpp 16
  680.   ______________________________________________________________________
  681.  
  682.  
  683.  
  684.   or putting
  685.  
  686.  
  687.   ______________________________________________________________________
  688.       exec X :0 -bpp 16
  689.   ______________________________________________________________________
  690.  
  691.  
  692.  
  693.   into your .xserverrc file.  In order for this to work, however, you
  694.   need to have a
  695.  
  696.   ______________________________________________________________________
  697.   screen
  698.   ______________________________________________________________________
  699.  
  700.  
  701.  
  702.  
  703.   ______________________________________________________________________
  704.       DefaultColorDepth 16
  705.   ______________________________________________________________________
  706.  
  707.  
  708.  
  709.   If you're using xdm, you may need to change the Xservers file, which
  710.   is probably located in /etc/X11/xdm/.  A typical configuration has
  711.   just one uncommented line, looking something like
  712.  
  713.  
  714.   ______________________________________________________________________
  715.         :0 local /usr/X11R6/bin/X
  716.   ______________________________________________________________________
  717.  
  718.  
  719.  
  720.   Add
  721.  
  722.   ______________________________________________________________________
  723.   -bpp 16
  724.   ______________________________________________________________________
  725.  
  726.  
  727.   ______________________________________________________________________
  728.         :0 local /usr/X11R6/bin/X -bpp 16
  729.   ______________________________________________________________________
  730.  
  731.  
  732.  
  733.   Also, you'll need to add to the `screen' section of your X
  734.   configuration a Display part with a Depth value of 16.  Generally you
  735.   can just duplicate the 8-bit Display section and change the Depth
  736.   field.
  737.  
  738.   More colors makes your video card transfer more data during the same
  739.   time. If your video card cannot cope, then either the resolution has
  740.   or the refresh rate has to be reduced.  By default, XFree reduces the
  741.   resolution.  If you want to keep the resolution and reduce the refresh
  742.   rate, you must insert a new appropriate Modeline into your XF86Config
  743.   file which defines that resolution with a lower refresh rate. For
  744.   instance replace the old value
  745.  
  746.  
  747.        Modeline "1024x768"  75  1024 1048 1184 1328 768 771 777 806 -hsync -vsync
  748.  
  749.  
  750.  
  751.  
  752.   with
  753.  
  754.  
  755.        Modeline "1024x768"  65  1024 1032 1176 1344 768 771 777 806 -hsync -vsync.
  756.  
  757.  
  758.  
  759.  
  760.   The magic numbers 75 and 65 are the respective clock rates which you
  761.   find reported by X in your .X.err file. Consult the monitors file in
  762.   the XF86 documentation for Modelines suitable to the maximum clock
  763.   rate your video card can deliver under 16bit color depth.
  764.  
  765.  
  766.   5.  Running XFree86
  767.  
  768.   With your XF86Config file configured, you're ready to fire up the X
  769.   server and give it a spin. First, be sure that /usr/X11R6/bin is on
  770.   your path.
  771.  
  772.   The command to start up XFree86 is
  773.  
  774.        startx
  775.  
  776.  
  777.   This is a front-end to xinit (in case you're used to using xinit on
  778.   other UNIX systems).
  779.  
  780.   This command will start the X server and run the commands found in the
  781.   file .xinitrc in your home directory. .xinitrc is just a shell script
  782.   containing X clients to run. If this file does not exist, the system
  783.   default /usr/X11R6/lib/X11/xinit/xinitrc will be used.
  784.  
  785.   A standard .xinitrc file looks like this:
  786.  
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.   #!/bin/sh
  794.  
  795.   xterm -fn 7x13bold -geometry 80x32+10+50 &
  796.   xterm -fn 9x15bold -geometry 80x34+30-10 &
  797.   oclock -geometry 70x70-7+7 &
  798.   xsetroot -solid midnightblue &
  799.  
  800.   exec fvwm2
  801.  
  802.  
  803.  
  804.  
  805.   This script will start up two xterm clients, an oclock, and set the
  806.   root window (background) color to midnightblue.  It will then start up
  807.   fvwm2, the window manager. Note that fvwm2 is executed with the
  808.   shell's exec statement; this causes the xinit process to be replaced
  809.   with fvwm2. Once the fvwm2 process exits, the X server will shut down.
  810.   You can cause fvwm2 to exit by using the root menus: depress mouse
  811.   button 1 on the desktop background---this will display a pop up menu
  812.   which will allow you to Exit Fvwm2.
  813.  
  814.   Be sure that the last command in .xinitrc is started with exec, and
  815.   that it is not placed into the background (no ampersand on the end of
  816.   the line). Otherwise the X server will shut down as soon as it has
  817.   started the clients in the .xinitrc file.
  818.  
  819.   Alternately, you can exit X by pressing ctrl-alt-backspace in
  820.   combination. This will kill the X server directly, exiting the window
  821.   system.
  822.  
  823.   The above is a very, very simple desktop configuration. Many wonderful
  824.   programs and configurations are available with a bit of work on your
  825.   .xinitrc file.
  826.  
  827.   If you are new to the X Window System environment, we strongly suggest
  828.   picking up a book such as The Joy of X: An Overview of the X Window
  829.   System by Niall Mansfield (Addison-Wesley 1993, ISBN 0201-565129).
  830.   Using and configuring X is far too in-depth to cover here. See the man
  831.   pages for xterm, oclock, and fvwm2 for clues on getting started.
  832.  
  833.  
  834.   5.1.  Terms of Use
  835.  
  836.   This document is copyright 1996 by Eric S. Raymond. You may use,
  837.   disseminate, and reproduce it freely, provided you:
  838.  
  839.  
  840.   ╖  Do not omit or alter this copyright notice.
  841.  
  842.   ╖  Do not omit or alter the version number and date.
  843.  
  844.   ╖  Do not omit or alter the document's pointer to the current WWW
  845.      version.
  846.  
  847.   ╖  Clearly mark any condensed or altered versions as such.
  848.  
  849.   These restrictions are intended to protect potential readers from
  850.   stale or mangled versions.  If you think you have a good case for an
  851.   exception, ask me.
  852.  
  853.  
  854.   5.2.  Acknowledgements
  855.  
  856.   This document was originated by Matt Welsh in the dim and backward
  857.   abysm of time.  Thanks, Matt!
  858.  
  859.   6.  Translations
  860.  
  861.  
  862.   ╖  Italian <http://www.pluto.linux.it/ildp/HOWTO/XFree86-HOWTO.html>
  863.  
  864.   ╖  Slovenian <http://www.lugos.si/delo/slo/HOWTO-sl/XFree86-HOWTO-
  865.      sl.html>
  866.  
  867.   ╖  Croatian <http://meta.mioc.hr/XFree86-KAKO.html>
  868.  
  869.   ╖  Dutch <http://www.nl.linux.org/doc/HOWTO/>
  870.  
  871.  
  872.  
  873.  
  874.  
  875.  
  876.  
  877.  
  878.  
  879.  
  880.  
  881.  
  882.  
  883.  
  884.  
  885.  
  886.  
  887.  
  888.  
  889.  
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.  
  897.  
  898.  
  899.  
  900.  
  901.  
  902.  
  903.  
  904.  
  905.  
  906.  
  907.  
  908.  
  909.  
  910.  
  911.  
  912.  
  913.  
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.  
  922.  
  923.  
  924.  
  925.