Pour vous aider dans vos calculs nombreux et fastidieux, un certain nombre de petits programmes ont été écrits. Ils ne prennent que peu de place et il est conseillé de les installer sur votre disque.
Un petit programme pour vous aider à configurer votre serveur X. Son rôle est de faciliter la recherche de la meilleure résolution de votre écran. Il tourne dans une fenêtre xterm (X doit donc déjà tourner), et affiche la géométrie actuelle de votre écran, sous une forme similaire à celle décrite dans le fichier XF86Config. Vous pouvez modifier cette géométrie en temps réel, à l'aide d'un certain nombre de commandes décrites ci-après.
Vous pouvez ainsi déterminer la configuration qui correspond à votre souhait, ou revenir à tout moment à la configuration initiale.
Attention
L'auteur et  moi-même
Remarque
Je vous sens fiévreux tout à coup~! N'ayez pas peur, ceci n'est pas fréquent. Allez-y en faisant attention.
Les options de la ligne de commande sont les suivantes~:
Rend vgaset verbeux. En particulier, il affiche les registres CRTC.
Définit la valeur de l'horloge point. Ceci permet à vgaset de donner des informations sur les timings et de les utiliser pour déterminer des intervalles de fréquences. horloge peut etre spécifé en hertz, kilohertz ou megahertz. Faites bien attention à donner la bonne valeur.
spécifie    la       fréquence
horizontale minimale (en hertz ou kilohertz) supportée par
votre moniteur.  Par  défaut  la    valeur  prise est la      valeur
courante. Cette option est ignorée  si l'option -d horloge
est absente, sauf pour -x0.
spécifie     la  fréquence
horizontale maximale (en hertz ou kilohertz) supportée par
votre  moniteur.   Par  défaut  la   valeur   prise est la    valeur
courante. Cette option est ignorée  si l'option -d horloge
est absente.
spécifie la fréquence verticale
minimale supportée par votre  moniteur.  Par défaut la valeur
prise est la valeur courante.  Cette option  est ignorée si l'option
-d horloge est absente, sauf pour -y0.
spécifie la fréquence verticale
maximale supportée par  votre moniteur.  Par défaut la valeur
prise est la valeur courante.  Cette option  est ignorée si l'option
-d horloge est absente.
donne les valeurs horizontales de début de synchro, de fin de synchro et du nombre total de points, et les valeurs verticales de début de synchro, de fin de synchro et du nombre total de lignes. Ces valeurs correspondent aux trois dernières valeurs de chaque rubrique d'un mode vidéo~:
"640x480"       28      640 680 728 776         480 480 482 494
                            --- --- ---             --- --- ---
spécifie la valeur de la résolution virtuelle. Ceci vous permet d'augmenter la résolution affichée, au mieux jusqu'à ces valeurs. Celles-ci ne doivent pas dépasser les valeurs données à la ligne Virtual de la section Screen.
Exemple~:
vgaset -d80 -x30 -X64 -y50 -Y100 -v 1152 910
        --> correspond a un ecran Crystal Scan 1572 FS a 80 MHz
Elles sont activées en appuyant simplement sur une des touches décrites ci-après, colonne de gauche~:
l       diminue la marge gauche
L       augmente la marge gauche
r       diminue la marge droite
R       augmente la marge droite
h       diminue la duree de synchro horizontale
H       augmente la duree de synchro horizontale
t       diminue la marge du haut
T       augmente la marge du haut
b       diminue la marge du bas
B       augmente la marge du bas
v       diminue la duree de synchro verticale
V       augmente la duree de synchro verticale
x       diminue la resolution horizontale
X       augmente la resolution horizontale
y       diminue la resolution verticale
Y       augmente la resolution verticale
?       reprend les valeurs initiales
RC      retour-chariot : reaffiche la configuration
q       quitte
EOT     quitte
Après chaque commande, vgaset réaffiche la configuration selon une présentation compatible avec la rubrique ModeLine du fichier de configuration.
Un certain nombre~! Non, pas trop quand même, mais ce programme a été testé seulement sur certaines cartes vidéo (ET4000, Diamond SpeedStar, ATI Graphics UltraPro). Suivez l'actualité pour découvrir d'éventuelles mises à jour ou savoir si des problèmes ont été détectés.
Le serveur est perturbé lorsque vous modifiez le nombre de pixels. Si vous diminuez la valeur, le serveur ne déroulera plus l'écran virtuel entier (scrolling). Si vous l'augmentez, il n'utilisera pas les nouveaux pixels (seulement avec vgaset). Cependant c'est utile pour déterminer la meilleure résolution.
Il n'est pour l'instant pas possible de modifier la valeur de l'horloge point (dot clock) avec vgaset.
xclk est un autre petit utilitaire qui vous aide à calculer les valeurs pour votre configuration. Il est basé sur les heuristiques et règles que nous avons fixés dans ce document.
Pour utiliser xclk, vous devez connaître les fréquences supportées par votre carte vidéo et votre moniteur (Un moniteur multi-synchro est d'ailleurs conseillé). Les valeurs d'horloge peuvent être déterminées notamment avec le programme clock.exe disponible dans les archives Linux, ou encore en utilisant les utilitaires fournis avec votre carte vidéo (Ex~: les cartes ET4000 sont livrées avec les utilitaires DMODE et VMODE sous DOS). Il y a trois façons d'utiliser xclk~:
xclk       <Frequence_horloge>  <frequences_horiz>
xclk    -h <Frequence_horloge>  <Pixels_horiz>
xclk    -r <Frequence_horloge>  <taux_rafraichissement>
Les fréquences horloge sont en MHz, les fréquences horizontales en kHz (ne donnez que les valeurs).
La première syntaxe utilise la fréquence d'horloge de votre carte et la fréquence horizontale de votre moniteur.
Exemple~: Ma carte a une horloge de 64 MHz et mon moniteur supporte une fréquence horizontale de 56 kHz. J'utilise la commande~:
xclk 64 56              # premiere syntaxe
Ceci génère deux lignes compatibles avec la rubrique ModeLine du fichier de configuration (ajoutez éventuellement le mot-clé ModeLine si vous souhaitez utiliser la ligne dans le fichier)~:
"896x672"       64      896  928  1160  1192    672  672  683  706
# Tx de rafraichissement = 76.05Hz ; Frequence horizontale = 53.69 kHz
Il   se  peut que  xclk   donne    des  valeurs  ridicules.    Exemple
xclk~65~40 génère~:
"1296x972"      65      1296  1328  1600  1632  972  972  980  1021
# Tx de rafraichissement = 39.01Hz ; Frequence horizontale = 39.83 kHz
Avec un tel taux de rafraîchissement, on croirait regarder un film du début du siècle. N'utilisez pas cette résolution. Les meilleurs taux de rafraîchissement sont autour de 70 Hz. Plus la valeur est élevée, mieux c'est (selon ce que peut supporter votre moniteur). Un MAG 15H peut supporter une valeur allant jusqu'à 120 Hz. Beaucoup vont jusqu'à 75 Hz.
Utilisons alors la troisième syntaxe, qui permet de spécifier
le  taux   de rafraîchissement,   par  exemple   xclk  -r 64  70
génère~:
"944x708"       64      944  976  1208  1240    708  708  718  743
# Tx de rafraichissement = 69.47Hz ; Frequence horizontale = 51.61Khz
Une troisième façon d'utiliser xclk permet d'obtenir une
résolution particulière.    Exemple   xclk -h   64   944
génère~:
"944x708"       64      944  976  1216  1248    708  708  718  743
# Refresh rate = 69.47Hz ; Horizontal Frequency = 51.61Khz
Comme vous pouvez le noter, certaines valeurs ont légèrement changé, malgré des données équivalentes. En fait rien de bien important puisque la différence n'excède pas 16 unités, ce qui est supporté par les moniteurs.
Si les valeurs données par xclk ne fonctionnent pas, recalculez les valeurs. Surtout n'essayez pas des valeurs farfelues avec votre serveur X.
SuperProbe  est   un   utilitaire   dont   le  rôle    est    de
déterminer la configuration matérielle vidéo dont vous
disposez, que ce soit sur un bus ISA/EISA/VLB ou PCI (sous réserve).
Il  recherche de différentes  manières et parmi les registres
connus    (les     machines   MicroChannel    et     PCI   peuvent    poser
problème~; SuperProbe   fonctionne  avec  la  plupart   en
utilisant  l'option -no_bios).     SuperProbe  est  un  programme
particulièrement exposé aux erreurs, notamment sous Unix pour
lequel  le matériel est  plus ésotérique que sous DOS.
Il aura donc probablement besoin d'aide de la part de l'utilisateur.
SuperProbe tourne sous SVR3, SVR4, Linux, 386BSD/FreeBSD/NetBSD, Minix-386 et Mach. Il pourrait être très facile de l'étendre aux autres systèmes Unix, voire aux systèmes non-Unix.
Actuellement,   SuperProbe   sait   détecter   les  cartes MDA,
Hercules, CGA, MCGA, EGA, VGA et tous les chipsets SVGA (voir l'option
-info,  ci-dessous).  Il sait    aussi identifier de  nombreux RAMDAC
Les options supportées par SuperProbe sont les suivantes~:
Rend SuperProbe verbeux. Il fournit bon nombre d'informations pendant son exécution.
SuperProbe ne tentera  pas d'utiliser les ports nécessitant  un
décodage   d'adresse  d'E/S
SuperProbe ne tentera pas d'accéder aux ports d'E/S donnés dans la liste. Certaines cartes vidéo utilisent des ports d'E/S non standard pouvant entrer en conflit avec d'autres cartes installées. En donnant à SuperProbe une liste de ports déjà utilisés, il saura qu'aucune carte vidéo ne les utilise et par conséquent ne les testera pas (ce qui pourrait perturber votre système). La liste d'exclusion est donnée sous forme de liste de numéros (ou d'intervalles de numéros) de ports d'E/S séparés par des virgules. Un intervalle est donné sous la forme "inf-sup", bornes incluses. Les valeurs peuvent être données en décimal, en octal (nombres commençant par '0'), ou en hexadécimal (nombres commençant par '0x').
Cette option est utilisée conjointement avec la liste d'exclusion (-excl). Elle indique à SuperProbe que lors du test d'un port d'E/S hors de la liste d'exclusion, l'adresse du port doit être masquée sur 10 bits. C'est important avec les anciennes cartes 8 bits ne pouvant décoder que 10 bits, ainsi que pour certaines cartes 16 bits bon marché. Cette option est moins restrictive que -no16.
Cette option donne à SuperProbe une liste de Chips à tester, et lui indique l'ordre dans lequel il doit le faire. La liste est formée de noms séparés par des virgules. Celle-ci a priorité sur la liste prédéfinie dans SuperProbe. Pour connaître la liste des noms supportés, utilisez l'option -info décrite ci-après. Notez que les valeurs affichées comme "Standard Video hardware" ne sont pas utilisables avec l'option -order.
Cette option définit les Chips que SuperProbe ne doit pas tester. L'ordre de tests est soit celui par défaut, soit celui imposé par l'option -order. La liste contient des noms de chips séparés par des virgules. Pour connaître la liste des noms supportés, utilisez l'option -info décrite ci-après. Notez que les valeurs affichées comme "Standard Video hardware" ne sont pas utilisables avec l'option -noprobe.
Cette option indique l'adresse de base du BIOS de la carte graphique. Par défaut, SuperProbe essaiera de localiser celle-ci de lui-même (l'adresse normale étant 0xC0000). S'il échoue (un message d'erreur sera affiché si cela arrive), utilisez l'option -bios pour lui indiquer la base.
Invalide la lecture du BIOS Vidéo et suppose qu'une carte EGA ou plus récente (VGA, SVGA) est présente comme première carte vidéo.
Supprime la recherche du type de RAMDAC lorsqu'une carte (S)VGA est identifiée.
Supprime la recherche de la taille mémoire de la carte vidéo.
SuperProbe imprimera une liste de tous les matériels vidéo qu'il sait identifier.
Il y en a sûrement~! Si vous en trouvez, veuillez, svp, les rapporter à l'auteur.
Il est possible que SuperProbe bloque votre machine. Dans ce cas, effectuez l'essai avec les options -no16, -excl et -mask10 de façon à éviter les conflits avec d'autres cartes installées.
Chapitre suivant, Chapitre Précédent
Table des matières de ce chapitre, Table des matières générale
Début du document, Début de ce chapitre