L'émulateur Thomson TO8
version 1.7.6 (Linux/X11)
Copyright © 1997-2006 Gilles Fétis, Eric Botcazou, Alexandre Pukall, François Mouret
Teo est un émulateur TO8 pour PC, i.e il reproduit aussi fidèlement que possible sur PC le fonctionnement d'un autre micro-ordinateur: le Thomson TO8.
Teo ne réalise lui-même que l'émulation matérielle du TO8, à savoir celle du microprocesseur Motorola MC6809E, de la carte mémoire, de la carte vidéo et des périphériques suivants: souris, crayon optique, manettes de jeux, lecteur de cassettes et lecteurs de disquettes; le système d'exploitation qui coordonne le tout n'est pas inclus et il faut donc utiliser une copie des ROMs d'un TO8 original pour faire tourner Teo.
La configuration nécessaire pour faire tourner l'émulateur est la configuration standard des distributions récentes; seule la présence obligatoire de la version 1.2 du toolkit GTK+ peut nécessiter une mise à jour du système (RedHat 5.x, SuSE 5.x), disponible ici.
Pour installer l'émulateur, il suffit de désarchiver teo-1.7.6-i586.tar.gz et teo-rom.tar.gz dans un même répertoire. Le programme éxécutable se nomme teo.
Le lancement du programme éxécutable provoque l'affichage de l'entête et des messages d'initialisation, puis le démarrage de l'émulation.
Teo accepte les paramètres suivants sur la ligne de commande:
[-help] | affiche l'aide en ligne |
[-m file.m7] | place la cartouche file.m7 dans le lecteur |
[-fast] | active la pleine vitesse de l'émulateur |
[-nosound] | supprime le son de l'émulateur |
[-geometry +x+y] | spécifie la position de la fenêtre |
[-noshm] | désactive l'utilisation de l'extension MIT-SHM |
[-display displayname] | spécifie le nom du serveur X à utiliser |
Teo peut fonctionner dans les quatres modes graphiques X11 les plus courants sur PC, à savoir 8,16,24 et 32 bits. Néanmoins, en mode 8 bits, les changements dynamiques de palette de couleurs ne sont pas émulés.
Il se lance dans une fenêtre 640x400 (sans compter le pourtour de l'écran), ce qui lui permet d'afficher tous les modes graphiques du TO8.
Le clavier du TO8 est émulé dans sa totalité, y compris les combinaisons de touches à base de CNT et de ACC.
L'émulation est fidèle au clavier du PC (AZERTY), c'est à dire que le caractère affiché sur l'écran est celui inscrit sur la touche PC frappée, pourvu qu'il existe sur le clavier du TO8. Les deux SHIFT et ALTGR jouent leur rôle naturel.
La touche STOP est mappée sur le TAB du PC, CNT est mappée sur le CTRL gauche du PC, CAPSLOCK sur CAPSLOCK (le voyant CAPSLOCK est émulé), ACC sur le ALT, HOME sur HOME, les 4 flèches sur les 4 flèches, INS sur INSER, EFF sur SUPPR. A noter que le DEL (=SHIFT+EFF) est mappé directement sur BACKSPACE.
Les dix touches de fonctions sont mappées sur F1-F10 (on peut aussi obtenir, par exemple, F6 par Shift+F1).
La touche VERR. NUM. (NUMLOCK) permet d'activer le mode d'émulation des manettes par le clavier (voyant NUMLOCK éteint) détaillé dans la section suivante.
Lorsque le mode manettes est activé (voyant NUMLOCK éteint), la pavé numérique PC n'est plus mappé sur la pavé numérique du TO8, mais émule les huit directions de la manette 0. Le bouton Fire est mappé sur le CTRL droite.
Dans le même temps, le bloc gauche clavier (A-E, Q-D, W-C) émule la manette 1, tout en continuant à renvoyer les lettres au TO8 (de cette façon, il est possible d'utiliser la manette 0 et le clavier complet du TO8). Le bouton Fire est mappé sur le CTRL gauche.
Comme sur une manette réelle, seule une direction est prise en compte et c'est celle de la dernière touche appuyée.
Sur le TO8 réel, la souris est branchée sur le port de la manette 0 donc les deux périphériques ne peuvent être utilisés simultanément.
Sur le TO8 virtuel, au contraire, les deux fonctionnent en même temps et la souris est le périphérique de pointage par défaut au démarrage.
Elle a deux boutons mappés sur les boutons gauche et droite de la souris PC.
Pourquoi émuler spécifiquement le crayon optique alors que la souris joue exactement le même rôle, y compris sous Basic 1.0 ? Il y a deux raisons:
- le crayon optique, dans la mythologie thomsoniste, est une icône intouchable, érigée en symbole posthume par les nostalgiques de l'ère des TO7, TO8 et autres divinités informatiques nationales.
- plus prosaïquement, contrairement aux programmes écrits pour le TO8 et la souris, ceux écrits pour le TO7, TO7-70 et le crayon optique n'affichent en général pas de curseur indiquant la position du crayon sur l'écran puisque celui-ci est sensé être dans la main de l'utilisateur. Avec comme conséquence d'être impossibles à utiliser sur le TO8 virtuel avec la souris.
Le crayon optique peut donc être sélectionné dans le menu Réglage et Préférences du TO8. Il est encore émulé par la souris PC, son bouton étant mappé sur le bouton gauche de la souris. Le bouton droit permet alors de faire apparaître/disparaître un curseur de repérage.
Le son du TO8 est émulé via la carte son du PC. Les deux générateurs sonores 1-bit compatible TO7 et 6-bit compatible interface Musique et Jeux sont émulés.
Teo utilise le périphérique sonore par défaut du système (via Open Sound System).
Teo peut manipuler trois types de support amovible de lecture et/ou écriture: les cartouches ROM, les cassettes analogiques et les disquettes 3"5 Thomson. Chaque support est virtualisé par le biais de fichiers au format Mémo7 (extension .m7), K7 (extension .k7) et SAP (extension .sap) respectivement.
Voir le panneau de contrôle pour le mode d'emploi relatif à leur manipulation avec l'émulateur.
L'appui sur la touche [ESC] du clavier du PC suspend l'émulation et ouvre le Panneau de contrôle.
Ce menu permet de communiquer avec l'émulateur et d'accéder aux périphériques du TO8 (lecteur de cartouches, lecteur de cassettes et lecteurs de disquettes).
Les deux premiers boutons sont à utiliser avec précaution:
- Réinitialiser le TO8: il correspond à l'appui sur le bouton Reset du TO8 (situé à droite sur le côté). Comme sur le véritable TO8, il n'est pas toujours suffisant pour sortir d'un plantage.
- Redémarrer à froid le TO8: plus violent, il correspond à éteindre puis rallumer le TO8. A priori rien ne lui résiste, mais toutes les données en mémoire vive sont alors perdues.
L'option vitesse permet de régler la vitesse de l'émulation:
- Vitesse exacte: émulation du MC6809E à 1Mhz strictement, c'est le choix normal, le seul utilisable pour les jeux et pour l'émulation sonore.
- Vitesse maximale: émulation du MC6809E à la vitesse maximale atteinte par le PC (à titre d'exemple un P200 émule un MC6809E à 10Mhz). C'est utilisable pour les utilitaires, c'est même assez agréable d'avoir un TO8 rapide, mais le son est alors désactivé.
Ce menu permet de sélectionner un fichier au format Mémo7 (extension .m7) et de le charger comme cartouche (bouton "Parcourir..."). L'intitulé de la cartouche apparaît dans la zone de gauche. A noter que Teo effectue alors un redémarrage à froid afin que la cartouche soit effectivement prise en compte et apparaisse sur l'écran de démarrage.
Il est conseillé de mettre tous les fichiers Mémo7 dans un même sous-répertoire memo7 du répertoire de l'émulateur pour une sélection plus aisée.
Vous pouvez ici non seulement sélectionner le fichier au format K7 (extension .k7) qui joue le rôle de cassette (bouton "...") mais aussi choisir de protéger son accès en écriture (case "prot.") ou encore modifier
la position de la bande (champ numérique "Compteur" et boutons "+" et "-") ou même rembobiner la cassette, i.e revenir au début du fichier (bouton "Rembobiner la cassette"). Attention, tout changement de protection d'accès en écriture provoque automatiquement le rembobinage.
Là encore, il est conseillé de mettre tous les fichiers K7 dans un même sous-répertoire k7 du répertoire de l'émulateur pour une sélection plus aisée.
Ce menu permet de sélectionner les fichiers au format SAP (extension .sap) qui seront utilisés comme disquettes en lecture/écriture par l'émulateur (bouton "Parcourir..."). Ces fichiers sont des images des disquettes physiques Thomson, réalisées par un utilitaire spécifiques appelé SAP, et doivent être stockés sur le disque dur du PC, de préférence dans un sous-répertoire disks du répertoire de l'émulateur.
Les lecteurs 0: et 1: correspondent aux deux faces du premier lecteur physique de disquettes d'un véritable TO8; les lecteur 2: et 3: correspondent quant à eux aux deux faces du second lecteur.
Il est possible d'activer pour chacun des lecteurs, indépendamment des autres, la protection d'accès en écriture de la disquette (case "prot.").
Le bouton "Accès direct" permet aux lecteurs spécifiés d'accéder directement à une disquette physique 3"5 - 720 ko au format TO8 introduite dans le lecteur A: du PC.
A noter qu'une led verte s'allume en haut à droite de l'écran lorsqu'un accès disque est en cours.
Le mode normal de gestion des disquettes de l'émulateur Teo est, à l'instar des autres périphériques, la virtualisation: les disquettes sont représentées par des fichiers au format SAP (extension .sap) et toutes les manipulations, en lecture ou en écriture, sont réalisées sur ces fichiers. Les deux bénéfices en sont une grande souplesse d'utilisation et une protection des données originales des disquettes TO8.
Néanmoins, puisque le format 3"5 standard de disquette est resté le même depuis le premier TO8 jusqu'à aujourd'hui, il est possible matériellement de faire accéder directement tout PC aux disquettes 3"5 du TO8, à la fois en lecture et en écriture. Le menu disquettes du Panneau de contrôle de Teo permet de sélectionner cet accès direct pour les lecteurs 3"5 disponibles sur le système.
Sans commande explicite de l'utilisateur, dans le même souci de protection des données originales des disquettes Thomson, seule la lecture directe est autorisée: la case de protection en écriture d'un lecteur en accès direct reste bloquée en position active. Il est toutefois possible d'autoriser l'écriture directe (et donc également le formatage direct de disquettes 3"5 - 720 ko au format Thomson) en lançant Teo avec l'option --enable-direct-write (cette option n'est volontairement pas affichée par l'aide en ligne). Mais il est très fortement recommandé de ne pas utiliser l'écriture directe sur des disquettes originales Thomson: le format TO n'est pas le format natif des PC et des incompatibilités résiduelles pourraient avoir de graves conséquences sur l'intégrité des données; n'utiliser l'écriture directe que sur des copies, éventuellement réalisées par Teo lui-même.
A noter que le format de disquettes utilisé par Thomson est le 3"5 Double Densité Double Face (720 ko - 2DD). Mais il est possible de se servir de disquettes 3"5 Haute Densité Double Face (1.44 Mo - 2HD) en occultant par un simple morceau de scotch l'encoche de droite de la disquette.
Aucune pour le moment.
Les contraintes matérielles font qu'en mode graphique 8 bits (256 couleurs) Teo n'émule qu'imparfaitement les changements dynamiques de palette de couleurs.
Merci d'utiliser le mail pour toute remarque, suggestion et pour signaler les inévitables bugs.
- Sylvain Huet qui a bâti le coeur de l'émulateur,
- The GTK+ Team pour leur toolkit souple et performant,
- et tous ceux qui m'ont signalé un problème ou suggéré une amélioration à apporter à Teo.
Copyright © 1999-2006 Eric Botcazou (ebotcazou at libertysurf dot fr) Dernière modification: mardi 19 novembre 2006 |
|