Projet expérimental émulateur Minitel sur MSX 1

Hello!

Voici un premier (enfin, Xième !) jet d’un projet (expérimental, pour le fun) que j’ai, à savoir un émulateur Minitel pour micro-ordinateur MSX1 (avec toutes ses contraintes quant au graphisme pour ceux qui connaissent !)

La première étape est donc de pouvoir afficher plus ou moins correctement des fichiers videotex, à la norme CEPT2.

Pas facile, sachant qu’un écran videotex est composé de 25 lignes de 40 caractères de 8 pixels X 8 pixels, pour une résolution de 320 x 200, avec 2 couleurs parmi 8 par caractère.

Et scrolling vertical haut et bas pris en charge ainsi que les caractères double hauteur, double largeur et double taille.

Bref, pas du tout la résolution d’un MSX 1 : 24 lignes de 32 caractères de 8x8 pixels, 256x192 pixels, avec une limite de 2 couleurs pa rangées de 8 pixels. C’est le challenge !

Deux possibilités s’offraient : afficher uniquement des lignes de 32 caractères et proposer un scrolling horizontal pour voir les 8 caractères manquants.

Ou redéfinir l’écran pour obtenir 40 caractères de 6 pixels de large.

J’ai choisi la deuxième solution, la plus complexe : les caractères sont de 6 pixels de large x 8 pixels de haut et dessinés « à cheval » entre chaque tuile (emplacement) avec un décalage variable cyclique.

Et les couleurs doivent suivre (comme elles peuvent, sachant qu’avec le décalage on peut se retrouver avec 4 couleurs alors qu’on ne peut en afficher que 2), avec la contrainte du mode Screen2 des MSX de 2 couleurs par ligne 8 pixels !

L’écran est donc de 40 caractères sur 24 lignes (et non 25 comme sur un minitel : la ligne 00 (celle du haut) est affiché en ligne 1, mais se comporte comme la ligne 0 dans ce cas).

J’ai repris la police de caractères des vrais minitels.

Voici le résultat pour le moment, soyez indulgent c’est mon premier projet (hors programmes en Basic en 1985) sur MSX (et même sur n’importe quel ordinosaure !) :

Video Eminex 0.0.1, sur émulateur MSX1 Canon V20

Alors, l’émulation est je pense correcte à 75%.
C’est peu et beaucoup à la fois, compte tenu des contraintes.

Plus la page est chargée en graphisme « complexes », plus cela est difficile pour obtenir un affichage correct.

On ne peut parfois (souvent) pas obtenir l’affichage comme on désirerai du aux contraintes de l’ordi.

Certaines choses ne sont pas émulées, dont: séquences CSI, masquage, DRCS,…
Tout comme le clignotement, hors de portée je pense, le MSX1 ne le prenant pas en charge nativement.

Le scrolling serait à revoir, tout comme la propagation des couleurs de fond et du soulignement.

Ainsi qu’une optimisation de la vitesse d’affichage (mettre toutes mes variables en globale serait parait-il bon pour cela…)

Je suis relativement content car le résultat est un affichage somme toute tout à fait utilisable.

Le prochaine étape (hormis optimiser ce qui est déjà fait), est la partie connexion.

Pour cela je pense utiliser la cartouche modem BadCat Wifi que j’ai qui permet à un ordinateur MSX de se connecter en Wifi.

Si j’arrive à obtenir une connexion telnet avec MiniPavi, cela sera alors parfait !

3 « J'aime »

J’adore l’idée de recréer le minitel sur d’autres plates-formes ! J’avais eu pour idée de créer une cartouche Nintendo DS Minitel, mais j’avais besoin de recréer (/ ajouter en externe) un modem et l’espace physique est très limité

2 « J'aime »

Mais où s’arrêtera-t-il ?

1 « J'aime »

C’est déjà pas mal avancé, bravo!
Par contre, pour caser ton soulignement, tu penses « écraser » les caractères? Les cases sur minitel font 10px de haut, pas huit.

ah oui, 10 lignes tu as raison !
Le soulignement je le gère déjà, c’est sa propagation que je ne gère pas.
Oui, j’écrase la dernière ligne du caractère ! Pas le choix !

Bonjour Ludojey :slightly_smiling_face:

Bravo pour tes avancées et le travail. Je te suis aussi sur le village MSX également et c’est trés intéressant de voir la progression et les échanges techniques. En théorie, ce que tu réalise pour le MSX1 sera compatible avec les autres générations du standard (MSX2 et suite).

Tous mes encouragements. J’ai bien hâte de tester une connection au site, que ce soit par l’un de mes MSX2 et plus) ou via mon Minitel 1B et sa carte Minitel ESP32.

1 « J'aime »

Bonjour,

Serait-il possible d’utiliser cet émulateur avec un modem d’époque pour MSX, si il en existe qui prennent en charge le V23?

Cordialement.

En théorie, il devrait être possible d’adapter le programme pour qu’il communique avec un modem adapté, ou via un port rs232.

La je vais me concentrer pour que cela fonctionne avec la cartouche Wi-Fi que j’ai.

Après mon retour, car le je fais le touriste jusqu’à février !

1 « J'aime »

Bonne idée d’allié l’ancien au moderne :slight_smile:

Sinon, ce modem pourrait peut-être être un bon candidat, il est compatible V23 :slight_smile:

Cordialement.

1 « J'aime »