LE D.O.S.


Prélude - Signification et "historique"

Le DOS est le sigle des mots "Disk Operating System". Cela signifie : système de gestion des disques. En fait, le DOS n'est pas accessible directement à l'utilisateur. C'est un ensemble de routines matérielles et logicielles gérant les différents éléments de l'ordinateur. Ces routines sont regroupées en catégories nommées interruptions. Il n'est pas nécessaire pour un utilisateur d'en savoir davantage. Ce dernier ne pouvant accéder de lui-même à ces routines (fort heureusement pour lui, car cela serait fastidieux). Un programme nommé "interpréteur de commande DOS" (le COMMAND.COM par défaut) a été conçu pour palier à ce problème. La suite de ce document a pour but de vous expliquer le "langage" de cet interpréteur, qui vous permettra de gérer vos fichiers, et d'exécuter vos programmes.
Il est vrai qu'aujourd'hui, il est plus facile d'utiliser une interface visuelle avec une arborescence gérée à la souris, mais il faut comprendre que l'ensemble des propriétés de l'interpréteur DOS s'y retrouve (et même forme la base de ces interfaces).

Définition - Fichier, nom et extension

Un fichier est un regroupement de données désigné par un nom suivit d'une extension. La taille du fichier est variable et ces données peuvent représenter du texte, des images, du code exécutable, un mélange des trois, voire tout autre chose qui appartient à un autre programme. Pour savoir de quel type est le fichier, son nom de huit lettres est suivit d'une extension de trois caractères. Voici quelques extensions bien connues, et réservées pour des fichiers définis :

ASM, BAS, C, COB, FOR, PAS Source d'un programme respectivement en Assembleur, Basic, C, Cobol, Fortran et Pascal.
BAK Sauvegarde d'un fichier source avant sa dernière édition.
TXT Texte ASCII DOS. Lisible avec la commande "type" du DOS.
DOC Document lisible par la plupart des traitements de texte récent.
DAT "DATA" ; regroupement de donnée relatif à un programme.
BAT "BATCH" ; liste de séquences exécutables par l'interpréteur DOS.
SYS, DVD Fichier de configuration des périphériques.
EXE et COM Programme exécutable par l'ordinateur utilisant le DOS par lui-même.

Le nom d'un fichier sous DOS est de onze caractères, car le nom et l'extension sont séparés par un point. Exemple : "IMAGE.BMP". On peut aussi trouver le terme "8+3" pour désigner ce format.

Définition - Les répertoires (ou dossiers)

Les répertoires sont des regroupements de fichiers et de sous-répertoires. Cela permet à l'utilisateur de classer ses fichiers comme il le ferait avec des feuilles dans un classeur. Ainsi, nous pouvons mettre tous les fichiers relatifs à un sujet dans un même dossier (répertoire). Comme pour les fichiers, vous avez huit caractères pour le nom et trois pour l'extension, bien que cette dernière ne soit pas utilisée dans la plupart des cas. Exemple : le répertoire "DOS" ne porte pas d'extension.

Définition - Les disques

Avant d'accéder à un fichier, vous devez choisir un disque : la disquette porte le nom "A:" ou "B:" et "C:" pour le disque dur. Il peut y avoir davantage de noms de disque sur votre ordinateur. Certains d'entre eux sont à lecture seule, comme le CD-ROM, ou une disquette protégée en écriture.

Définition - Arborescence

L'arborescence, c'est l'ensemble des répertoires d'un même disque. Nous appelons "racine", la base d'un disque (c'est-à-dire, un niveau où nous n'appartenons à aucun répertoire). Dans cette racine, nous pouvons trouver des fichiers et des répertoires. Ces répertoires peuvent eux aussi regrouper des fichiers et encore des répertoires, et ainsi de suite. L'arborescence est donc la schématisation (par niveau) des liens de ces répertoires entre eux. Exemple : si je crée dans la racine du "C:" des répertoires "1", "2", "3" et dans les deux premiers respectivement "11", "12", "13" et "21", "22" ; puis "111" et "112" dans le "11" du "1". J'obtiens l'arborescence suivante :

C:\---+-1---+-11-+-111 
! ! \-112
! +-12
! \-13
!-2---+-21
! \-22
\-3

Le "C:\" désignant la "racine" du disque "C:". Pour visualiser l'arborescence d'un disque ou d'un répertoire, le DOS propose la commande externe "TREE".

Définition - Chemin d'accès

Pour accéder à un fichier sur un disque, il ne suffit pas de connaître juste son nom, il faut aussi (dans la plupart des cas) connaître sa localisation dans l'arborescence. Ainsi, "C:\1\12\FICH.DAT" désigne le fichier "FICH.DAT" dans le répertoire "12" du répertoire "1" du disque "C:".
Maintenant que l'on connaît le format des noms de fichiers et de répertoires, nous allons pouvoir apprendre le langage international de l'interpréteur DOS.

Définition - Les commandes

Nous appellerons commande interne, l'ensemble des "mots" reconnus par l'interpréteur. Ils constituent le langage. Il est facile d'imaginer qu'un fichier ou qu'un répertoire puisse avoir le nom d'une commande interne. De ce fait, les commandes les plus indispensables pourront être écrites de deux façons différentes : en entier, ou en abrégé (ce dernier étant le plus courant, bien que le premier soit le plus portable dans l'ensemble des systèmes).
Une commande externe, est en réalité un programme fournit avec l'interpréteur. Il permet une évolution, voire une meilleure souplesse. Par exemple, la commande "subst" qui permet d'affecter un nom d'unité logique (lettre de lecteur) à un répertoire d'un disque, est en fait un programme exécutable.

Définition - Liste et désignation des commandes - internes

Commande désignation
BREAK Active ou désactive le contrôle étendu CTRL+C.
CALL Appelle un fichier .BAT secondaire.
CD / CHDIR Affiche ou modifie le nom du répertoire en cours.
CHCP Affiche le numéro du jeu de caractères (page de codes) en cours.
CLS Efface l'écran.
COPY Copie ou concatène un ou plusieurs fichiers.
CTTY Change le périphérique de commande du système.
DATE Affiche/modifie la date du système.
DEL / ERASE Efface le (ou les) fichier(s) spécifié(s) du disque.
DIR Affiche les informations sur les fichiers et répertoires.
ECHO Active et désactive l'affichage du texte des programmes de commandes.
EXIT Quitte l'interpréteur de commandes et revient à son programme de lancement.
FOR Applique une commande sur une liste d'objets.
GOTO Poursuit l'exécution d'un programme de commandes au label spécifié.
IF Exécute un traitement conditionnel dans des programmes de commande.
LH / LOADHIGH Charge un programme en zone de mémoire supérieure.
MD / MKDIR Crée un sous-répertoire.
PATH Liste des répertoires de recherche des fichiers exécutables.
PAUSE Suspend un programme de commandes jusqu'à l'appui d'une touche.
PROMPT Modifie l'invite de l'interpréteur.
RD / RMDIR Supprime un répertoire.
REM Permet d'inclure commentaires dans un fichier de commande.
REN / RENAME Renomme un ou plusieurs fichiers.
SET Affiche, définit ou supprime des variables d'environnement.
SHIFT Décalage des paramètres d'un fichier de commandes.
TIME Affiche l'heure système et permet de la modifier.
TYPE Affiche le contenu d'un fichier texte.
VER Affiche le numéro de la version du DOS utilisée.
VERIFY Affiche, active et désactive la vérification de bonne écriture sur disque.
VOL Affiche le label d'un ou de plusieurs volumes.

Définition - Liste et désignation des commandes - externes

Commande désignation
APPEND Spécifie la localisation de fichier de donnés.
ATTRIB Affiche ou modifie les attributs de fichier.
CHKDSK Remplacé par SCANDISK.
CHOICE Attend que l'utilisateur fasse son choix dans un menu.
COMMAND C'est l'interpréteur lui-même.
COMP Remplacer par FC.
DEBUG Programme de mise au point des fichiers exécutables.
DELTREE Destruction d'un répertoire avec l'ensemble de son contenue.
DISKCOMP Compare le contenu de deux disquettes.
DISKCOPY Copie le contenu de la disquette sur une disquette, formatée ou non.
EDIT Éditeur de fichier texte ASCII.
FC Compare deux fichiers et affiche les différences
FDISK Programme de configuration des disques durs : à utiliser avec précaution.
FIND Recherche une chaîne de texte dans un ou plusieurs fichiers.
FORMAT Formate le disque du lecteur spécifié.
KEYB Définit le clavier pour une langue donnée.
LABEL Créer/modifier ou supprimer un nom de volume (disque ou disquette).
MODE Configure les périphériques du système.
MORE Affiche un écran de données à la fois.
MOVE Transfère de fichier ou renomme un répertoire.
NLSFUNC Charge en mémoire les informations spécifiques à un pays.
PRINT Imprime un fichier texte pendant que l'ordinateur reste utilisable.
SCANDISK Crée et affiche un relevé d'état du disque et corrige les erreurs décelées.
SHARE Installe le partage et le verrouillage de fichiers.
SORT Filtre de tri de données par ordre alphanumérique.
SUBST Affecte une lettre de lecteur au chemin d'accès spécifié.
SYS Transfère les fichiers système sur un disque.
TREE Affiche l'arborescence pour le répertoire ou le disque spécifié.
XCOPY Copie des fichiers et des répertoires ainsi que leurs sous-répertoires.

Définition - L'invite

Une fois l'interpréteur exécuté, il vous affiche "un invite" (prompt) représentant (dans la plupart des cas) le lecteur et la position dans l'arborescence active (unité et répertoire actuelle). Exemple : "C:\>", signifie que vous êtes sur le disque dur "C:" dans le répertoire racine "\". Cet invite change lorsque vous entrez ou sortez d'un répertoire et aussi lorsque vous changez de disque. Vous pouvez modifier les caractéristiques de l'invite, en utilisant la commande interne "PROMPT".

Définition - Chemin actif

L'invite nous informe de l'unité et son répertoire dans laquelle nous allons travailler. C'est ce que nous appellerons l'unité active, avec son répertoire courant. Chaque unité, ou lecteur logique, a son répertoire courant. De ce fait, en désignant seulement une unité logique, nous accédons au répertoire courant de cette unité. Nous ne serons donc pas obligé de désigner le chemin d'accès si le répertoire courant de l'unité est déjà actif. Exemple : "DIR A:" liste le contenu du répertoire courant dans le lecteur "A". En résumé, chaque unité logique a un répertoire actif.

Arborescence - Changement de répertoire

Pour évoluer dans l'arborescence de vos disques, vous devez utiliser la commande interne "CHDIR "(change directory) ou "CD" en abrégé. Cela vous permet de changer de répertoire de travail (courant). Pour entrer dans un répertoire, il vous suffit de faire suivre la commande "CD" du nom du répertoire : "CD DOS" permet d'entrer dans le répertoire "DOS" si ce dernier existe. Votre "invite" (prompt) s'ajustera immédiatement. Pour sortir de ce répertoire, vous devez utiliser la commande "CD ..". Les deux points successifs désignent le répertoire parent. En fait, c'est comme si l'on entrait dans ce répertoire parent. Pour sortir directement de tous les répertoires dans lesquels on se trouve (pour aller à la racine), on saisira la commande suivante : "CD \".

CD nom

pour entrer

CD ..

pour sortir

CD \

pour allez à la racine.

Arborescence - Visualisation d'un répertoire

Pour visualiser le contenu d'un répertoire (la racine est le premier répertoire), utilisez la commande interne "DIR". Elle vous affiche les noms des fichiers et des répertoires contenus. De plus, chaque fichier est suivit de sa taille en octet, puis de sa date de modification. Cette information est très utile. La commande "DIR" informe aussi sur la place disponible restant sur le disque. Il est possible de visualiser le contenu d'un autre répertoire, en indiquant sa localisation : "DIR C:\DOS" permet de visualiser le contenu du répertoire "DOS" même si l'on se trouve dans un autre répertoire.

 Le volume dans le lecteur C est GOWAP_C
Le numéro de série du volume est CAFE-CAFE
Répertoire de C:\DOS

. <REP> 24/02/97 19:39
.. <REP> 24/02/97 19:39
ANSI SYS 9 079 31/05/94 6:22
MEM EXE 32 838 31/05/94 6:22
KEYB COM 15 851 31/05/94 6:22
KEYBOARD SYS 34 599 31/05/94 6:22
... ...
HIMEM SYS 29 216 31/05/94 6:22
COUNTRY SYS 26 937 31/05/94 6:22
CHKDSK EXE 12 456 31/05/94 6:22
69 fichier(s) 4 952 650 octets
2 répertoire(s) 949 233 408 octets libres

Le "<REP>" désigne un répertoire. "." et ".." sont donc bien des répertoires.

Arborescence - Changement d'unité (lecteur)

Il est souvent plus facile de travailler sur un lecteur (une unité logique) lorsqu'il est actif (le lecteur courant). Cela permet de simplifier (minimiser) la frappe. Pour changer d'unité logique, il suffit simplement de la désigner : "A:" permet d'activer le lecteur "A" comme unité courante. Dès lors, nous pouvons visualiser son contenu sans pour cela rappeler l'unité : "DIR" au lieu de "DIR A:".

Arborescence - Classement et gestion des répertoires

Un répertoire, c'est pour moi la possibilité de ranger dans un même emplacement, des fichiers de même nature, ou couvrant le même sujet. Ainsi, nous pouvons envisager de créer un répertoire dans lequel nous placerons l'ensemble de nos fichiers images. Pour créer ce répertoire, nous devons utiliser la commande interne "MKDIR" (Make Directory), ou "MD" en abrégé, suivit d'un nom de répertoire. "MD C:\IMAGES" crée le répertoire "images" dans la racine de l'unité "C" et "MD IMAGES" crée ce répertoire dans le répertoire courant. Nous pouvons maintenant nous déplacer dans ce répertoire.

Pour qu'un disque soit aisément consultable, il faut rapidement prendre l'habitude de le classer par catégorie. Ainsi, je vous propose de créer un répertoire "JEUX" dans lequel vous y placerez l'ensemble de vos jeux ; de la même manière, vous créerez un répertoire "Document" (Ce que fait Windows avec le répertoire "Mes Documents"). Pour chaque jeu, je vous conseille de créer un répertoire dans le dossier "jeux", avec un nom significatif ; à défaut d'un thème, utilisez le nom du jeu. Ainsi structuré, il sera rapide de supprimer un jeu, en détruisant simplement son répertoire, cela évitant tout danger si le nom du répertoire est suffisamment suggestif.

Pour détruire un répertoire avec la commande "RMDIR" (Remove Directory), "RD" en abrégé, vous devez préalablement effacer son contenu (les fichiers et les sous-répertoires). Vous pouvez aussi utiliser la commande externe "DELTREE", qui effacera en même temps l'ensemble des éléments contenus dans le répertoire.

Gestion des fichiers : créer, copier, effacer, déplacer, renommer

  1. Créer

Gérer des fichiers, c'est pouvoir les créer, les déplacer, les copier, et même les effacer. Toutes ces tâches peuvent être (dans une certaine restriction) effectuées avec l'interpréteur DOS. Nous pouvons créer des fichiers avec le programme EDIT, aisément assimilable à une commande externe, car il est quasiment indispensable. On peut aussi créer rapidement un fichier texte ASCII avec les filtres du DOS, mais cela est plus complexe à comprendre et à expliquer. Un exemple tout de même : essayez "COPY CON: T.TXT". Tapez tout ce qui vous passe par la tête, et terminez en validant un CTRL-Z. Vous avez créé un fichier nommé "T.TXT" contenant ce que vous venez de taper. En fait, le clavier est assimilable à un fichier nommé "CON:". Pour résumer, nous avons copié un fichier clavier en un fichier "T.TXT".

  1. Copier

La commande interne "COPY" permet de copier des fichiers. Pour cela, vous devez désigner un fichier et une destination. Cette commande peut être dangereuse si elle est mal utilisée. En effet, vous pouvez envisager d'écraser un autre fichier portant le même nom, ou même un autre nom si vous avez désigné une destination avec un nom de fichier. Pour exemple, copions le fichier "AUTOEXEC.BAT" dans le répertoire "DOS". Cela nous donne :

"COPY C:\AUTOEXEC.BAT C:\DOS"

Le premier paramètre de notre commande "COPY" désigne le fichier à copier. Le second désigne le répertoire de destination. Si ce répertoire ne devait pas exister, le fichier sera copié en un nouveau fichier nommé "DOS". Les fichiers "AUTOEXEC.BAT" et "DOS" seront les mêmes au nom de fichier près. Pour une information plus précise sur la commande "COPY", je vous propose de saisir la ligne suivante : "HELP COPY" pour des DOS antérieur à la version 7, et "COPY /?" pour les autres, ou pour un interpréteur différent du COMMAND MS-DOS (genre Norton Dos).

Voici néanmoins la syntaxe de la commande "COPY" pour un DOS 3.3 :

    COPY [/A¦/B] source [/A¦/B] [+ source [/A¦/B] [+ ...]][destination [/A¦/B]] [/V]

Source et destination peuvent être un nom d'unité, un répertoire, un nom (ou masque) de fichier ou une combinaison de ces éléments.
Les commutateur /A et /B désigne l'état des fichiers à copier. Il s'applique à la spécification du fichier les précédant et restent actifs jusqu'à ce qu'un autre commutateur soit rencontré. Dans le cas où le commutateur est déclarer en premier, il agie simplement sur les fichier le succédant.
/A : fichier texte : la copie du fichier s'arrête dès qu'un caractère CTRL-Z (27, 1Ah) est trouvé. Ce caractère n'est pas copié. Pour le fichier destinataire, un CTRL-Z est ajouté à la fin du fichier.
/B : fichier binaire : le fichier est copie entièrement.
/V : demande une vérification de la copie.

  1. Effacer

Pour effacer un fichier, nous utiliserons la commande "ERASE", ou "DEL" abrégé de 'delete', suivit du nom de fichier.

  1. Déplacer

Pour déplacer un fichier, nous pouvons utiliser la commande interne "COPY" suivit de la commande interne "DEL". Mais il sera plus simple d'utiliser la commande externe "MOVE". Cette commande prend le même style de paramètres que la commande "COPY".

  1. Renommer

Il peut aussi être intéressant de renommer un fichier. Nous avons à cet effet, la commande interne "RENAME", "REN" en abrégé. Pour renommer un répertoire sous MS-DOS, nous utiliserons la commande externe "MOVE". Dans d'autres interpréteurs, il est souvent possible d'utiliser aussi la commande "REN", ce qui semble plus intelligent.

Masque, caractère générique

Lorsque l'on désire faire référence à plusieurs fichiers à la fois, il est possible d'utiliser les caractères génériques (joker) point d'interrogation et étoile : "?" et "*". Un point d'interrogation permet de remplacer tous les caractères à l'endroit où il est placé, alors que l'étoile remplace tous les caractères suivant sa position. Comprenons par l'exemple. Si je désire lister l'ensemble des fichiers portant un nom commençant par la lettre "C", je vais saisir la ligne suivante : "DIR C*.*". En fait, l'interpréteur va remplacer les étoiles par autant de points d'interrogation qu'il peut mettre pour compléter un nom de fichier. C'est-à-dire, que "C*.*" sera transformé en "C???????.???". Comme les points d'interrogation sont des caractères génériques, ils peuvent être remplacés par n'importe quel autre caractère. Ainsi, la commande "DIR" affichera tous les fichiers ayant un "C" en première position. Par exemple : "CHKDSK.EXE, CHOICE.COM, COUNTRY.SYS". Autre exemple : "DIR MO?E.C*", affichera "MODE.COM, MORE.COM".

Version du DOS, et interpréteur

Il peut être intéressant de connaître la version du DOS, pour savoir quelles sont les commandes internes et externes disponibles. Il faut savoir que beaucoup de commandes externes ont évoluées, disparues, apparues, voire mêmes changées de nom au cours des versions du DOS. Avec la commande interne "VER", vous affichez le numéro de version de votre DOS ainsi que le nom et version de votre interpréteur si ce dernier n'est pas l'interpréteur MS-DOS standard.

Lancer un programme

L'interpréteur ne permet pas seulement de gérer les fichiers, il permet aussi d'exécuter des programmes. Ces derniers sont des fichiers dont l'extension (et l'ordre de priorité) est "COM", "EXE" ou "BAT". Il est intéressant de remarquer que les commandes externes sont en fait des programmes, car se sont des fichiers portant l'une de ces extensions. Nous pouvons donc exécuter un jeu, ou un utilitaire, en tapant simplement le nom du fichier. Nous omettrons volontiers l'extension de ce programme, à une exception près : si nous avons par exemple des programmes "GO.COM" et "GO.EXE" dans le même répertoire, l'interpréteur exécutera le "GO.COM" si nous omettons l'extension. Ceci provenant de l'ordre de priorité. Pour exécuter le "GO.EXE", il faudra l'écrire de toutes lettres. L'interpréteur peut interpréter des fichiers de commandes dont l'extension est "BAT". Ces derniers sont en fait un regroupement de commandes dans un même fichier.

PATH - recherche de programme

L'interpréteur peut exécuter des commandes externes, qui sont en réalité des programmes. Ces derniers ne sont pas forcément dans le répertoire courant. En réfléchissant, il n'y a aucun intérêt d'obliger l'utilisateur de stocker ces programmes dans un répertoire unique. De ce fait, l'interpréteur propose une variable dans laquelle l'utilisateur y placera les chemins des recherches dans l'ordre de lecture séparés par un point virgule. Cette variable porte le nom "PATH". A l'exception des autres variables (§ BATCH - variable), "PATH" est aussi une commande interne. En faite, cette commande affecte la variable "PATH". Exemple : "PATH C:\BATCH;C:\DOS".

Les fichiers BATCH

Un fichier BATCH, ou fichier de commande, est un regroupement de commandes. Dans un fichier BATCH, nous pouvons utiliser des commandes qui seraient inutiles en saisie directe. C'est le cas des commandes conditionnelles, d'affichage, d'attente, de branchement et aussi de boucle. Un fichier BATCH (*.BAT) peut être exécuté comme une commande externe, avec des paramètres, si vous en avez l'utilité.

Les quelques paragraphe qui suivent, listerons les commandes internes relatif au programme BATCH : "Echo", "For", "Goto", "If", "Pause", "Rem", "Shift", "Call", "Break" ...

  1. Création

Pour créer un fichier BATCH, je vous conseille d'utiliser le programme EDIT du DOS. Exemple commenté d'un fichier de commande :

@Echo off
Cls
Echo Coucou, c'est moi.
Pause
Ver

La première ligne est pour moi indispensable. Elle indique à l'interpréteur de ne pas afficher sur l'écran les commandes qui vont être exécutées. Cela permet une transparence du traitement. Vous pouvez l'enlever ou bien la mettre en remarque (ce qui revient au même) en insérant "REM" devant "@Echo off" pour rétablir l'affichage des commande exécuter. Je pense que vous devriez essayer pour comprendre le phénomène. La deuxième ligne efface l'écran ; rien d'extraordinaire. Ensuite, nous affichons un message à l'écran avec la commande "ECHO" puis nous attendons l'appui d'une touche. Et pour terminer, nous affichons la version du DOS. Moralité, ce programme (fichier de commande) n'a aucune utilité autre que d'être un exemple.

  1. Echo, et @

La commande "Echo" permet d'affiche à l'écran une ligne de texte. Je dis "une ligne", car une fois le texte affiché, il y a automatiquement un retour à la ligne : c'est-à-dire, que deux commande "echo" à la suite, afficherons deux lignes l'une en dessous de l'autre. La commande "echo" permet aussi d'informer interpréteur de commande, que nous ne désirons pas qu'il affiche les lignes du programme BATCH. La commande "@" permet d'informer l'interpréteur que la ligne ne doit pas être affiché à l'écran, même si la commande "echo" est sur "on".

Syntaxe : "Echo off" pour ne pas affiché les lignes du fichier de commande. La commande "echo" est sur "on" par défaut.

  1. REM, Remarque

Dans un fichier de commande, vous pouvez insérer des commentaires, grâce à la commande interne "REM".

  1. Break

La commande interne "Break" autorise (ou non) l'utilisateur d'interrompre un fichier de commande avec les touches d'interruption "CTRL-C" ou "CTRL-BREAK".

Syntaxe : "Break ON/OFF"

  1. Les paramètres (arguments)

Un fichier BATCH peut avoir plein de paramètres, à concurrence de 127 caractères sur la ligne de saisie. Dans le fichier, nous ne pouvons accéder qu'à dix paramètres à la fois avec les variables argument %0, %1, %2, %3, ... , %9. La variable %0 représente à l'origine, le nom du fichier BATCH, ou plus précisément la saisie au prompt du nom avec le chemin tapé. Pour atteindre les autres paramètres, nous devrons utiliser la commande interne "SHIFT", qui permet de cycler les paramètres. Ainsi, le contenu de la variable %1 sera positionné dans la variable %0, ..., le contenu de %9 dans %8, et ainsi, le paramètre suivant qui n'était pas accessible sera placé dans %9.

  1. Les variables

Avec la commande interne "SET", vous pouvez définir et affecter des variables textes. Ces variables sont conservées tant qu'elles ne sont pas effacées, même après la fin d'un fichier BATCH. Ce ne sont pas des variables locales au fichier de commande, mais bien des variables globales. Exemple : "SET V=M??E.*" définit et affecte la variable texte "V" de la valeur "M??E.*". Pour changer de valeur, il suffi d'affecter de nouveau la variable : "SET V=LO*.*". Puis, pour effacer la variable, il suffira d'affecter une valeur vide : "SET V=".

Une fois cette variable définie, nous pouvons accéder à son contenu en utilisant son nom entre deux caractères pour-cent : "Echo %V%" affiche le contenu de la variable "V".

Je vous conseille d'effacer vos variables dès que vous n'en avez plus besoin.

Attention. Il existe d'autres variables qui sont utilisées en locale ; elles sont du format "%i" ou "%%i", cela dépend de interpréteur, et de sa version. On les trouve dans les boucles "FOR" par exemple (défini plus loin). J'ai pris "i" comme exemple ; vous pouvez utilisez un autre nom.

  1. Label / branchement

Un label est un marqueur désignant une ligne dans un fichier de commande. Un label est utilisé de paire avec la commande de branchement "GOTO". Un label commence par un caractère deux points, suivit d'un nom. Exemple :

@Echo Off
... ...
Goto L1
... ...
:L1
... ...

Lorsque l'interpréteur rencontre la commande "GOTO L1", il poursuit sont interprétation après la ligne désignée par le label (il saute au label).

  1. Test

Un test, c'est la possibilité d'exécuter un traitement si le résultat comparant deux éléments est vérifié. Il est engendré par la commande "IF" dont voici ces paramètres et sa structure :

IF [NOT] ERRORLEVEL nombre commande
IF [NOT] chaîne1==chaîne2 commande
IF [NOT] EXIST fichier commande

NOT

Spécifie que interpréteur exécute la commande seulement si la condition est fausse

ERRORLEVEL nombre

Condition vraie si le dernier programme exécuté a renvoyé un code de sortie supérieur ou égal au nombre spécifié.

Commande

Commande à exécuter si la condition est satisfaite.

Chaîne1==chaîne2

Condition vraie si les chaînes spécifiées concordent.

EXIST fichier

Condition vraie si le fichier spécifié existe.

Exemple de code :

@echo off
IF "%1"=="" GOTO Err
Echo Le paramètre est : "%1"
Goto Fin
:Err
Echo Entrez un paramètre.
:Fin

  1. Boucle

Une boucle, c'est la possibilité de répéter plusieurs fois une opération sur un élément d'un ensemble définit. Souvent, l'ensemble est défini avec les noms de fichier, mais il peut aussi être du texte, voir des paramètres. Cette boucle est engendrée par la commande "FOR" dont voici la syntaxe :

FOR %variable IN (ensemble) DO commande [paramètre]

%variable

Paramètre remplaçable.

(ensemble)

Ensemble de fichiers séparés par des espaces. Caractères génériques permis.

Commande

Commande à exécuter pour chaque fichier.

paramètre

Paramètres ou commutateurs pour la commande spécifiée.

Pour utiliser FOR dans les fichiers de commandes, spécifiez %%variable au lieu de %variable.

Exemple compliqué : recherche la localisation de lui-même (le fichier BATCH) sur les disques du système. Nous admettrons que l'utilisateur saisisse au prompt seulement le nom du fichier de commandes.

Set DD_OLI=
For %%i in (C D E F G) do If "%DD_OLI%"=="" If exist %%i:\BATCH\%0.BAT SET DD_OLI=%%i

J'initialise à vide la variable DD_OLI, au cas où elle existerait déjà. Puis, je recherche successivement dans les disques durs la présence du fichier de commande (moi-même, vu par le fichier). Dès que je me trouve, j'affecte la variable DD_OLI du nom de l'unité dans lequel je me suis trouvé. — Il est possible que je trouve un fichier portant le même nom que moi, sans pour cela que se soit moi ! Certes, mais sur mon propre ordinateur, j'évite autant que je peux, d'avoir des fichiers de commande portant le même nom. Pourquoi rechercher la localisation du fichier de commande ? parce que ce disque est amovible, et qu'il peut porter n'importe quelle lettre de lecteur, lorsqu'il est inséré dans un autre ordinateur. - Une fois le fichier de commande trouvé, la variable DD_OLI est affecté. Dès lors, le test d'existence ne sera plus effectué car DD_OLI n'est plus vide. Comme il n'est pas possible de quitter la boucle, j'utilise un test sur le contenu de la variable. S'il était possible de quitter la boucle, j'aurai plutôt écris un truc du genre :

For %%i in (C D E F G) do If exist %%i:\BATCH\%0.BAT GOTO Trouvé
  1. Call

Dans un fichier BATCH, on peut désirer faire traiter une opération par un autre fichier de commande déjà existant. Pour cela, nous utiliserons la commande interne "CALL" suivie du nom du fichier de commande. Si nous omettons cette commande, le fichier BATCH ainsi appelé interrompt automatiquement l'exécution de l'appelant. C'est-à-dire, que la commande "CALL" informe l'interpréteur d’exécuter un BATCH comme étant un sous-programme. Sinon, l’appelle sera interprété comme étant un branchement conditionnel ou un saut (goto) dans un nouveau programme.

  1. Pause

La commande "PAUSE" affiche un message à l'écran, jusqu'à ce que l'utilisateur appui sur une touche. Il est possible de ne pas affiché le message, en le détournant avec un filtre, vers une sortie nulle : "PAUSE >NUL", attends l'appui d'une touche, sans afficher le message. L'information sur ce sujet sera donnée dans le paragraphe des filtres.

  1. Choice / ErrorLevel

Le programme "CHOICE", intégré dans le MS-DOS depuis la version 5.x (je pense), permet à un utilisateur de concevoir un menu dans un fichier BATCH. Ce programme retourne un code de sortie de programme (code d'erreur, plus précisément) suivant la touche enfoncée. Il est désolant de remarquer l'ajout de ce programme, or qu'il aurait sûrement été plus intelligent de faire évoluer la commande "PAUSE" dans ce sens, vu qu'elle ne prend actuellement aucun paramètre dans l'interpréteur MS-DOS (ce qui n'est pas forcément le cas dans d'autres interpréteurs). Pour gérer ces codes de retour, la commande "IF" possède une instruction spécifique : "ErrorLevel". Cette instruction est vérifiée, si le code d'erreur retourné par le dernier programme exécuté est supérieur ou égal à la valeur spécifié. Un exemple sera sûrement plus parlant.

@Echo Off
:Menu
Cls
Echo 1) Idos 2) EdiPage
Choice /C:12² /N Quel programme voulez vous lancer [² pour quitter]:
If ErrorLevel 3 Goto Fin
If ErrorLevel 2 goto l2
If ErrorLevel 1 goto l1
Goto Menu

:L1
C:\OUTILS\IDOS
Goto Menu
:L2
C:\OUTILS\EdiPage
Goto Menu
:Fin

D'après la documentation Microsoft, "CHOICE" retourne un "ErrorLevel 0" à la suite d'une interruption par les touches de contrôle CTRL-C ou CTRL-BREAK. Après essai, il semble que "CHOICE" retourne l'erreur 255 (de même, lorsqu'une erreur se produit).

  1. Exemple utile

Ajouter un chemin à la variable "PATH", pour la recherche de programme exécutable.

@echo off
If "%1"="" GOTO Err
Set PATH=%1;%PATH%
Goto Fin
:Err
Echo %0 [nouveau chemin de recherche]
:Fin

Attribue de fichier

Une extension de la gestion des fichiers est amenée par la commande externe "ATTRIB". Avec elle, vous pouvez protéger vos fichiers en effacement ou écrasement, en les désignant comme fichiers en lecture seule. Vous pouvez aussi les cacher pour ne pas les voir lorsque vous utilisez la commande "DIR". Cette commande agit sur les attributs des fichiers. En fait, les fichiers ont une taille, une date de dernière modification, et quatre attributs activables, qui sont les suivantes : lecture seule, a archiver, système, caché. Les mêmes attributs existent pour les répertoires, mais la commande "ATTRIB" ne gère que les fichiers.

Unité sur répertoire - SUBST

Depuis l'apparition de la commande externe "SUBST", nous pouvons affecter une lettre de lecteur à un répertoire spécifique. Exemple : "SUBST J: C:\JEUX". Dès lors, l'unité "J:" existe, et représente le répertoire "C:\JEUX".

Catalogue - DIR

La commande interne "DIR" possède beaucoup de paramètres. Les options les plus utilisées sont les suivantes : "/W", "/P", "/S". Elles permettent respectivement d'afficher la liste des fichiers et des répertoires sur plusieurs colonnes, par écran, en affichant le contenu des sous-répertoires.

Pour plus de détail, tapez "DIR /?".

Aide sur les commandes

Depuis la version 5.x du DOS, la plupart des commandes internes ou externes affichent des informations sur leur utilisation en utilisant le paramètre "/?".

Il y a aussi le programme "HELP.COM" qui vous donnera les informations relatives à l'ensembles des commandes et programmes du DOS. Pour le possesseur de Windows 95, ce programme est sur le CD-ROM dans le répertoire "\Other\Oldmsdos\".

DISK - Partitionnage / Formatage / Duplication

Tout le monde le sait, il faut formater ou avoir un disque (disquette) formaté pour pouvoir y stocker des données. Pour faire cette opération, nous utiliserons la commande externe "FORMAT". Attention, si vous formatez un disque, vous perdrez toutes les données qu'il contient.

  1. Partition

Pour les disques durs, vous pouvez utiliser la commande "FDISK" pour préparer le formatage. Attention, l'utilisation de "FDISK" est irrémédiable, et vous obligera un formatage immédiatement après son utilisation. "FDISK" vous permet, lorsque votre disque dur est suffisamment grand, de définir plusieurs unités logiques. Ainsi, sur un disque de 4Go par exemple, vous pourrez créer un disque "C:" de 2Go, et deux disques "D:" et "E:" de 1Go. Pour cela, supprimez les partitions du disque dur à traiter (s'il est déjà partitionné) dans l'ordre décroissant des lettres logiques : menu "Suppression d'une partition ou d'un lecteur logique DOS", etc. Pour créer les partitions, allez dans le menu "Création d'une partition DOS ou d'un lecteur logique DOS". Choisissez "Créer une partition DOS principale". N'utilisez pas tous le disque, seulement 50%. Puis activez cette première partition avec le menu "Activation d'une partition ". Cela vous permettra de pouvoir booter (redémarrer l'ordinateur) sur l'unité "C:". Pour créer les deux autres lecteurs, créez une partition étendue : menu "Création d'une partition ... " et "Créer une partition DOS étendue". Acceptez que la partition étendu remplisse le reste du disque. Une fois la partition étendue créée, vous allez pouvoir y insérer vos deux unités logiques. Utilisez le menu "Créer un ou plusieurs lecteur(s) dans la partition DOS étendue". Pour le premier, donnez 50%, puis 100% pour le second. Maintenant que tout le disque est partitionné, quitter le programme. Celui-ci vous informe que l'ordinateur va redémarrer. Cela semble normal, car le disque dur à été complètement détruit (dans son aspect DOS). Vous devez booter sur une disquette système, si c'est le disque primaire que vous venez de partitionner. J'espère pour vous que vous en avez une ! C'est vos disquettes MS-DOS ou tout autre système d'exploitation ! Sinon il aurait été judicieux de la faire auparavant avec l'ensemble des programmes nécessaires au formatage d'un disque système. Maintenant, vous devez réinstaller l'ensemble de votre système d'exploitation. Pour le MS-DOS, il suffit de booter sur la première disquette. Le programme d'installation formatera de lui-même l'unité "C:", et installera le système d'exploitation. Pour les unités "D:" et "E:", je n'en suis pas sûr, mais je pense que vous devrez le faire vous-même. Pour cela, entrez la ligne suivante : "FORMAT D:", puis "FORMAT E:". Si votre système d'exploitation est "Windows 95/98/NT", le formatage sera rapide, sinon, il vous faudra attendre une bonne vingtaine de minutes par unité.

"FDISK" n'est pas un outil à utiliser si on ne prend pas le temps de s'informer auparavant. Je vous déconseille de l'utiliser sans l'aide d'une personne compétente (dans ce domaine). Il existe des programmes qui gèrent les partitions des disques durs sans pour cela détruire le contenu. Exemple : Partition magique (PQMAGIC).

  1. Formatage

Les disquettes n'ont pas besoin d'être partionnées ; leurs taille est insuffisante pour que cela soit utile.
Nous utiliserons la commande externes "FORMAT" pour effectué le formatage d'une unité. Cette action est destructrice : les données contenue dans l'unité seront perdu. Sa syntaxe et ces paramètres les plus utiles sont les suivants :

FORMAT lecteur: [/V[:label]] [/Q] [/B | /S] [/C]

/V[:label]

Spécifie le nom de volume (label du disque).

/Q

Formatage rapide. Efface le contenue du disque sans faire de formatage physique.

/B

Alloue l'espace pour les fichiers système sur le disque formaté.

/S

Copie les fichiers système sur le disque formaté. Le disque sera donc bootable.

/C

Vérifie les unités d'allocation marqués "Défectueux". Combiné avec /Q.

/U

Force le formatage physiquement complète du disque.

Pour formater un disque avec lequel nous désirons pouvoir booter, nous utiliserons le paramètre "/S". Le programme FORMAT copiera les fichiers systèmes qui sont nécessaires pour cette fonctionnalité. Si vous désirez formater un disque dur qui l'est déjà, le programme vous demandera de saisir le label de ce disque ; cela afin d'évité une erreur éventuelle.

  1. Copier les fichiers systèmes sur une unité déjà formaté

Un formatage prend beaucoup de temps, et il serait idiot de reformater juste pour placer les fichiers systèmes. Dans cet idée, nous disposons des commandes externe SYS et SELECT pour les vieux DOS 3.x.

"SYS" vous permet de transférer les fichiers systèmes sur une unité. N'oublier pas que pour les disques dures, vous devez rendre la partition actif (Voir partition).

Attention, la syntaxe de la commande "SYS" a changé :

DOS Version 3.3 SYS <destinataire>
DOS Version >? SYS [<source>] <destinataire>

"Source" désigne un lecteur, voir même un répertoire, qui contient les fichiers systèmes. A défaut de spécification, les fichiers sont recherché dans le chemin courant.
"Destinataire" désigne l'unité qui reçois les fichiers systèmes.

"SELECT" vous permet créer les fichiers CONFIG.SYS et AUTOEXEC.BAT avec réciproquement les commande COUNTRY=ppp et KEYBcc. Cette commande n'existe plus aujourd'hui ; nous pouvons la trouver dans des versions de DOS antérieur à la 4. Sa syntaxe est la suivante : SYS <ppp> <cc>, où "ppp" désigne le code du pays et "cc" le type de clavier.

Pays code du pays Type de clavier
France
US
Belgique
...
033
001
032
FR
US
FR ou BE
  1. Label d'un disque

Chaque disque peut avoir un nom. Avec la commande externe "LABEL", vous pouvez affecter et réaffecter le nom d'un disque. Le nom est visualisable avec les commandes interne "VOL" et "DIR". Une unité substituée porte le nom du disque propriétaire du répertoires initiale.

  1. Duplication de disquette

Pour copie une disquette, vous pouvez manuellement copier chacun des fichiers, ce qui semble fastidieux. Je vous propose d'utiliser la commande externe "DISKCOPY", qui créera une duplication de votre disquette. La duplication est réservée au disquette.

Syntaxe : "DISKCOPY lecteur: lecteur:".

Compilateur - DEBUG

Je n'ai pas l'intention de vous faire un cours sur l'assembleur (dans ce document du moins), mais je pense qu'il est intéressant de voir un exemple de son utilisation. Avant l'existence de la commande externe "CHOICE", il n'était pas possible, par défaut, de gérer des menus dans les fichiers de commandes. Avec le programme "DEBUG", beaucoup d'informaticiens (moi aussi, et encore aujourd'hui) ont créé et utilisé un programme nommé "TOUCHE.COM", qui retourne soit le scan-code soit le caractère de la touche clavier enfoncée comme code d'erreur de sortie de programme.

Créez le fichier "TOUCHE.TXT" avec le contenu suivant :

Renvoie le scan-code de la touche. Quasiment portable sur tous les claviers.

Renvoie le code ASCII de la touche. Attention, différence entre minuscule et majuscule.

A
XOR AX,AX
INT 16
MOV AL,AH
MOV AH,4C
INT 21

R CX
A
W
Q

A
XOR AX,AX
INT 16
MOV AH,4C
INT 21

R CX
8
W
Q

Puis tapez la ligne suivante : "Debug TOUCHE.COM < TOUCHE.TXT". Maintenant, vous avez un programme "TOUCHE.COM" qui retourne une valeur interprétable par l'instruction ErrorLevel.

Désignation des périphériques, et spécificité

  1. Re Direction entrée/sortie

En standard, DOS considère que les entrées proviennent du clavier et que les sorties sont dirigées vers l'écran. Le clavier est donc l'entrée standard et l'écran la sortie standard. Vous pouvez modifier les entrées et sorties standard en utilisant respectivement les symboles "<" et ">" sur la ligne de commande.

Pour obtenir l'entrée standard à partir d'un fichier : "... < nom_fichier"
Pour rediriger la sortie standard dans un fichier : "... > nom_fichier"

De plus, il y a le symbole "|" (touche AltGr+6) qui permet de rediriger la sortir standard d'un programme "prog1" vers l'entrée un programme "prog2 ": "prog1 | prog2".

  1. Les filtres

Grâce aux redirections, nous pouvons faire appelle aux programmes "MORE" et "SORT". "MORE" permet d'afficher des données en marquant une pause après chaque écran, et "SORT" de trier les données par ordre alphabétique croissant ou décroissant.

Exemple : "DIR | SORT /r" affiche le contenu du répertoire dans l'ordre alphabétique décroissant.

  1. Fichiers matériels, nom de périphérique : CON, NUL, PRN, LPTn, AUX, COMn

Avec la redirection, nous pouvons admettre que le clavier et l'écran sont respectivement des fichiers de lecture et d'écriture. De ce fait, le DOS les nomment "console". "COPY CON: T.TXT" permettra de créer le fichier "T.TXT" avec des données saisies au clavier, terminées par un "Ctrl-Z" ou "F6". Puis "COPY T.TXT CON:" enverra le contenu du fichier vers l'écran. Le caractère deux points est facultatif, mais il permet de faire remarquer que nous désignons un fichiers matériel, et non un fichier physique.

Le DOS nous offre une redirection nommé "NUL", en écriture seule. On l'utilisera pour rediriger et ignorer les sorties standard. "PAUSE > Nul" permet de faire une pause sans afficher le message. Cette démarche est utile dans un fichier de commande, dans le cas ou le système d'exploitation ne serait pas dans la même langue.

Nous pouvons designer l'imprimante (ou tous autre sortir sur port parallèle) avec le nom matériel "PRN". Mais "PRN" représente l'imprimante par défaut. Il est possible que vous utilisiez plusieurs imprimante. De ce fait, vous pouvez la désigner avec le nom "LPT" suivit du numéro du port parallèle affecté : "LPT1:" pour l'imprimante sur le port parallèle numéro un. "LPT2:" et "LPT3:" respectivement pour les ports deux et trois.

Nous pouvons aussi recevoir ou émettre sur les ports de communications séries avec le nom matériel "AUX" et "COMn" où "n" représente le numéro du port (de 1 à 4).

  1. Commande CTTY

Cette commande permet de spécifier le périphérique qui sera utilisée comme entrée standard. Je vous déconseille de l'utiliser sans information supplémentaire. Personnellement, je n'ai jamais réussi à la faire fonctionner correctement. De plus, elle est à utiliser avec la commande externe MODE, qui défini les vitesses de transfère.

Programme SHARE (désactivé à partir de Win98 Deuxième édition)

Le programme SHARE est utilisé pour verrouiller les fichiers lorsqu'ils peuvent être accédés par plusieurs programmes en même temps. Ceci est possible sous des environnements en temps partagé (multitâche) comme "DOS SHELL, Windows, ...", mais aussi lorsque vous être connecté à un réseau. Si vous n'êtes pas connecté à un réseau, il semble inutile de lancer ce programme.

Configuration du système

Au démarrage, le DOS exécute un fichier de configuration système nommé "CONFIG.SYS". Ce fichier nous permet d'installer des gestionnaires de périphérique, ainsi que de configurer l'environnement DOS. Mémoire, écran, clavier et disque sont les périphériques les plus utilisés. Nous ne somme pas obligé de configurer ces périphériques car le DOS le fait par défaut, mais dans une forme qui ne nous est pas forcément convenable.

Pour configurer notre système, nous devons auparavant définir quelques notions.

  1. Page de codes

Nous appelons page de codes, l'ensemble des matrices (dessins) des caractères relatif à un périphérique. Par exemple, nous pouvons utiliser une page de codes pour définir les caractères affichés sur l'écran. Les matrices des caractères sont contenues dans des fichiers portant l'extension "CPI".

Pour utiliser cette propriété, nous devons préparer et configurer le DOS à ce processus avec la commande externe "MODE". Nous pouvons aussi faire appel aux commandes externe "NLSFUNC" et "CHCP" à l'invite du DOS.

Personnellement, je n'utilise pas cette possibilité, car elle n'est pas portable avec l'ensemble des programmes DOS. En effet, elle redéfinit la table ASCII, et de ce fait ne propose plus les mêmes caractères. Par exemple, un caractère de cadre (mixte) peut être redéfini, pour une page de codes française, en un caractère majuscule accentué.

  1. Déclaration du clavier

Par défaut, les clavier sont en QUERTY. Pour que votre clavier fonctionne en AZERTY (clavier français), vous devez utiliser le programme "KEYB.COM" avec le paramètre "FR". Cela est fait dans le fichier de configuration "CONFIG.SYS" ou dans le lanceur "AUTOEXEC.BAT".

Une fois ce programme installé, nous pouvons basculer entre les modes "QUERTY" et "AZERTY" respectivement en utilisant les combinaisons de touche "Ctrl-Atl-F1" et "Crtl-Atl-F2".

  1. Gestionnaire de périphérique

Le DOS est prévue pour gérer du matériel, même inconnu. Pour cela, il utilise des gestionnaires logiciels (*.SYS) permettant la communication entre le DOS et ses périphériques matériel. La plupart des périphériques installés sur l'ordinateur sont reconnus, ainsi le DOS s'initialise avec ces informations. Les fichiers "pilote" les plus usuels sont les suivants :

ANSI.SYS émulateur ANSI pour la console CON:
RAMDRIVER.SYS Création d'un disque virtuel (en mémoire).
DRIVER.SYS Configuration des disques physiques existants.
DISPLAY.SYS Commutation des pages de codes écran.
PRINTER.SYS Commutation des pages de codes imprimantes.
  1. Le Fichier CONFIG.SYS

Ce fichier contient l'ensemble des processus de configuration du système. C'est un fichier ASCII, et donc éditable avec le programme "EDIT". A l'équivalence d'un fichier BATCH, il possède ces propres commandes internes qui sont les suivantes (pour la version 6 du DOS) : Buffers, Country, Device, Devicehigh, Dos, Drivparm, Fcbs, Files, Install, Lastdrive, Numlock, Shell, Stacks et Switches. Les commandes suivantes y sont aussi accessibles : Break, Rem, Set. De plus, la version 6 nous permet de créer des menus de configuration.

  1. Les commande du fichier de configuration

Les quelques paragraphes suivants détaillent ces commandes. Il va de soit, qu'il est inutile de mettre une commande dans le fichier de configuration si vous utilisez les valeur par défaut. Les paramètres entre crochet sont facultatifs.

  1. Buffers = b[,m]

Définit le nombre de tampons d'accès au disque. "b" et "m" sont des entiers, représentant le nombre de tampon et de cache secondaire, respectivement de 1 à 99 et de 0 à 8 ; les valeurs sont 2 et 0 par défaut.
Les mémoires tampons sont des zones dans lequel le DOS place des blocks de données lors des opérations de lecture/écriture sur les supports de masse. Ainsi, lorsque nous accédons à un fichier, le DOS placera les nouveaux blocks accédés dans les mémoires tampons, en écrasant les plus anciennes. Dans la suite, toutes les opérations sur les blocks déjà en mémoire seront effectuées sur ces tampons. Le DOS enregistrera les blocks seulement lorsqu'il devra écraser un tampon modifiée. Ce procédé est plus rapide que de travailler directement sur un disque.
Les mémoires cache permettent d'accélérer les accès sur des disques lents. Il sera préférable d'utiliser le programme SMARTDRV (ou tous autre programme d'antémémoire), que de définir des mémoires cache.

  1. COUNTRY = ccc[,[ppp][, fic]]

La commande COUNTRY configure le DOS pour qu'il reconnaisse les conventions de syntaxe correspondant aux différentes langues prises en charge par le système. Il permet donc de sélectionner les différent formats internationaux suivant : monnaies, dates, heures, alphabets, séparateurs décimaux, ordre de tri des caractères et caractères autorisés dans les noms de fichier. Cette commande n'est qu'une simple déclaration dans le système. Elle permet au programme qui y font référence d'utiliser les symboles appropriés dans leurs affichages. A défaut de déclaration avec cette commande, le DOS utilisera les conventions américaines. Les paramètres "ccc", "ppp" et "fic", définissent respectivement le code du pays, le code de page et le fichier contenant les informations relatives à ce pays. En omettant le paramètre "ppp" nous désignons la première page de code. Nous pouvons aussi omettre la localisation du fichier d'information lorsqu'il se trouve dans la racine.

Langue ou pays Code de pays Pages de codes date heure
Belgique 032 850, 437 23/01/1993 17:35:00
Brésil 055 850, 437 23/01/1993 17:35:00
Canada francophone 002 863, 850 1993-01-23 17:35:00
Tchécoslovaquie 042 863, 850 1993-01-23 17:35:00
Danemark 045 850, 865 23-01-1993 17:35:00
Finlande 358 850, 437 23.01.1993 17:35:00
France 033 850, 437 23/01/1993 17:35:00
Allemagne 049 850, 437 23.01.1993 17:35:00
Anglais international 061 437, 850 23/01/1993 5:35:00.00p
Italie 039 850, 437 23/01/1993 17:35:00
Amérique latine 003 850, 437 23/01/1993 5:35:00.00p
Pays-Bas 031 850, 437 23-01-1993 17:35:00
Norvège 047 850, 865 23.01.1993 17:35:00
Pologne 048 852, 850 1993-01-23 17:35:00
Portugal 351 850, 860 23-01-1993 17:35:00
Espagne 034 850, 437 23/01/1993 17:35:00
Suède 046 850, 437 1993-01-23 17:35:00
Suisse 041 850, 437 23.01.1993 17:35:00
Royaume-Uni 044 437, 850 23/01/1993 17:35:00
États-Unis 001 437, 850 01/23/1993 5:35:00.00p
Yougoslavie 038 852, 850 1993-01-23 17:35:00

Dans une configuration française, nous pourrons utiliser les déclaration suivantes :

Country = 033
Country = 033,850
Country = 033,850,C:\DOS\Country.sys
Country = 033,,C:\DOS\Country.sys
Country = 033,437
Country = 033,437,C:\DOS\Country.sys

Les deux dernières déclarations prépare l'installation d'une page de code 437. En utilisant une page de code différent de la 850, vous n'aurez plus réellement les caractères internationaux. Cela modifie votre table ASCII, et donc vos programmes DOS peuvent en pâtir.

  1. DEVICE = <pilot.sys> [paramètre]
    DEVICEHIGH = <pilot.sys> [paramètre]

Ces commandes permettent d'installer des gestionnaires (pilots) de périphériques (*.SYS) en mémoire respectivement conventionnel et supérieur. "pilot.sys" représente le nom (avec le chemin) du gestionnaire à installer, et "paramètre" la liste des arguments à lui passer.

Le DOS est installé avec quelques gestionnaires de périphérique (liste). Pour intégrer la gestion ANSI, nous utiliserons l'une des définitions suivantes :

DEVICE = C:\DOS\Ansi.sys
DEVICEHIGH = C:\DOS\Ansi.sys

Le caractère "=" est facultatif (dans la plupart des commandes du fichier de configuration). Pour utiliser la commande "DEVICEHIGH", vous devrez préalablement avoir installer le gestionnaire de mémoire supérieur "HYMEM.SYS".

Les fichiers "COUNTRY.SYS" et "KEYBOARD.SYS" sont des fichiers de données respectivement pour les commandes "COUNTRY" et "KEYB", et non pas des gestionnaires de périphérique. L'utilisation de ces fichiers avec la commande "DEVICE" ou "DEVICEHIGH" plantera certainement votre système.

Pour installer un gestionnaire de périphérique, il est possible qu'il soit nécessaire d'installer préalablement ou postérieurement un autre gestionnaire. Par exemple, l'installation de "EMM386.EXE" requiert l'installation préalable de "HIMEM.SYS". Dans ce cas, vous devez respecter l'ordre des déclarations dans le fichier de configuration.

  1. DOS=HIGH|LOW[,UMB|,NOUMB]
    DOS=[HIGH,|LOW,]UMB|NOUMB

Nous pouvons demandez au DOS de charger ses routines de gestion dans la mémoire haute, supérieur ou les deux. Pour cela, nous utiliserons la commande "DOS=" suivie d'un ou de deux paramètres. Par défaut, les paramètres "Low" et "NoUMB" sont activés. Cette commande peut être déclaré n'import où dans le fichier de configuration.

Les paramètres "UMB/NOUMB" demande au DOS de gérer ou non des blocs de mémoire supérieure créés par un gestionnaire tel que "EMM386.EXE". Les paramètres "HIGH/LOW" indique au DOS de se charger dans une zone de mémoire supérieure (HMA/HIGH) créé par le gestionnaire "HIMEM.SYS" ou dans la mémoire conventionnel (LOW). Il ne faut pas oublier, que la mémoire conventionnel est limité à 640 Ko. C'est dans cette mémoire que le DOS lance les programmes. Moins vous utiliserez de mémoire conventionnelle, plus vous aurez de facilité à lancer des programmes. Vous pouvez vérifier l'utilisation de votre mémoire grâce au programme "MEM.EXE" avec le paramètre "/C" (visu).

En intégrant le gestionnaire "HIMEM.SYS" dans le fichier de configuration système vous pouvez accéder au 384Ko de la mémoire haut. Cela constitue l'extension de la mémoire conventionnelle jusqu'à 1Mo ; car 640Ko + 384Ko = 1024 Ko = 1 Mo.  Avec le gestionnaire "EMM386.SYS" et la commande "DOS = UMB" en plus, vous pourrez installer vos gestionnaires et programmes résidents dans cette mémoire supérieur avec la commande "DEVICEHIGH". Ainsi, vous libérerez la mémoire conventionnel utile pour les programmes.

  1. DRIVPARM = /D:n [/C] [/F:f] [/H:t] [/I] [/N] [/S:s] [/T:p]

La commande "DRIVPARM" redéfinit les paramètres d'un périphérique de mémoire de masse tels qu'un lecteur de disque ou de bande magnétique. Elle modifie les paramètres d'un lecteur physique, mais ne crée pas un nouveau lecteur logique. Son utilisation réaffecte la définition du périphérique de transfert par blocs.

Cette commande est une forme simplifié du pilot "DRIVERS.SYS".

/D:n Indique le numéro du lecteur physique entre 0 et 255, avec 0 pour le "A:".
/C Indique que le lecteur détecte la fermeture de sa porte.
/F:f

Précise le format du lecteur.
La liste suivante décrit les valeurs admises. La valeur par défaut est 2.

0 160/180 Ko ou 320/360 Ko
1 1,2 Mo
2 720 Ko (disquette de 3,5 pouces)
5 Disque dur
6 Bande magnétique
7 1,44 Mo (disquette de 3,5 pouces)
8 Disque optique
9 2,88 Mo (disquette de 3,5 pouces)
/H:t

Précise le nombre (entre 1 et 99) maximum de têtes de lecture/écriture. La valeur par défaut dépend de du paramètre "/F:f".

/I

Désigne un lecteur de disquette de 3,5 pouces électroniquement compatible (les lecteurs électroniquement compatibles sont installés sur votre ordinateur et utilisent le contrôleur du lecteur de disquette existant). Utilisez ce commutateur si la ROM BIOS de votre ordinateur ne prend pas en charge les lecteurs de disquette de 3,5 pouces.

/N Précise que le support n'est pas amovible.
/S:s

Précise le nombre (entre 1 et 99) de secteurs par piste. La valeur par défaut dépend du paramètre "/F:f".

/T:p

Précise le nombre de pistes par face. La valeur par défaut dépend du paramètre "/F:f".

  1. FCBS = n

Spécifie le nombre de blocs de contrôle de fichier (FCB) pouvant être ouverts simultanément. La valeur (entre 1 et 255) par défaut est 2.

Si un programme essaie d'ouvrir plus de "n" fichiers à l'aide d'FCB, le DOS risque de fermer ceux qui ont été ouverts précédemment. Il est conseillé de n'utiliser cette commande que si un programme l'exige, car la plupart des nouveaux programmes ne requièrent plus d'FCB. Ces derniers utilisent des descripteurs de fichiers (Handle), dont vous pouvez spécifier le nombre à l'aide de la commande "FILES".

  1. FILES = f

Fixe le nombre maximale de fichier ouvert simultanément par handle. La valeur par défaut est 8, et varie de 8 à 255. Certains programmes, comme un traitement de texte, exigent une valeur souvent supérieure à 30.

  1. INSTALL = [lecteur:][chemin]fichier [paramètres]
    INSTALLHIGH = [lecteur:][chemin]fichier [paramètres]

Charge en mémoire un programme résident lors de l'initialisation du système. Un programme résident reste en mémoire tant que le système est allumé, et peut être utilisé en même temps que d'autres programmes. Les commandes "INSTALL" et "INSTALLHIGH" permettent d'installer en mémoire des programmes résidents, tels que "Keyb.com", "Nlsfunc.exe" et "Share.exe".

Un programme chargé avec la commande "INSTALL" ne possède pas d'environnement, est utilise donc moins de mémoire que s'il était chargé par l'interpréteur dans le fichier "AUTOEXEC.BAT". Certains programmes ne fonctionneront pas correctement si vous les chargez avec "INSTALL", car ils utilisent des variables d'environnement ou des touches d'accès rapide, ce qui nécessitent la présence du "COMMAND.COM" pour gérer les erreurs graves. Toutes les commandes "INSTALL" sont traitées après les commandes "DEVICE" et avant le chargement de l'interpréteur. Vous ne pouvez donc pas charger un résident avant les gestionnaires de périphérique.

  1. LASTDRIVE = E

Définir la lettre maximal d'unité logique accessibles ; c'est-à-dire, la dernière unité logique valide. Chaque unité est allouée à une structure de données en mémoire. il est donc recommandé de ne pas spécifier plus de lecteurs que nécessaire. La valeur par défaut est E, et peut aller jusqu'a "Z".

  1. NUMLOCK = ON/OFF

Définit l'état du pavé numérique.

  1. SHELL = [[lecteur:]chemin]fichier [paramètres] /P

Précise le nom et l'emplacement de l'interpréteur de commandes à utiliser. A défaut, se sera le "COMMAND.COM". L'option "/P" informe l'interpréteur qu'il est le système d'exploitation primaire.

  1. STACKS = n,t

Définit les piles de données pour la gestion des interruptions matérielles. La valeur par défaut pour un PC XT et AT sont 0/0 et 9/128 pour les autres. Les valeurs "n" et "t" varient respectivement de 8 à 64, et de 32 à 512.

Cette commande est inutile si l'erreur suivante ne se produit pas : "Pile saturée" ou "Exception de l'erreur 12"

  1. SWITCHES = /F /K /N /W

Cette commande vous offre des options spéciales relative au MS-DOS. Certaine n'ont plus d'utilité avec les versions 7.x.

/F

Ignore le délai de 2 secondes pendant le démarrage après l'affichage du message "Démarrage de MS-DOS ...".

/K

Utilise les fonctions d'un clavier conventionnel sur un clavier étendu

/N

Empêche d'utiliser F5 ou F8 pour ignorer les commandes de démarrage.

/W

Vous n'avez besoin de ce commutateur que si vous utilisez Microsoft Windows 3.0 en mode étendu et si vous avez déplacé le fichier WINA20.386 du répertoire racine dans un autre répertoire.

 

  1. Commandes étendue au DOS

Dans le fichier de configuration, nous pouvons aussi utiliser des commandes accessible à l'interpréteur qui sont les suivantes :

  1. Break On/Off

La commande "Break" définit si l'utilisateur pourra interrompre un programme ou un fichier de commande avec les touches d'interruption "CTRL-C" ou "CTRL-BREAK". La valeur par défaut est "Off".

  1. Rem ou ";"

Les commandes "Rem" et ou ";" permettent l'insertion de remarque dans le fichier de configuration. Cela est utile lorsque nous désirons annuler l'exécution d'un ligne de configuration sans pour cela l'effacer.

  1. Set

Cette commande permet de définir et d'initialises des variables globales. Personnellement, je l'utilise pour définir les variable suivantes :

SET PROMPT = $P$G
SET TEMP = C:\TEMP
SET TMP = C:\TEMP
SET PATH = C:\BATCH;C:\OUTILS;C:\DOS

  1. Menus de configurations

Depuis la version 6 du DOS, nous pouvons insérer des menus pour définir des configurations multiples. Pour cela, nous disposons des commandes suivantes : Include, MenuColor, MenuDefault, MenuItem et SubMenu. En les utilisant, une liste numéroté de titre représentant des configurations utilisateur sera affichée. Nous pouvons utiliser les flèches ou entrer un numéro pour sélectionner le menu. Avec la commande "NumLock" nous pouvons activer le pavé numérique. Pour exécuter un menu, nous devons le valider, à moins que le délais spécifié soit écoulé. Dans ce cas, le menu défini par défaut sera validé.

Voici les étapes à suivrent pour définir une configurations multiples :

1) Définissez le menu de démarrage avec l'en-tête "[menu]", dans le fichier de configuration, suivi d'une ou plusieurs commandes "MenuItem". Les commandes "MenuDefault", "MenuColor" et "SubMenu" peuvent être utilisées pour définir des caractéristiques particulières du menu de démarrage.

2) Créez un bloc pour chaque configuration souhaitée. Un bloc de configuration commence par l'en-tête de bloc qui est un nom entouré de crochets. Dans chaque bloc, ajoutez les commandes de configuration initialisant le système lorsque cette configuration est sélectionnée dans le menu de démarrage.

3) Lorsqu'une configuration est sélectionnée dans le menu de démarrage, une variable d'environnement appelée "CONFIG" est initialisé avec le nom du bloc de configuration sélectionné. Cette variable pourra être utiliser dans le lanceur "AUTOEXEC.BAT", en utilisant la commande "GOTO %CONFIG%". Vous pouvez aussi utiliser la commande "IF".

4) Vous pouvez définir un bloc "[common]" dans lequel vous placerez les déclarations communes à l'ensemble des blocs.

Exemple de configuration multiple :

CONFIG.SYS
[menu]
MenuItem = Toff
MenuItem = Gowap
MenuDefault = Gowap,5
NumLock=On

[Gowap]
files=10
device=c:dos\emm386.exe 2048

[Toff]
files=30
device=c:\net\network.sys

[Common]
dos=high
device=c:\dos\himem.sys
AUTOEXEC.BAT
c:\dos\smartdrv.exe
set temp=c:\temp

' Va vers la section correspondant à
' la valeur de la variable CONFIG
goto %config%

:Gowap
path=c:\batch;c:\dos;c:\outils
goto fin

:Toff
path=c:\batch;c:\dos;c:\network;c:\outils
net logon Toff
goto fin

:fin
  1. Include = bloc

Ajoute le contenu d'un bloc de configuration dans un autre.

Le fichier "CONFIG.SYS" ci-contre définit deux configurations. Le bloc [base] comporte deux commandes classiques. Le bloc [norm] comprend les mêmes commandes plus la commande "DOS=UMB" qui s'accumule à la précédent, une commande "DEVICE" et une commande "DEVICEHIGH".

[menu]
menuitem base, Config. de base
menuitem norm, Config. normale

[base]
dos=high
device=c:\dos\himem.sys

[norm]
include=config_base
dos=umb
device=c:\dos\emm386.exe ram
devicehigh=c:\dos\ansi.sys
  1. MenuColor = t,[f]

Définit les couleurs du texte et du fond pour le menu de démarrage. Les valeurs admises vont de 0 à 15, et valent 7 et 0 par défaut. Je vous conseil de spécifier des valeurs différentes pour le texte et le fond, afin que ce soit lisible.

Les valeurs sont relative à la palette des couleurs des modes textes par défaut.

  1. MenuDefault = bloc[,délai]

Spécifie l'élément par défaut du menu de démarrage, et éventuellement un délai avant son acceptation automatique. A défaut,  la barre de sélection est sur le premier élément du menu et aucune sélection automatique n'est activée. Avec "bloc" vous spécifie le nom d'un bloc de configuration par défaut et avec "délai" le nombre de secondes (entre 0 à 90) avant que la sélection automatique active ce menu. Ce dernière est utile lorsque l'utilisateur laisse l'ordinateur démarrer sans intervenir.

  1. MenuItem = bloc[,titre]

Définit un élément du menu de démarrage. Vous pouvez définir jusqu'à 9 éléments par menu.

Avec "bloc", vous spécifiez le nom du bloc de configuration associé à l'élément. Ce bloc doit être défini entre crochet sur une autre ligne du fichier. Lorsque vous sélectionnez un élément dans le menu de démarrage, son bloc associé, les éléments se trouvant au début du fichier et le bloc "[common]" est exécuter.
Si le bloc spécifié n'existe pas dans le reste du fichier, l'élément ne sera pas affiché dans le menu de démarrage. Les noms de bloc ne doivent pas dépasser 70 caractères, et ne doivent pas contenir les caractère suivants : barre oblique inverse (\), barre oblique (/), virgule, point-virgule (;), signe égal (=), crochet ([ et ]) et espace. Avec "titre" vous spécifiez le texte, dans la limite des 70 caractères,  correspondant à l'élément de menu à afficher. Si vous n'indiquez rien, le nom du bloc associé sera affiché comme titre.

  1. SubMenu = bloc[,titre]

Définit un élément du menu de démarrage qui renvoi vers un sous menu. Le bloc désigné doit contenir au moins un élément "MenuItem" ou "SubMenu". Ce dernier peut utiliser l'ensemble des commandes relatif au menu de démarrage.

  1. Caractères spéciaux du fichier de configuration
;

Spécifie lorsque ce caractère est en début de ligne, que la ligne en cours est un commentaire et qu'il ne doit pas être exécutée. La commande REM est équivalente.

?

Demande une confirmation pour exécuter la commande en traitement. Pour cela, insérez sans espace ce caractère immédiatement après la commande.
Par exemple, pour confirmer la commande "DOS=HIGH", écrivez "DOS?=HIGH". De même, vous pouvez écrire "DEVICEHIGH? =PILOT.SYS"

  1. Exemple de configuration du système.

Souvent, les programmes DOS ne fonctionnent pas correctement. "Pas assez de mémoire", "pas de gestion EMS" sont des erreurs courantes. Voici mes fichiers de configuration personnels, me permettant de résoudre le maximum de ces problèmes :

Config.sys Autoexec.bat
Country = 033,850,c:\dos\country.sys
Device c:\dos\himem.sys /testmem=off
Device c:\dos\emm386.exe ram
Lastdrive = J

Dos High,Umb
Devicehigh c:\dos\ansi.sys
Installhigh c:\dos\keyb.com fr,,c:\dos\keyboard.sys

DeviceHigh c:\dos\cdrom.sys /d:cdrom00
InstallHigh c:\dos\mscdex.exe /d:cdrom00 /l:f

REM DeviceHigh c:\dos\mouse.sys

Set Prompt=$P$G
Set Temp=C:\Temp
Set Path=C:\Batch;C:\Dos;

@Echo off

Pour le CD-ROM, n'oubliez pas de corriger la ligne en italique en mettant votre gestionnaire
Le fichier autoexec.bat est en fait complètement vide. Il est inutile   grâce aux instructions Install et InstallHigh. Vous pourrez carrément le supprimer si vous le voulez.

Avec cette configuration, la plupart des programmes fonctionneront correctement. Pour le programme ne désirant pas de gestionnaire de mémoire paginée, insérez un "REM" devant la troisième ligne du config. L'installation du pilot de souris est en commentaire, car il est indépendant du DOS. Je ne peux donc pas vous proposer une installation typique de ce gestionnaire. Pour installer votre souris, référez vous à sa disque, ou rechercher un fichier portant un nom comme "MOUSE", avec une extension "SYS","EXE" ou "COM".

  1. Quelques configurations supplémentaires

Dans le fichier de configuration, nous pouvons définir des variables globales, initialiser le programme et le clavier, et installer le gestionnaire d'antémémoire.

  1. Variables de l'environnement DOS

Avec la commandes "SET" nous allons définir les variables du DOS utilisé par l'ensemble des programmes. Elles fonds référence au répertoire de travail et de recherche des exécutables, de définition du matériel et de l'invite.

  1. Répertoire temporaire

Si vous créez un répertoire "TEMP" sur votre disque, vous pouvez le déclarer comme étant le répertoire de travail temporaire du DOS pour l'ensemble des programmes utilisant des fichiers de données temporaires, en affectant la variable "TEMP" du chemin vers ce répertoire. Dans les anciens DOS, elle s'appelait "TMP". Pour nous assurer que l'ensemble des programmes fonctionnent correctement, nous déclarerons les deux variables.

SET TEMP = c:\temp
SET TMP = c:\temp

  1. Chemin de recherche

Le DOS utilise la variable "PATH" pour rechercher les programmes exécutables (ou interprétable). Imaginons que vous ayez créer les répertoire "BATCH" et "OUTILS" respectivement pour l'ensemble des fichier BATCH et des programme couramment utilisés. Nous initialiserons le PATH dans le fichier de configuration avec la ligne suivante :

SET PATH = c:\batch;c:\outils;c:\dos;

  1. Variable matériel

Certain driver de matériel, comme les cartes son utilisent des variables globales pour informer les programmes de leurs caractéristiques. La carte son Sound Blaster utilise plusieurs variable dont la principale est "BLASTER". Voici la déclaration typique des ces variables qui peut être inséré dans le fichier de configuration :

Set blaster = A220 I5 D1 T6

  1. L'invite

L'invite du DOS fait référence à la variable "PROMPT". Il est donc possible de l'initialiser dans le fichier de configuration. En utilisant des majuscule dans sa définition, l'invite DOS est portable dans d'autres interpréteurs.

set prompt = $P$G

Lorsque nous utilisons la commande shell, nous utilisons un autre interpréteur de commande. Par défaut, le DOS considère que cette interpréteur se trouve dans la racine du disque. Dans le cas contraire, nous devrons spécifier sont chemin avec la variable "COMSPEC".

set comspec = c:\dos\ndos.com

  1. Listage

La commande "DIR" permet de liste le contenue d'un répertoire. nous pouvons dès la version 6 définir les paramètre de cette commande à défaut de spécification. Nous utiliserons la variable "DIRCMD" :

set dircmd = /P/W

  1. Keyb.com

Le programme "KeyB" nous permet de déclarer le type de clavier utiliser. nous pouvons effectuer cette déclaration dans le fichier de configuration système avec la ligne suivante :

DEVICEHIGH = c:\dos\keyb.com FR,,c:\dos\keyboard.sys

  1. SmartDrv.exe

Le programme "SmartDrv" est en même temps un gestionnaire. Il peut donc être installé avec la commande "DEVICE". Pour plus d'information sur ce programme, je vous conseille de vous reporter à votre manuel, d'utiliser le fichier d'aide HELP.COM ou d'affiché les information avec le paramètre "/?".

DEVICE = c:\dos\SmartDrv.exe /DOUBLE_BUFFER
Install = c:\dos\SmartDrv.exe 1024 c+

  1. Gestionnaire de souris

Les gestionnaire de souris sont fournir par le constructeur. Il porte l'extension "EXE", "COM" ou "SYS". Suivant l'extension et son fonctionnement, vous utiliserez une des lignes suivantes (les extensions "COM" et "EXE" sont équivalentes) :

DEVICE c:\dos\mouse.sys
DEVICEHigh c:\dos\mouse.sys
Install c:\dos\mouse.com
InstallHigh c:\dos\mouse.com

Programme MODE

Cette commande externe est utilisé à plusieurs niveau dans la configuration du système : elle permet de paramétrer les flux : clavier, console (l'écran), ports de communication. Dans cette idée, elle visualise et attribué les propriétés des périphériques.

Cette commande est si diverse, qu'elle remplirait facilement une page entière. Je ne vais donc pas m'étaler sur ce sujet plus longuement ; cependant quelques exemple commentés seront suffisant, et vous pouvez toujours demander l'aide du programme : MODE /?

MODE con: lines=50

Passe l'écran en mode texte 80 colonnes 50 lignes. Cette commande nécessite le chargement du gestionnaire ANSI.SYS dans le fichier de configuration CONFIG.SYS.

MODE co80

Passe l'écran en mode texte 80 colonnes couleurs. Les valeurs "CO" et "NB" désignant "Couleur" et "Noir et Blanc" peuvent être utilisées couplées aux valeurs "40" et "80" représentent le nombre de colonne. Ainsi les valeurs "CO40", "CO80", "NB40" et "NB80" sont possibles. Nous pouvons aussi utiliser la valeur "MONO" pour passer en mode monochrome. Cependant, cette valeur peut "planter" l'ordinateur si vous avez libéré la mémoire MDA (monochrome) avec le gestionnaire EMM386.EXE, ou si votre carte vidéo n'est pas compatible avec une carte monochrome (pour cette dernière, tapez à l'aveugle "mode co80" pour réactiver votre carte vidéo).

Les pages de codes peut être définir avec MODE, mais cela nécessite le chargement du gestionnaire DISPLAY.SYS dans le fichier de configuration CONFIG.SYS.

Source : http://membres.lycos.fr/gowap