Index des articles

FreeDOS, récent et libre.

 

Ou comment un DOS libre peut encore servir à bien des choses, comme booter des cédérom d'installation.

Avertissement:

Je suis loin d'être un spécialiste du (Free)DOS. D'aucuns auront certainement des avis techniques plus autorisés que moi, mais après de nombreuses installations de "vieilles brouettes", j'ai retiré un attrait certain pour FreeDOS, sa rusticité et son potentiel, que je veux vous faire partager ou au moins connaître. J'ai acquis aussi un peu d'expérience des systèmes utilisables sur ces architectures pas si vielles, comme Drinou ou NetBSD dont je vous parlerais bientôt. Il y a certainement d'autres choses encore à dire sur FreeDOS, mais beaucoup sont déjà dans les livres sur MS-DOS, compatibilité oblige, le reste viendra. Il faudra seulement faire attention, car FreeDOS évolue. Entre le début de la rédaction de cet article et sa publication, les images iso, ont changées, bien que toujours en version béta9


 

À quoi ça sert?

Pour beaucoup le DOS, ou Disk operating Système, appartient au passé de l'informatique personnelle. Il rappelle l'âge pas si lointain des 386 ou 486 et de nombreux souvenir de jeux vidéo pour les pionniers. Il ne serait plus voué qu'à la nostalgie et au "sasfaitpu". Depuis MS-windows pour les jeux courant, et depuis quelques années GNU/Linux l'ont largement supplanté. Pourtant une équipe d'irréductibles1 continue encore et toujours à écrire et actualiser un DOS libre, sous licence GPL, aux possibilités prometteuses, FreeDOS2.

J'ai pu le tester autant sur des machines récentes, que sur des vielles brouettes.

Il permet, entre autres, 2 usages intéressants.

- émulation dos dans un système récent de type unix, et fournissant une couche logicielle,

- installation comme système à part entière, avec même une interface graphique libre.

Je parlerai surtout de la deuxième utilisation, plus facile à tester.

on peut noter aussi que le cédérom permet le fonctionnement en cédérom vif "à la knoppix", toutes proportions gardées.

 

Interfaces graphiques?

Ils ne s'agit pas de clones de windows3.x. Des essais d'installation de cette interface ont été effectué, mais FreeDOS étant

encore en version béta, il semblerai que la manipulation ne soit pas encore à portée de tout le monde3. (Un ex-ingénieur de chez microsoft rencontré à Solution linux 2005, spécialiste du DOS et interressé à titre technique par ce projet, m'a confirmé qu'en l'état ce n'était pas possible).

J'ai pu tester 2 interfaces libres, SEAL et OpenGEM.

Là aussi on est encore dans du béta, mais déjà bien avancé et prometteur. Il semblerait malheureusement que ces projets manquent de contributeurs et n'avancent pas aussi vite que souhaitable.

SEAL

SEAL est faite par un anglais, entouré d'une petite équipe. Son aspect est très différent des celui de windows, et on sent de très bonne capacités d'affichage. Méfiez vous seulement de son logiciel de dessin. Sur la dernière machine testée, on ne pouvait pas en sortir. Il fallait donc éteindre le système brutalement!

Le fichier zip malheureusement ne tiens pas sur une disquette. SEAL On peut donc trouver SEAL sur l'internet ou sur le cédérom de GNU/Linux pratique de janvier 2005, avec l'image de OpenGEM4, encore plus lourde.

OpenGEM

OpenGEM ressemble à une ancienne interface de mac.

Il est très réactif, et comporte une petite suite bureautique, traitement de texte et tableur, suffisante pour le quotidien d'une école primaire.

Ligne de commande de FreeDOS.

Elle reste une ligne de commande DOS, qui permet donc les scripts .BAT.

Elle comporte de nombreux avantages du bash comme le complément de noms avec la touche tab, ou l'historique des commandes avec la flèche vers le haut.

En fait de nombreux utilitaires linux en ligne de commande ont été porté sous (Free)DOS, comme dd, wget, cdrecord, etc..

On les trouvaient dans la version béta8, qui ambitionnait d'être une véritable distribution.

La version béta9 est plus légère, 9,2 Mo au lieu de 50Mo. Elle peut lancer plus facilement des application. Sans doute les contributeurs ont ils désiré se centrer sur cet aspect.

NB: depuis que j'ai écrit cet article pour GNU/Linux magazine une nouvelle image de freedos sur cédérom a été publiée, qui reprend cette logique de distribution. Ci dessous l'adresse d'un des miroirs.

http://ftp.rz.tu-bs.de/pub/mirror/freedos/files/distributions/blair/

Supports de chargement.

On peut charger typiquement une image de disquette, et une image de cédérom. les 2 sont intéressantes.

Il existe en fait 2 images de disquettes.

La disquette d'installation de FreeDOS, le boot ultime.

On trouve son image fdos1440.img, à l'adresse:

http://www.freedos.org/freedos/files/

C'est elle que j'utilise au chapitre suivant. Elle est vraiment remarquable par les options qu'elle propose, lancement de FreeDOS (normal), test de l'état la mémoire vive (bien), et émulateur de BIOS (remarquable!).

 

le mini système odin0.6

http://odin.fdos.org/

C'est là une petite distribution, qui peut recevoir le clavier français par la commande DOS classique "KEYB FR".

Elle est utilisée entre autre par le projet abuledu5, pour installer un système minimum sur un disque dur, démarrant ensuite en terminaux. (Lecture de ce site internet recommandé).

Installer FreeDOS.

Langue

Presque tout est en anglais. Il existe des version partiellement traduites en espagnole ou en néerlandais. A quand une équipe de traduction francophone? Peut être cet article est il une occasion de la fonder?

FreeDOS contient de nombreux script au format texte, facilement traduisible sans difficultés technique.

Probablement l'équipe de FreeDOS verrait d'un bon oeil une équipe francophone se constituer.

Déjà quelques membres de mon lug6 m'ont proposé leur aide pour vérifier la vraisemblance technique. On recherche donc surtout des traducteurs, même sans connaissances informatiques particulières. On vérifie encore que les logiciels libres peuvent se faire par une communauté qui dépasse largement le cercle restreint des informaticiens purs et durs.

Je signale aussi que l'équipe de traduc.org essaye de centraliser et mutualiser les efforts de traduction de la communauté du logiciel libre francophone.

 

Méthode.

La richesse du système permet parfois d'avoir plusieurs méthodes d'installation. En fait, c'est la nature de la machine et la configuration souhaitée qui vont souvent imposer le choix de méthode.

J'ai choisi d'en exposer une assez générale, sans rentrer dans le détail de toutes les possibilités, que chacun pourra en fait découvrir facilement.

Démarrage.

Si la machine l'autorise on peut démarrer avec le cédérom. Son image est sur le cédérom de la revue, mais peut aussi être chargée à

http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/beta9/

Mais je conseillerai de faire la prépartation du disque dur avec la disquette.

On peu avoir aussi un jeu de disquettes à:

http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/beta9/disk1440/

 

Avec la disquette.

Si la machine, ou simplement le lecteur ne permet pas le démarrage sur cédérom, alors on lance classiquement le système sur la disquette, "à l'ancienne". Pour le premier démarrage, le cdrom n'est pas necessaire, puisqu'on se contente de préparer la partition choisie.

Tout d'abord un menu à plusieurs choix apparaît. Il correspond au chargeur de démarrage metakern.

On a:

1 démarrage vers un noyau qui offre des options intéressantes, gestion de la mémoire étendue, pilotes de cdroms, si vous avez un 386 ou plus!

2 démarrage plus rustique, directement vers le KERNEL.SYS..

On peut choisir aussi de lancer le système sur la disquette A, ce qui permet de la remplacer (!), ou sur le disque C, si un système s'y trouve.

Le choix 1 est pris par défaut. Attention, cette étape est très vite franchie. mais il suffit d'appuyer sur quelques touches (j'utilise les flèches) pour retarder la fin de cette étape.

 

Le choix1 renvoie sur un menu à 4 options.

 

Ces options sont décrites dans le fichiers syslinux.cfg, qui est un exemple de fichier texte facile à traduire.

 

Le 4 ième choix envoyait vers *ReactOS, un système libre qui ambitionne de remplacer windowsNT7. Mais entre le débuts de rédaction de cet article et le bouclage du journal, la disquette d'installation avait déjà changée (!), et maintenant c'est vers un noyaux expérimental.

Le 3ième permet de lancer un test de la mémoire vive, pour détecter les barrettes défectueuses.

Le 2ième lance un émulateur de BIOS, qui permet de lancer un cédérom d'installation, même sur de vielles machines qui n'ont pas cette option. Je l'ai testé aussi bien avec GNU/Linux (Mandrake, Drinou, Debian) qu'avec NetBSD, ou ... FreeDOS.

En fait peu de matériels, y sont réfractaires. A l'expérience, si ça ne marche pas, on peut soupçonner le lecteur de cédérom, et tenter de le changer le temps de l'installation.

Et le menu 1), enfin, lance fdboot.img, qui contient, entre autres ce menu:

 

1. Boot FreeDOS SETUP (default configuration)

2. FreeDOS Safe Mode (skip driver loading)

 

  1. Run setup with user-specified storage driver(s)

 

Soit

1. Démarrage de la configuration de FreeDOS

C'est le choix par défaut.

2. FreeDOS en mode «sans échec», sans divers pilotes.

9. Démarrage pour les configuration spéciales.

Ce choix sert en particulier pour les disques durs SCSI.

 

Pourquoi un choix 9. ? parceque de nombreuses options on étés testées, avec ou sans gestion de la mémoire étendue, avec ou sans lancement des pilotes du lécteur de cédérom, etc..

Puisqu'on vous dit que FreeDOS est un système en pleine évolution!

 

Préparation du disque dur.

Prenons le choix 2 pour préparer le disque dur. On accède à la ligne de commande freeDOS, ce qui permet de lancer un formatage

A:\format c: /U

 

(NB: si la machine démarre sur le cdrom, cette étape est aussi réalisable, et parfois necessaire).

Le format de FreeDOS est un formatage rapide par défaut, qui réécrit les adresses du système de fichier. L'option /U le transforme en formatage plus bas niveau comme celui de MS-DOS.

Attention, on est en clavier QWERTY, donc avec les équivalences suivantes:

a est obtenu par q

: par M

m par ,

(/ est dans le pavé numérique, sinon taper !)

En fait sur un clavier français on tape [ for,qt cM !U ]

 

On peut aussi formater avec la disquette de windows98, puisque FreeDOS gère la FAT32. Si vous avez la licence, l'avantage pour un débutant est qu'elle est en français. Mais on peut espérer une traduction de FreeDOS

 

On doit ensuite lancer

A:\SYS C:

 

Cela copie les fichiers système. Procéder de cette manière assurera que le système accèdera au redémarrage aux scripts fdconfig.sys et autoexec.bat, et donc aux pilotes de cdrom. Sinon, un noyau fonctionnera, mais ne pointera pas correctement.

 

Si on a démarré avec la disquette, le mieux est alors de redémarrer et d'utiliser le cdrom. Si le PC ne démarre pas dessus, ce n'est pas grave, la disquette le lancera automatiquement pendant la procédure d'instalation.

 

De nouveau prendre les menus 1 par défaut (3 fois taper 1), si on à plus puissant qu'un 386.

Le cdrom de Freedos est alors automatiquement lancé, et propose un menu à 5 entrées.

On prendra

          1. Configure freeDOS Installation settings

Le menu suivant propose

          1. Start installation of FreeDOS beta9 (démarrer l'installation de FreeDOS beta9)
          2. Localize language, keyboard and display (choisir la langue, le clavier, et l'affichage).
          3. ...

On commencera par le menu 2 si on veut utiliser un clavier français.

Dans la liste des localisation alors proposée, choisir 8 pour la France.

 

Puis on revient au menu précédent, où il est temps de lancer par 1) l'installation proprement dite.

Suivant les machines, on verra ou non une interface graphique d'installation, avec souris, se lancer, ou on devra faire la suite au clavier. Dans les 2 cas c'est simple comme de clicquer sur [next] (suivant) plusieurs fois.

 

L'instalation peut se faire aussi avec un jeu de disquettes, dont les images sont sur le cédérom de FreeDOS.

 

Configuration.

Pour avoir une installation qui gère bien la mémoire et l'accés aux différents appareils (devices) comme le lecteur de cdrom ou la carte son, il faut que les fichiers config.sys et autoexec.bat (script éxecutable) soient correctement rédigés. CONFIG.SYS particulièrement gère les pilotes de mémoire.

Il faut rappeller que DOS, prévu pour de petites machines, qui devaient être des terminaux autonomes de serveurs... UNIX, ne gère par défaut que 640 ko pour l'éxécution des programmes. On utilise donc des pilotes de mémoire comme HYMMEM.SYS8, que charge le CONFIG.SYS.

 

Voici celui que j'utilise, sur un pentium 75 avec 24 Mo de Ram. Il est certainement amméliorable.

(je propose d'ailleur une "bourse des CONFIG.SYS et AUTOEXEC.BAT" ou vous m'enverrez vos exemples qui seront affichés sur une page web).

 

LASTDRIVE=Z

BUFFERS=20

FILES=40

DOS=HIGH,UMB

DEVICE=C:\FDOS\BIN\HIMEM64.EXE

DEVICE=C:\FDOS\EMM386.EXE NOEMS

DEVICE=C:\bin\atapicdd.sys /d:FDCD0001

SHELLHIGH=C:\COMMAND.COM /E:256 /P

 

La ligne 7 correspond au chargement du pilote de lecteur de CDROM.

 

Pour l'AUTOEXEC.BAT , j'ai:

 

@echo off

SET dosdir=C:\

set PATH=%dosdir%\bin

set NLSPATH=%dosdir%\NLS

set HELPPATH=%dosdir%\HELP

set temp=%dosdir%\temp

set tmp=%dosdir%\temp

SET BLASTER=A220 I5 D1 H5 P330

LH DISPLAY CON=(EGA,,1)

MODE CON CP PREP=((858) %dosdir%\cpi\EGA.CPX)

MODE CON CP SEL=858

REM DEVLOAD /Q /H C:\\bin\atapicdd.sys /D:FDCD0001

C:\bin\shsucdx /d:FDCD0001,d

 

LH KEYB FR,,C:\\bin\KEY\FR.KL

echo type HELP to get support on commands and navigation

echo.

echo Welcome to FreeDOS

echo.

mouse

 

La ligne relative au lecteur de cédérom est : C:\bin\shsucdx /d:FDCD0001,d

La ligne commencant par REM est en fait commantée (non active).

 

NB: mes executables sont dans un répertoir C:\bin\

Souvent ils seront insdallés par défaut dans C:\fdos\bin\

il faut donc modifier les chemins en conséquence, et adapter à votre machine.

 

Lors du premier démmarrage FreeDOS beta9 pose diverses questions pour paramétrer CONFIG.SYS, mais en anglais et il est rapide de faire une erreur.

On pourra donc installer sur une machine comparrable mes 2 fichiers de configuration (à vos risques et périls naturellement. Je le répète je ne suis pas expert DOS. Pour un servive professionnel, adressez vous à un professionnel qui vous fera un devis pour ses interventions).9

 

Installation des interfaces graphiques

SEAL10

À utiliser à partir d'un 486. Pas pour un 286 ou un 386

Il faut classiquement chercher le fichier executable install.exe et le lancer.

Baddesktop change l'aspect de SEAL en mettant la bare de menu en bas à la KDE/Icewm/ MS-win9x.

Ensuite on lance par la commande seal (attention de bien localiser l'executable seal.exe)

OpenGEM

De même on actionnne un INSTALL.BAT, qui se chargera de tout.

Ensuite on utilise la commande gem pour lance OpenGEM.

Applications.

De nombreuses applications DOS existante, entre autres des logiciels pédagogiques ont été testés avec succés. J'ai pu vérifier par exemple que rawrite fonctionne parfaitement.

Pour les joueurs, il existe une page de conseils de configuration (en anglais)11

Une disquette de jeux éducatifs française est même diffusée:

Jeux EPI-FreeDOS12 http://www.ofset.org/jeux-epi

 

Conclusion.

Les vielles brouettes ont donc encores de beaux jours devant elles avec ce système.

j'espère que cet article aidera à connaître et essayer ce système.

J'espère aussi qu'il sera l'occasion d'amener des lecteurs à contribuer à l'amélioration la traduction et l'adaptation de FreeDOS, pour qu'il devienne vraiment accéssible à un public francophone.