Dans le fichier XF86Config précédement crée, il manque les informations concernant la carte vidéo. Le serveur X peut tester cette partie, et afficher les paramètres qu'on pourra ensuite intégrer au fichier de configuration. Les fichiers suivants du répertoire /usr/X11R6/lib/X11/doc
contiennent des informations pouvant éviter cette opération :
En premier lieu, il convient de déterminer le circuit vidéo employé par la carte vidéo, avec la commande SuperProbe
:
/usr/X11R6/bin/SuperProbe
Le résultat apparait après quelque secondes :
SuperProbe Version 2.15 (4 August 1997) (c) Copyright 1993,1994 by David Wexelblat <dwex@xfree86.org> This work is derived from the 'vgadoc2.zip' and 'vgadoc3.zip' documentation packages produced by Finn Thoegersen, and released with all appropriate permissions having been obtained. Additional information obtained from 'Programmer's Guide to the EGA and VGA, 2nd ed', by Richard Ferraro, and from manufacturer's data books The author welcomes bug reports and other comments mailed to the electronic mail address above. In particular, reports of chipsets that this program fails to correctly detect are appreciated. Before submitting a report, please make sure that you have the latest version of SuperProbe (see http://www.xfree86.org/FAQ). WARNING - THIS SOFTWARE COULD HANG YOUR MACHINE. READ THE SuperProbe.1 MANUAL PAGE BEFORE RUNNING THIS PROGRAM. INTERRUPT WITHIN FIVE SECONDS TO ABORT! First video: Super-VGA Chipset: S3 ViRGE/DX (PCI Probed) Memory: 2048 Kbytes RAMDAC: Generic 8-bit pseudo-color DAC (with 6-bit wide lookup tables (or in 6-bit mode))
Visiblement, l'exemple précédent montre que la carte vidéo employée ici est une carte S3 ViRGE/DX
, avec 2048 Kbytes de mémoire. Pour savoir sous quel nom le serveur X reconnait ce processeur, taper la commande suivante (la page de manuel associée au serveur peut aussi le mentionner) :
X -showconfig > /tmp/showconfig.txt 2>&1
Le résultat peut être lu dans le fichier /tmp/showconfig.txt
avec n'importe quel éditeur (emacs, vi
...) :
XFree86 Version 3.3.1 / X Window System (protocol Version 11, revision 0, vendor release 6300) Release Date: August 4 1997 If the server is older than 6-12 months, or if your card is newer than the above date, look for a newer version before reporting problems. (see http://www.XFree86.Org/FAQ) Operating System: Linux 2.0.32 i686 [ELF] Configured drivers: SVGA: server for SVGA graphics adaptors (Patchlevel 0): NV1, STG2000, ET4000, ET4000W32, ET4000W32i, ET4000W32i_rev_b, ET4000W32i_rev_c, ET4000W32p, ET4000W32p_rev_a, ET4000W32p_rev_b, ET4000W32p_rev_c, ET4000W32p_rev_d, ET6000, et3000, pvga1, wd90c00, wd90c10, wd90c30, wd90c24, wd90c31, wd90c33, gvga, ati, sis86c201, sis86c202, sis86c205, tvga8200lx, tvga8800cs, tvga8900b, tvga8900c, tvga8900cl, tvga8900d, tvga9000, tvga9000i, tvga9100b, tvga9200cxr, tgui9320lcd, tgui9400cxi, tgui9420, tgui9420dgi, tgui9430dgi, tgui9440agi, tgui96xx, cyber938x, clgd5420, clgd5422, clgd5424, clgd5426, clgd5428, clgd5429, clgd5430, clgd5434, clgd5436, clgd5446, clgd5480, clgd5462, clgd5464, clgd5465, clgd6205, clgd6215, clgd6225, clgd6235, clgd7541, clgd7542, clgd7543, clgd7548, clgd7555, ncr77c22, ncr77c22e, cpq_avga, mga2064w, mga1064sg, mga2164w, oti067, oti077, oti087, oti037c, al2101, ali2228, ali2301, ali2302, ali2308, ali2401, cl6410, cl6412, cl6420, cl6440, video7, ct65520, ct65525, ct65530, ct65535, ct65540, ct65545, ct65546, ct65548, ct65550, ct65554, ct65555, ct68554, ct64200, ct64300, ark1000vl, ark1000pv, ark2000pv, ark2000mt, mx, realtek, AP6422, AT24, s3_virge, generic
Le serveur utilisé sera donc s3_virge
. Le test suivant permet de s'en assurer. Il faut le faire lorsque rien n'est chargé par le système, sinon certaines mesures seront faussées :
X -probeonly > /tmp/probeonly.txt 2>&1
ou, si le shell est csh :
X -probeonly >& /tmp/probeonly.txt
Voici un exemple de contenu de fichier /tmp/probeonly.txt
ainsi obtenu :
XFree86 Version 3.3.1 / X Window System (protocol Version 11, revision 0, vendor release 6300) Release Date: August 4 1997 If the server is older than 6-12 months, or if your card is newer than the above date, look for a newer version before reporting problems. (see http://www.XFree86.Org/FAQ) Operating System: Linux 2.0.32 i686 [ELF] Configured drivers: SVGA: server for SVGA graphics adaptors (Patchlevel 0): NV1, STG2000, ET4000, ET4000W32, ET4000W32i, ET4000W32i_rev_b, ET4000W32i_rev_c, ET4000W32p, ET4000W32p_rev_a, ET4000W32p_rev_b, ET4000W32p_rev_c, ET4000W32p_rev_d, ET6000, et3000, pvga1, wd90c00, wd90c10, wd90c30, wd90c24, wd90c31, wd90c33, gvga, ati, sis86c201, sis86c202, sis86c205, tvga8200lx, tvga8800cs, tvga8900b, tvga8900c, tvga8900cl, tvga8900d, tvga9000, tvga9000i, tvga9100b, tvga9200cxr, tgui9320lcd, tgui9400cxi, tgui9420, tgui9420dgi, tgui9430dgi, tgui9440agi, tgui96xx, cyber938x, clgd5420, clgd5422, clgd5424, clgd5426, clgd5428, clgd5429, clgd5430, clgd5434, clgd5436, clgd5446, clgd5480, clgd5462, clgd5464, clgd5465, clgd6205, clgd6215, clgd6225, clgd6235, clgd7541, clgd7542, clgd7543, clgd7548, clgd7555, ncr77c22, ncr77c22e, cpq_avga, mga2064w, mga1064sg, mga2164w, oti067, oti077, oti087, oti037c, al2101, ali2228, ali2301, ali2302, ali2308, ali2401, cl6410, cl6412, cl6420, cl6440, video7, ct65520, ct65525, ct65530, ct65535, ct65540, ct65545, ct65546, ct65548, ct65550, ct65554, ct65555, ct68554, ct64200, ct64300, ark1000vl, ark1000pv, ark2000pv, ark2000mt, mx, realtek, AP6422, AT24, s3_virge, generic (using VT number 7) XF86Config: /etc/XF86Config (**) stands for supplied, (--) stands for probed/default values (**) XKB: keymap: "xfree86(fr)" (overrides other XKB settings) (**) Mouse: type: Microsoft, device: /dev/mouse, baudrate: 1200, Chorded middle button ********** Plusieurs lignes supprimees... ********** (**) SVGA: Graphics device ID: "DSV3325" (**) SVGA: Monitor ID: "My Monitor" (--) SVGA: PCI: S3 ViRGE/DX or /GX rev 1, Memory @ 0xe0000000 (--) SVGA: S3V: ViRGE/DXGX rev 1, Linear FB @ 0xe0000000 (--) SVGA: Detected S3 ViRGE/DXGX (--) SVGA: using driver for chipset "s3_virge" (--) SVGA: videoram: 2048k (--) SVGA: Ramdac speed: 170 MHz (--) SVGA: Detected current MCLK value of 69.801 MHz (--) SVGA: chipset: s3_virge (--) SVGA: videoram: 2048k ********** Plusieurs lignes supprimees... **********
On peut alors rajouter une ligne Chipset
dans la section Device
du fichier de configuration XF86Config :
Section "Device" Identifier "Generic VGA" Chipset "s3_virge" EndSection
Il reste maintenant à déterminer les fréquences de travail de la carte vidéo (vitesse à laquelle la carte vidéo envoit des pixels au moniteur). L'un des fichiers pré-cités peut donner ces renseignements. Il s'agit d'une ligne du type :
Clocks 25.0 28.0 40.0 0.0 50.0 77.0 36.0 45.0
qu'il ne reste plus qu'à insérer dans le fichier de configuration XF86Config :
Section "Device" Identifier "Generic VGA" Chipset "s3_virge" Clocks 25.0 28.0 40.0 0.0 50.0 77.0 36.0 45.0 EndSection
Il est très important de recopier les valeurs telles quelles, et de ne pas les trier ou d'eliminer les doublons. La commande X -probeonly
peut déterminer ces valeurs, si elles n'apparaissent pas dans le fichier XF86Config (sans quoi le serveur appliquera ces valeurs sans effectuer le test).
Il se peut que la carte vidéo se dote d'un générateur d'horloge programmable. Il faudra alors insérer une ligne ClockChip
, à la place de la ligne Clocks
dans la section Device
du fichier de configuration XF86Config (l'un des fichiers de documentation peut préciser quel générateur utilise la carte vidéo). Par exemple, la ligne : ClockChip "s3gendac"
pourra être insérée pour les cartes vidéo utilisant un générateur ``S3 GENDAC''.
Plusieurs options peuvent être insérées dans cette section, afin d'optimiser les performances. Les fichiers de documentation ou les pages de manuel préciseront quelles options sont nécessaires pour la carte vidéo employée.