Émulation des ordinateurs Thomson 8-bit avec MESS
Cette page décrit mes pilotes (drivers)
MESS permettant l'émulation de toute la gamme
des micro-ordinateurs 8-bits développés par Thomson dans les années 80.
Ces pilotes sont inclus dans la distribution du
multi-émulateur MESS, à partir de la
version 0.108.
[ English version ]
Table des matières
Un émulateur n'est jamais achevé!
Il reste toujours des bogues, des fonctionnalités non supportées, des
logiciels non émulés de manière satisfaisante, etc.
Consultez la liste des problèmes connus et armez-vous
de patience.
Les pilotes étant en constante évolution, cette documentation peut ne pas
être complètement à jour.
Voyez également comment m'aider à améliorer
la qualité de l'émulation.
Toute la gamme des micro-ordinateurs Thomson 8-bit est émulée, depuis
le prototype T9000 jusqu'au petit dernier MO6.
Ceci inclus quelques versions rares (comme le MO5E ou une version arabe
du TO7/70).
De plus, l' Olivetti Prodest PC 128 est émulé (il s'agit d'un clone
italien du MO6 construit par Thomson et distribué par Olivetti).
Cliquez sur un nom de pilote pour accéder à sa documentation.
Liste des pilotes
pilote | ordinateur | commentaire |
t9000 |
T9000 |
prototype du TO7 |
to7 |
TO7 |
premier ordinateur Thomson commercialisé |
to770 |
TO7/70 |
TO7 amélioré |
to770a |
TO7/70 arabe |
TO7/70 avec support pour l'arabe |
mo5 |
MO5 |
entrée de gamme, incompatible avec le TO7 |
mo5e |
MO5E |
version du MO5 réservée à l'exportation |
to9 |
TO9 |
ordinateur de type semi-professionnel, compatible avec le TO7 |
to8 |
TO8 |
TO7/70 nouvelle génération, ordinateur de type Amiga |
to8d |
TO8D |
TO8 avec lecteur de disquettes intégré |
to9p |
TO9+ |
successeur du TO9, basé sur la technologie du TO8 |
mo6 |
MO6 |
successeur du MO5, basé sur la technologie du TO8 |
mo5nr |
MO5NR |
hybride MO5-MO6 avec un support réseau intégré |
pro128 |
Olivetti Prodest PC 128 |
MO6 italien fabriqué par Thomson |
Les rares ordinateurs 16-bit construits par Thomson ne sont pas émulés
(TO16, Micromega 16, Micromega 32).
Périphériques d'entrée
Les périphériques d'entrée suivants sont émulés sur tous les ordinateurs:
- le clavier,
- le crayon optique,
- deux manettes, à 8 positions et 1 ou 2 boutton(s),
- une souris à deux boutons.
Quelques remarques:
-
En mode d'émulation classique du clavier (par défaut),
chaque touche émulée est
associée à une touche (configurable) du clavier de l'hôte.
À partir de la version 0.114, les pilotes supportent également le mode
clavier naturel (natural keyboard) dans lequel chaque caractère
entré sur l'ordinateur hôte est transformé en une combinaison de touches
produisant le même caractère sur l'ordinateur émulé.
Les deux modes ont leurs avantages et leurs inconvénients.
- L'organisation des touches sur le clavier
(qui sert de référence pour le mode d'émulation classique)
varie beaucoup d'un ordinateur
à l'autre.
Il s'agit généralement de claviers AZERTY avec accents français.
Consultez la documentation spécifique de chaque pilote pour plus
d'informations.
-
Si vous utilisez SDLMESS avec un clavier français, je vous conseille d'utiliser
ce fichier de configuration avec les options
-keymap_file et -keymap.
- Une souris peut être connectée sur tous les ordinateurs grâce à
l'extension jeux et musique seconde génération.
Toutefois, seuls les TO8(D), TO9(+), MO6, MO5NR et Olivetti Prodest semblent
posséder des logiciels capables de l'exploiter.
- La première génération d'extension jeux et musique
(sans support pour la souris ni le deuxième bouton des manettes) n'est plus
émulée. Tous les ordinateurs utilisent maintenant l'extension de seconde
génération.
- La souris et les manettes ne peuvent pas être utilisées en même temps
(sauf sur le TO9): elles se branchent en effet sur le même port physique.
Vous devez choisir dans le menu de configuration de MESS
si une souris ou des manettes sont
émulées (ceci peut être modifié à tout moment et ne nécessite pas de redémarrage
de l'ordinateur émulé).
- Le TO9 possède un port souris supplémentaire, intégrée au clavier.
Cette souris utilise un protocole différent qui n'est pas complètement émulé.
- Afin d'utiliser la souris de l'ordinateur hôte
pour contrôler la souris ou le crayon optique
émulé, il peut être nécessaire de presser la touche
Scroll-Lock (pour MESS et xmess) ou Insert (pour SDLMESS).
Périphériques de stockage
Voici une liste des périphériques de stockage qui peuvent être associés à un
fichier image de l'ordinateur hôte ainsi que les formats de fichier supportés:
Liste des périphériques
type | option MESS | formats de fichier |
lecture / écriture |
cartouche | -cart nomdefichier |
.m5, .m7, .rom |
lecture seule |
cassette | -cass nomdefichier |
.k5, .k7, .wav | lecture et écriture |
disquette |
-flop0 nomdefichier -flop1 nomdefichier
-flop2 nomdefichier -flop3 nomdefichier
|
.fd, .qd, .sap | lecture et écriture |
imprimante | -prin nomdefichier |
fichier ASCII | écriture seule |
Quelques remarques:
- Important: avant de charger un logiciel sur cartouche, cassette ou
disquette, assurez-vous qu'il supporte l'ordinateur émulé.
Il existe des incompatibilités importantes entre les différents ordinateurs
Thomson.
Certains logiciels ne fonctionnent que sur un type d'ordinateurs précis.
Certains logiciels se déclinent en plusieurs versions
et vous devez choisir celle qui convient à l'ordinateur émulé.
- Sur la famille d'ordinateurs TO (TO7(/70), TO8(D), TO9(+)),
choisissez de préférence des images de cassettes au format .k7.
Toutefois, le format .wav
devrait convenir pour relire une image qui a été générée par l'émulateur.
- Sur la famille d'ordinateurs MO (MO5(NR), MO6, Olivetti), choisissez
de préférence des images au format .wav.
De nombreuses images .k5 téléchargeables sur Internet ne
fonctionnent que grâce à des hacks spécifiques à certains émulateurs et qui
ne sont pas inclus dans MESS (généralement, ils servent à contourner
les méthodes de protection contre la copie).
- Le format des cassettes MO et TO sont très différents.
Il est impossible de lire un fichier texte ou BASIC sur une cassette
prévue pour la mauvaise famille d'ordinateurs.
-
L'extension de fichier .k5 est généralement réservée aux
cassettes au format MO et .k7 aux cassettes TO.
Toutefois, vous trouverez beaucoup de cassettes au format MO avec
l'extension .k7.
MESS vous préviendra si il lui semble que le format d'une cassette
est invalide.
- Afin d'utiliser des disquettes sur les ordinateurs de la famille MO
(MO5(NR), MO6, Olivetti) et les premiers TO (TO7, TO7/70), il vous faudra une
disquette de boot compatible avec le contrôleur
de disquettes que vous avez sélectionné dans le menu de configuration de MESS.
- Le chargement des logiciels (en particulier depuis les cassettes) peut
être très lent. Le pilote essaye simplement d'émuler les
ordinateurs à leur vitesse d'origine (1 MHz pour le processeur, 900 à 2400
bauds pour les cassettes).
Voici quelques méthodes pour accélérer les chargements:
- désactivez le throttling
(désactive les pauses insérées dans l'émulation pour respecter la vitesse
de l'ordinateur original),
- réglez le saut d'images (frameskip) sur une valeur élevée
quand le throttling est désactivé,
- utilisez les états de sauvegarde (save-states).
- L'utilitaire imgtool et son interface graphique
wimgtool (sous Windows) permettent de créer des images de disquettes
vierges sous différents formats ainsi que de copier des fichiers
depuis ou sur une image (version 0.109 ou plus).
imgtool permet également de décoder les fichiers BASIC
(y compris les fichiers protégés).
Périphériques de communication
Les extensions RS232, Modem et nanoréseau ne sont pas encore supportées.
Périphériques sonores
Le buzzer 1-bit intégré est émulé
(sauf pour le TO8 et TO8D qui n'ont pas de tel buzzer).
Le convertisseur analogique-digital (DAC)
6-bit est aussi émulé (celui-ci est intégré au TO8(D) et
présent sous forme d'extension sur les autres ordinateurs).
L'extension de synthèse vocale (basée sur le processeur MEA 8000 de
Signaletics / Phillips) est également émulée.
La version SVN de MESS est nécessaire.
Il vous faut également un logiciel adapté sous l'ordinateur émulé (e.g.,
Parole pour le TO7, TO7/70, TO9 et TO8).
Enfin, assurez-vous que le port d'entrées-sorties E7FE-F est
placé en mode Speech dans le menu de configuration de MESS
(en effet, ce port est partagé avec l'extension MODEM).
Vidéo
Tous les modes vidéos sont émulés, ainsi que la palette de 4096 couleurs et
le changement de page par le matériel.
L'émulation se fait ligne à ligne, génère des signaux de synchronisation
corrects et respecte les temporisations.
Les pilotes devraient donc émuler correctement toutes les démos
(voir la démo
Chinese Stack
de PULS pour TO8).
Toutefois, le système vidéo présente encore quelques
problèmes.
L'extension d'incrustation TV n'est pas émulée.
L'extension de digitalisation non plus.
MESS change automatiquement la résolution quand il détecte que le mode
haute résolution est utilisé (640x200 sans compter les bords).
Il n'est donc plus nécessaire de faire ce changement à la main.
MESS retournera en basse résolution (320x200) quand la haute résolution n'est
plus nécessaire (car l'émulation en haute résolution est plus lente).
La première chose à faire est de télécharger et d'installer
MESS,
SDLMESS ou
MacSDLMESS
(version 0.108 ou plus) et télécharger les
ROMs des ordinateurs Thomson.
Voici maintenant quelques exemples de lignes de commande
(vous devrez les adapter à votre version favorite de MESS):
- jouer à Choplifter
(Copyright Dan Gorlin & Broderbund)
sur un TO7/70
|
- lancez l'émulateur par mess to770 -cart choplift.m7
- pressez 1 (CHOPLIFTER) dans le menu de démarrage
- le jeu se contrôle grâce à la manette P1, un appui sur une touche du
clavier mettra le jeu en pause
|
- jouer au 5ème axe
(Copyright Didier, Olivier Guillon &
Loriciels)
sur un TO7/70 (nécessite également la cartouche du
BASIC 1.0)
|
- lancez l'émulateur par mess to770 -cart basic.m7 -cass 5axe.k7
- pressez 1 (BASIC MICROSOFT 1.0) dans le menu de démarrage
- entrez LOADM"",,R
|
- jouer à l'aigle d'or
(Copyright Louis-Marie Rocques &
Loriciels)
sur un TO7/70
(nécessite également la cartouche du
BASIC 1.0)
|
- lancez l'émulateur par mess to770 -cart basic.m7 -cass aigle.k7
- pressez 1 (BASIC MICROSOFT 1.0) dans le menu de démarrage
- entrez RUN""
|
- jouer à Arkanoid
(Copyright James Higgins & FIL)
sur un MO5
|
- lancez l'émulateur par mess mo5 -cass arkanoid.k5
- entrez RUN""
|
- utiliser la suite bureautique Jane
(Copyright Thomson et Arktronics Corp.) sur un MO5
|
- téléchargez et décompressez Jane
- lancez l'émulateur par mess mo5 -cart jane-mo5.m5 -flop0 jane-systeme-mo5.qd
- vérifiez que le contrôleur de disquettes est en mode "CD 90-351" ou "CQ 90-028" dans le menu de configuration de MESS;
sinon, vous devez changer la configuration et réinitialiser l'ordinateur émulé
- changez de disquette quand Jane vous le demande en utilisant le gestionnaire de fichiers intégré à MESS
|
- jouer à Captain Blood
(Copyright Ere Informatique) sur un TO8
|
- lancez l'émulateur par mess to8 -flop0 blood.zip
- pressez B dans le menu de démarrage
- pressez SHIFT+1 (CAPITAINE BLOOD)
|
- lancer la démo Chinese Stack
du groupe PULS
sur un TO8
|
- téléchargez l'archive ZIP et décompressez-la
- lancez l'émulateur par mess to8 -flop0 chinese-face0.sap -flop1 chinese-face1.sap
- pressez B dans le menu de démarrage
|
- utiliser l'éditeur de texte Paragraphe
sur un TO8
|
- lancez l'émulateur par mess to8 -flop0 paragraphe.zip
- pressez SHIFT+4 dans le menu de démarrage
- sélectionnez PARAGRAP à gauche
- sélectionnez PARAGRAP à droite
|
- jouer à MGT
(Copyright Loriciels)
sur un MO6
|
- lancez l'émulateur par mess mo6 -cass mgt-mo6.zip
- pressez 2 dans le menu de démarrage
- entrez RUN""
|
- écouter la synthèse vocale avec le logiciel
Parole
(Copyright M. Weissgerber, H. Benoit & CEDIC/NATHAN)
sur un TO8
|
- lancez l'émulateur par mess to8 -flop0 parole.zip
- dans le menu de configuration de MESS, positionnez le port
E7FE-F sur Speech
- pressez B dans le menu de démarrage
|
Remerciements
Les fichiers images des logiciels proviennent du
site de Daniel Coulom
et du site Logiciel MOTO.
D'abord, quelques points qui ne sont pas des bugs:
- L'émulation est lente.
L'émulation se veut fidèle.
En particulier, elle essaye de restituer, autant que possible, la
vitesse des ordinateurs originaux.
Et ceux-ci étaient lents!
- L'émulation occupe beaucoup de ressources sur l'ordinateur hôte.
Effectivement.
Le niveau de fidélité que je recherche nécessite une émulation à un niveau
assez bas.
Un des critères de fidélité est la possibilité de faire fonctionner
l'émulateur avec des ROMs et des images logicielles originales.
Ceci nécessite une modélisation précise (et donc, coûteuse) du
matériel (système vidéo, clavier, contrôleurs de disquettes, etc.).
Ces caractéristiques distinguent donc mes pilotes MESS de la plupart des
émulateurs qui modifient les ROMs originales pour contourner les routines
d'accès bas-niveau au matériel et installer à la place leur propres routines
spécifiques à l'émulateur.
- La souris ne semble pas fonctionner.
Il peut être nécessaire de l'activer par un appui sur Scroll-lock (MESS)
ou insert (SDLMESS).
Voici maintenant une liste des problèmes réels qui seront, je l'espère,
corrigés un jour:
- Les images de cassettes au format .wav fonctionnent mal sur
les ordinateurs de la famille TO (mais elles fonctionnent bien sur les ordinateurs
MO tandis que les images .k7 fonctionnement relativement bien sur les
ordinateurs TO).
Notez que les disquettes sont plus rapides et plus fiables que les cassettes
(c'était déjà le cas sur les ordinateurs originaux).
- De nombreuses cassettes .k5 pour le MO5 et
la plupart des cassettes .k5 pour le MO6 et MO5NR ne fonctionnent pas.
- Des problèmes graphiques apparaissent sur certains jeux TO8 utilisant
le changement de page en matériel (e.g., Bob Morane SF).
- Les contrôleurs de disquettes externes sont pas émulés sur les TO8(D) et TO9(+).
Ceci peut être gênant pour le TO9 car le contrôleur intégré ne permet pas
l'utilisation des disquettes 5"1/4 et 2"8.
Sur le TO8, TO8D et TO9+, le contrôleur intégré permet l'utilisation de tous
les types de disquettes.
- Le support pour la sauvegarde d'états de l'émulateur (save-state)
est incomplet (mais il fonctionne dans de nombreux cas).
- imgtool n'accepte pas les images de cassettes, seulement les
disquettes.
- Les images de disquettes double face ne sont pas supportées.
Il vous faut découper de telles images en deux fichiers: un pour chaque
face.
- L'extension de synthèse vocale n'est pas supportée.
La synthèse vocale est supportée à partir de la version 0.110.
-
Les informations historiques présentes sur ce site et dans le fichier
sysinfo.dat sont probablement fausses.
En particulier, je ne suis pas sûr des dates de commercialisation des
différents ordinateurs et je ne sais pas si
le MO5NR est antérieur ou postérieur au MO6 et au TO8.
Enfin, voici une liste des problèmes résolus récemment.
Pour profiter de certaines corrections, il vous faudra peut-être
télécharger la version MESS en développement sous Subversion:
-
La synthèse vocale utilisant le processeur MEA 8000 de
Signaletics / Phillips est de très mauvaise qualité.
La synthèse vocale marche bien dans la version SVN.
Merci à Papp László pour ses conseils très utiles.
- La commutation des banques de cartouches par lecture des adresses $bffc-$bfff (gamme MO) et $0000-$0003 (gamme TO) n'est pas supportée.
Les deux méthodes sont supportées.
- Le mouvement de la souris est saccadé sur le TO8(D) et
TO9+. Corrigé dans la version 0.112.
- La souris n'est pas supportée sur les autres ordinateurs.
À partir de la version 0.112, l'extension jeux et musique de seconde
génération (permettant de brancher une souris)
est émulée sur tous les ordinateurs.
Notez toutefois que beaucoup de vieux logiciels ne supportent pas la souris.
- Le voyant lumineux caps-lock du clavier est invisible.
Corrigé dans la version 0.109.
(Notez que les MO5, MO5E et MO5NR n'ont pas de voyant lumineux).
- Une émulation vidéo imparfaite produit des erreurs
d'affichage dans la
méga-démo HCL.
Corrigé dans la version 0.109.
- Certains modes du TO9 ont des couleurs incorrectes
(e.g., 80-colonnes). Corrigé dans la version 0.109.
- Les images de disquettes ne sont pas supportées
sont supportées dans imgtool à partir de la version
0.109.
Il est désormais possible de créer une disquette vierge formatée dans
un fichier image au format .fd, .qd
ou .sap, de lister son répertoire, de télécharger des fichiers
dans les deux sens, de protéger et déprotéger des fichiers et de décoder
des fichiers au format binaire BASIC.
Vous pouvez m'aider à améliorer les pilotes d'une des façons suivantes:
-
En testant les logiciels aussi souvent que
possible et sur le plus grand nombre d'ordinateurs émulés compatibles possible.
-
Si vous avez un ordinateur original chez vous, en m'indiquant les différences
que vous notez entre le comportement de l'émulateur et celui de l'ordinateur
original.
-
En m'indiquant toute imprécision ou erreur dans cette documentation.
Vous pouvez me communiquer tout les problèmes et vos propositions
d'amélioration
par email ou
(c'est la méthode préférée) en utilisant la page
Bugzilla de MESS
(indiquez Thomson comme composant).
N'indiquez que les problèmes qui ne sont pas déjà
des problèmes connus.
Je cherche également les informations manquantes suivantes afin
d'améliorer l'émulation:
-
Je cherche les netlists utilisées pour programmer les divers
gate-array des ordinateurs Thomson.
Le but est d'émuler ces processeurs spécialisés le plus fidèlement possible
et d'améliorer, entres autres, les temporisations du système vidéo et la gestion
de la mémoire.
-
Je cherche les ROMs utilisées pour programmer les processeurs 6804 et 6805
des claviers des TO8, TO8D, TO9 et TO9+.
Le but est d'émuler le clavier fidèlement en exécutant le programme original de
scrutation des touches sur son processeur dédié.
Il semble que le contenu de ces ROMs ne soit pas accessible depuis le processeur
6809 central.
Fichiers
Aide
Pour les questions générales sur MAME ou MESS, consultez d'abord
la FAQ correspondante:
Si vous avez les questions spécifiques sur l'émulation des ordinateurs Thomson
avec les pilotes décrits ici, vous pouvez
me contacter.
Vous trouverez parfois des logiciels pour Thomson sur ces pages.
- DCMOTO émule tous les ordinateurs Thomson. Binaire Windows.
- FunzyTo7 émule
le T9000, TO7 et TO7/70.
Open-source. Versions MS-DOS, Windows, Unix et PocketPC.
- Thom
émule le TO7/70. Open-Source. Versions MS-DOS, Windows et Linux.
- Emul5 émule le MO5.
Open-Source. Versions MS-DOS, Windows et Linux.
- TEO
émule le TO8. Open-Source. Versions MS-DOS, Windows et Linux.
- EmuTO8 émule
le TO8. Open-Source. Version Linux.
- Une version archivée de ces émulateurs peut être trouvée sur le
Lair.
- Une autre liste d'émulateurs est disponible sur le site
LogicielsMOTO.
Les pilotes MESS pour les ordinateurs Thomson 8-bit ont été écrits
par
Antoine Miné.