ANSI.SYS

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

Le fichier ANSI.SYS est un pilote de périphérique du MS-DOS de la société Microsoft qui implémente partiellement un sous-ensemble de contrôle des terminaux textes proposé par l'ANSI X3L2 Technical Committee on Codes and Character Sets (the "X3 Committee"). Il étend les fonctionnalités d'une console dépourvue de ce support.

Dans les environnement de la famille Linux, ce fichier n'est pas nécessaire dans la mesure ou des fonctionnalités équivalentes sont fournies par d'autres moyens.

Les terminaux VT100 incluent également un système équivalent (en fait la première mise en œuvre). Les systèmes même s'ils sont hétérogène sont en partie interopérables.

Les fonctionnalités implémentées telles que la couleur ou les déplacements de curseur le sont au travers de chaînes d'octets mêlées au texte à l'aide de ta technique de dite séquence d'échappement qui commence par l'octet d'échappement. Dans la plupart des encoding, ce caractère d'échappement à la valeur 27-décimal (c'est donc en particulier le cas dans les encodings des familles ASCII/Unicode), mais sur les système EBCDIC, le caractère d'échappement eut prendre la valeur 39-décimal[1].

Application[modifier | modifier le code]

Le pilote ANSI.SYS fait partie de plusieurs systèmes d'exploitation Microsoft dont :

ANSI.SYS est nécessaire pour faire afficher des graphismes élaborés en mode texte en particulier pour redéfinir la couleur. D'ailleurs ces fichiers portent souvent l'extension ".ANS". D'autre part, ces séquences étaient utilisés pour construire des jeux en mode texte avec un fichier Batch.

Ces fonctionnalités permettent par exemple à des applications comme cygwin d'offre des fonctionnalités semblables à celles disponibles sous linux, comme d'afficher en couleur les fichiers en fonctions de propriétés particulières.

Exemple:

 
 brw-r--r--    1 unixuid équipe 64,  64 Jan 27 05:52 block         
 crw-r--r--    1 unixuid équipe 64, 255 Jan 26 13:57 caractère     
 -rw-r--r--    1 unixuid équipe     290 Jan 26 14:08 compressé.gz  
 -rw-r--r--    1 unixuid équipe  331836 Jan 26 14:06 donnée.ppm    
 drwxrwx--x    2 unixuid équipe      48 Jan 26 11:28 répertoire    
 -rwxrwx--x    1 unixuid équipe      29 Jan 26 14:03 exécutable    
 prw-r--r--    1 unixuid équipe       0 Jan 26 11:50 fifo          
 lrwxrwxrwx    1 unixuid équipe       3 Jan 26 11:44 lien -> rép   
 -rw-rw----    1 unixuid équipe     217 Jan 26 14:08 régulier      

Syntaxe[modifier | modifier le code]

Pour utiliser ANSI.SYS sous MS-DOS, il faut ajouter la ligne suivante au fichier config.sys :

device=[lecteur:][chemin]ANSI.SYS

où [lecteur:] et [chemin] sont les lecteurs et chemins où trouver le pilote ANSI.SYS.

Remarque : il existe sous FreeDOS, un utilitaire appelé NANSI.EXE qui est un programme résident et qui a les mêmes fonctionnalités qu'ANSI.SYS fourni avec MS-DOS.

Fonctionnalités[modifier | modifier le code]

Une fois chargé, ANSI.SYS permet de modifier la position du curseur, d'afficher du texte en couleur (les couleurs d'avant plan et d'arrière plan peuvent être modifiées), et changer de mode graphique et surtout de redéfinir des touches du clavier, ce qui permet de programmer des macros (ceci était très utiles avant l'apparition de DOSKEY avec le MS-DOS 5.0).

Voici quelques séquences d'échappement :

Code Effet
CSI = n h Définit le mode écran.
CSI = n l Annule le mode d'affichage.
CSI code ; param [ ; param ] p Redéfinit une touche du clavier.
Modes d'écran
Mode Description Mode Description
0 40 × 25 mono 1 40 × 25 couleurs
2 80 × 25 mono 3 80 × 25 couleurs
4 320 × 200 couleurs 5 320 × 200 mono
6 640 × 200 mono 14 640 x 200 couleurs (mode graphique en 16 couleurs)
13 320 x 200 couleurs (mode graphique) 19 320 x 200 couleurs (mode 256 couleurs)
15 640 x 350 monochrome (mode graphique) 16 640 x 350 couleurs (mode graphique 16 couleurs)
17 640 x 480 monochrome (mode graphique) 18 640 x 480 couleurs (mode 16 couleurs)
7 Passage automatique à la ligne suivante (scrolling)

Voir aussi[modifier | modifier le code]

Notes[modifier | modifier le code]

  1. rabbit.eng.miami.edu/info/ebcdic.html