LE VIRTUAL TO2026

Une machine entière, du registre au BASIC.

Le TO2026 n'imite pas un écran : c'est un ordinateur virtuel complet, avec sa mémoire, ses circuits, son moniteur et ses langages. Voici comment il est construit, couche par couche, et ce que chaque circuit sait faire.

  • PROCESSEURAucun

    Pas de 6809 émulé : les langages parlent directement au matériel virtuel, à travers le moniteur.

  • MÉMOIRE64 Ko + 6 × 16 Ko

    La carte du MO6 : 64 Ko, et six banques commutables dans la fenêtre &H6000–&H9FFF.

  • VIDÉO12 + 1 modes

    Les 12 modes du MO6, plus le mode 20 : 640×480, 4096 couleurs parmi 16,7 millions.

  • SPRITES128

    Jusqu’à 64×64 points, 256 images, deux plans de tuiles, effets raster, 60 images/s.

  • SONTS-26

    4 voix à la manière du SID, filtre multimode, canal d’échantillons.

  • PAROLEMEA8000

    Synthèse par formants à 8 kHz, lecture du français.

  • DISQUE16 Mo

    Dossiers, en-têtes à la GEOS, gardé dans le navigateur.

  • RÉSEAUN:

    HTTP(S), JSON et WebSocket, ouverts comme des fichiers.

01 / L’ARCHITECTURE

Cinq couches, comme un vrai ordinateur.

Un programme ne touche jamais le navigateur : il passe par le moniteur, qui remplace la ROM, et seul le matériel virtuel connaît les registres.

C’est ce découpage qui permet aux programmes du MO6 de tourner sans changement, et d’ajouter un langage sans rien casser : le BASIC 128 interprète ligne à ligne, à la vitesse d’origine ; le BASIC 2026 compile le programme entier, ce qui le rend environ 15 fois plus rapide sur les mêmes calculs.

Rien ne vient des ROM d’origine. Le moniteur, les deux BASIC et le bureau ont été réécrits, puis vérifiés contre les exemples du manuel du MO6 et plus de 300 tests automatiques.

  1. PROGRAMMESvos programmes, le bureau, Plume, Abaque — en BASIC 128 ou en BASIC 2026
  2. LANGAGESBASIC 128 interprété · BASIC 2026 compilé · LOGO et assembleur à venir
  3. MONITEURtexte et curseur, graphisme, polices, sprites, son, fichiers, réseau : ce que faisait la ROM
  4. MATÉRIEL VIRTUELmémoire et banques · vidéo MO6 et mode 20 · TS-26 · MEA8000 · DOS · N:
  5. NAVIGATEURimage à 60 Hz sur un canevas · son à l’échantillon près (AudioWorklet) · disque dans IndexedDB

02 / LA MÉMOIRE

La carte du MO6, et ses circuits en entrées-sorties.

Le TO2026 garde la vue en 64 Ko du MO6. Les nouveaux circuits sont des registres, qu’on lit et écrit par PEEK et POKE comme en 1986.

La fenêtre &H6000–&H9FFF montre l’une des six banques de 16 Ko, choisie par BANK. Les circuits occupent de petites zones au-dessus : un programme peut tout piloter à la main, ou laisser les instructions du BASIC le faire pour lui.

Les programmes et les variables du BASIC sont gardés à part, par le langage : au démarrage, le BASIC 128 annonce 111 015 octets libres pour eux.

ADRESSESZONERÔLE

  1. &H0000&H5FFFMémoire vivelibre pour PEEK et POKE
  2. &H6000&H9FFFFenêtre de banques6 banques de 16 Ko, choisies par BANK 1 à 6
  3. &HA000&HA3FFMémoire vive
  4. &HA400&HA43FCircuit graphiquemode 20 : plans, défilement, sprites, port de chargement
  5. &HA440&HA5FFMémoire vive
  6. &HA600&HA63FPuce son TS-264 voix, filtre, échantillons
  7. &HA640&HA7FDMémoire vive
  8. &HA7FE&HA7FFMEA8000donnée et commande de la synthèse vocale
  9. &HA800&HFFFFMémoire vive

03 / LA VIDÉO

Les douze modes du MO6, et un treizième pour 2026.

L’image est composée en 640×480 à chaque trame. Les modes hérités occupent la zone du MO6, doublée en hauteur et entourée de son pourtour coloré.

MODEDÉFINITIONCOULEURS ET USAGE
0320×200, 40 colonnes16 couleurs, deux couleurs par segment de 8 points (forme et fond)
1640×200, 80 colonnes2 couleurs
2320×2004 couleurs point par point
3160×20016 couleurs point par point
4 – 72 pages de 320×200une page affichée et l’autre écrite, ou les deux superposées
8 – 114 plans superposésun plan écrit à la fois, le plan 4 devant
20640×480, 80 × 304096 couleurs parmi 16,7 millions — le mode du TO2026

Le mode 20, plan par plan

Sept plans se superposent, du fond vers l’avant. L’indice de couleur 0 est transparent dans chacun : un sprite passe devant le décor, le texte s’écrit par-dessus tout.

Les 128 sprites et les deux plans de tuiles sont gérés par le circuit : un sprite reçoit une vitesse et se déplace seul, rebondit sur les bords, signale ses collisions. Les tables raster changent la couleur de fond ou le défilement à chaque ligne, comme sur les machines 8 bits.

  1. 7TextePRINT, le curseur, l’éditeur
  2. 6Sprites128 sprites, jusqu’à 64×64, zoom ×2, miroirs
  3. 5Bitmap640×480, deux pages : on dessine l’une pendant qu’on montre l’autre
  4. 4Sprites « derrière »sous le dessin
  5. 3Tuiles Bcarte 64×64 de tuiles 8×8, défilement
  6. 2Tuiles A1024 tuiles, défilement par ligne
  7. 1Fondune couleur, ou une par ligne (raster)

04 / LE SON ET LA PAROLE

Deux puces, deux voix.

TS-26, la puce son

Quatre voix dans l’esprit du SID du Commodore 64 : chacune choisit sa forme d’onde (triangle, dent de scie, impulsion à rapport cyclique réglable, bruit), son enveloppe ADSR, la synchronisation ou la modulation en anneau. Un filtre passe-bas, passe-bande ou passe-haut, résonant, traite les voix choisies ; un cinquième canal joue des échantillons rangés en mémoire. Le son est calculé à l’échantillon près dans le navigateur, sans saccade quand l’image ralentit.

Voix
4, plus un canal d’échantillons
Fréquence
pas de 0,0596 Hz (1 MHz / 2^24)
Formes
triangle, dent de scie, impulsion, bruit
Filtre
coupure sur 11 bits, résonance 4 bits
Registres
&HA600, 64 octets

MEA8000, la parole

La puce du synthétiseur vocal des Thomson, refaite d’après sa documentation : une impulsion ou un bruit traverse quatre résonateurs, réglés par des trames de 4 octets qui glissent de l’une à l’autre. Le TO2026 y ajoute la lecture du français : SPEAK "Bonjour" passe le texte en phonèmes, puis en trames. La voix est robotique, comme en 1985, mais elle se comprend.

Synthèse
par formants, 8 kHz
Trame
4 octets : 8, 16, 32 ou 64 ms
Formants
4 résonateurs en cascade
Texte
français, règles sans dictionnaire
Registres
&HA7FE, 2 octets

05 / LE DISQUE ET LE RÉSEAU

Quatre disques, et une prise réseau.

Le DOS

Quatre lecteurs à dossiers : le disque de travail gardé dans le navigateur, une disquette perdue à la fermeture, un disque sur le serveur ouvert par ProAdmin et le disque système, protégé. Chaque fichier porte un en-tête à la manière de GEOS : son type, son auteur, une icône de 24×16 points et ses dates. Les programmes du BASIC 128 finissent en .BAS, ceux du BASIC 2026 en .B26. DEVICE, COPY, BACKUP et DSKINI les gèrent depuis les deux BASIC.

Capacité
16 Mo
Chemins
dossiers, « / », noms jusqu’à 40 caractères
En-tête
type, auteur, icône, dates
Persistance
IndexedDB du navigateur

N:, le réseau

Dans l’esprit de FujiNet, le réseau s’ouvre comme un fichier : OPEN "I",#1,"N:https://…" lit une page, PRINT # envoie des données, et les fonctions JSON du BASIC 2026 en extraient les valeurs. Les WebSocket donnent des échanges en direct. Un navigateur ne pouvant pas ouvrir de connexion TCP brute, un site qui refuse les appels d’une autre origine passe par une passerelle, réglée par NET PROXY.

Protocoles
HTTP(S), WebSocket
Données
texte, JSON
Accès
comme un fichier, N:
Passerelle
NET PROXY

06 / LE DÉMARRAGE

Comme en 1984, la cartouche décide.

  1. Le menu

    À la mise sous tension, l’écran du TO7/70 : des choix numérotés, qu’on touche au crayon optique, ici à la souris ou au clavier. Sans cartouche, l’ordinateur ne sait rien faire : il ne reste que le crayon optique.

  2. Les cartouches

    La cartouche apporte le langage et ses choix au menu : BASIC 128, ou BASIC 2026 avec la disquette, qui ouvre directement le bureau. Changer de cartouche redémarre la machine.

  3. Le module d’extension

    La synthèse vocale, le son et le réseau sont des puces qu’on branche ou qu’on retire ; une puce retirée se tait, comme si la carte était absente.

  4. La release

    Chaque construction de la machine porte un numéro, affiché sur l’écran du BASIC 2026 : on sait toujours quelle version tourne.

Le voir tourner.

Tout ce qui est décrit ici fonctionne dans votre navigateur, sans rien installer.

Explorer la machine La référence des langages