dans le navigateur

L'Exelvision EXL 100 (1984), l'ordinateur familial français à processeur Texas Instruments TMS7020, clavier infrarouge et synthèse vocale, émulé dans le navigateur.

FichierExtTailleAU

Cliquez un programme : la machine redémarre sur la disquette et la commande est tapée à l'invite EXELDOS — LOADRUN NOM.BAS (cartouche ExelBASIC insérée), EXEC NOM (binaire Jester, chargé en Exelmémoire) ou la commande .OBJ. Les autres fichiers (SVC, DSR, SYS, données) ne se lancent pas directement.

Exelmémoire

FichierExtTailleEnreg.Drap.Commentaire

Le contenu est conservé dans ce navigateur (comme un fichier .cram de DCExel). Sur l'EXL 100, branchée, elle démarre à la place du logo (gestionnaire CROS) ; sur l'EXELTEL, menu Périphériques → Exelmémoire. Format : CROS64, enregistrements en descendant depuis $BFD0.

Chargement…

Comment ça marche

L'écran de démarrage

Au lancement, la machine affiche le papillon arc-en-ciel et le logo exelvision sur fond cyan, exactement comme un EXL 100 à la mise sous tension. L'EXL 100 n'a pas de BASIC intégré : comme sur la vraie machine, tout vient d'une cartouche ou d'une cassette.

« Choisir un programme… » ouvre la bibliothèque (chaque entrée indique sa source : éditeur et année) ; un filtre et des puces aident à s'y retrouver. Les Cartouches (ExelBASIC, Tennis, Guppy, Virus, Exelpaint…) démarrent seules. Les Cassettes BASIC — près de trois cents jeux, applications et cours — se chargent toutes seules : la page lance ExelBASIC puis tape LOAD "1", Échap et RUN pour vous ; patientez quelques secondes (les gros programmes mettent jusqu'à une minute). Un programme sur plusieurs faces ou cassettes tient sur une ligne, avec un bouton par face. Les volumes Exelmémoire (jeux diffusés par le serveur Exelvision) se lancent sur l'EXL 100 par CALL EXEC tapé pour vous, et les disquettes amorcent sur EXELDOS. Vous pouvez aussi déposer votre propre fichier (cartouche .bin/.rom, cassette .k7/.wav, image Exelmémoire .cram/.bkp, disquette .fd) : son type est détecté.

L'Exelmémoire

L'extension Exelmémoire (16 Ko de mémoire sauvegardée par pile) et son gestionnaire de fichiers CROS64 (Format, Directory, Tape→Cram, Cram→Tape…) sont émulés. Sur l'EXELTEL elle est toujours branchée : menu Périphériques → Exelmémoire. Sur l'EXL 100, le bouton « 💾 Exelmémoire » permet de la brancher : comme la vraie cartouche, elle démarre alors à la place du logo (gestionnaire CROS). Le même bouton montre le contenu du volume et l'importe ou l'exporte au format .cram de DCExel ; le contenu est conservé dans ce navigateur, Format l'efface.

L'Exeldisk

Le lecteur de disquettes 3"½ Exeldisk (contrôleur WD1770, 640 Ko par disquette) est émulé d'après les équates du devkit et son ROM d'amorçage. Choisissez une disquette dans la bibliothèque ou déposez une image .fd : l'EXL 100 amorce dessus (« exelvision BOOT V1.5 ») et charge EXELDOS ; à l'invite [A], DIR, HELP, EXEC… Si la disquette contient des programmes .BAS, la cartouche ExelBASIC est insérée d'office (LOADRUN NOM.BAS les lance) ; les binaires d'EXEC se chargent dans l'Exelmémoire. Le bouton « 💽 Disquette » liste le contenu de la disquette en place : cliquer un programme le lance (la commande est tapée pour vous). Les écritures restent en mémoire le temps de la session.

Le clavier infrarouge

Le clavier et les manettes de l'EXL 100 étaient sans fil, reliés en infrarouge. Ici c'est votre clavier d'ordinateur, aux positions de MAME. Cliquez dans l'écran : il prend le clavier (un message le dit, espace et flèches ne font plus défiler la page) ; cliquez ailleurs pour le rendre.

Les touches de fonction : F2 pause, F3 réinitialisation, F6 pause cassette, F12 turbo. Quand un programme réclame une autre face ou cassette, le bouton « ⏏ Insérer Face B » de la barre la met en place sans redémarrer (le bouton du programme indique la face en cours ; « ⏏ insérer » dans la liste change de cassette à chaud). Dans ExelBASIC, LOAD"1" lit la cassette et SAVE"1" enregistre.

Limites actuelles

  • Tout n'a pas été essayé : la plupart des programmes n'ont été vus qu'à leur écran de titre.
  • Pas d'images Teledisk (.td0) : convertissez-les en .fd. Un seul lecteur de disquettes, pas d'Exeldisk sur l'EXELTEL, et les écritures sur disquette ne survivent pas au rechargement de la page (l'Exelmémoire, elle, est conservée).
  • Sur l'EXELTEL : pas de ligne téléphonique ni de Minitel, donc Téléphone, Répondeur, Communication et Terminal restent sans effet ; CROS64 refuse les cassettes ExelBASIC en Tape→Cram (format d'enregistrements différent).
  • Pas de manettes physiques : les manettes sont sur le clavier (positions de MAME). La boîte à rythmes Exeldrums reste muette : ses sons venaient d'une puce PCF0705 non émulée.
  • Les cassettes qui n'existent qu'en enregistrement audio (.wav, chez webmo.fr) se chargent mal : la bibliothèque s'en tient aux transferts numériques (TOSEC, DCExel). La parole du TMS5220 est émulée, sa justesse n'a pas été comparée à la machine réelle.

Sous le capot

La machine a deux processeurs Texas Instruments TMS7000 (le TMS7020 principal et un TMS7041 d'entrées /sorties qui dialoguent par une boîte aux lettres), un contrôleur vidéo TMS3556 (texte 40×25 ou 320×250 en 8 couleurs) et un synthétiseur vocal TMS5220.

L'émulation est le driver exelv de l'émulateur multi-machines dsp-cpp (d'après MAME), compilé en WebAssembly avec Emscripten. La ROM système (BIOS, 6 Ko) est embarquée dans la page.