Aller au contenu
Phosphoneowiki
Sommaire

Phosphoneo pour les nuls

Un émulateur est un programme qui se fait passer pour une machine. Celui-ci se fait passer pour un Neo6502, une petite carte rétro, pour qu’on puisse essayer des programmes sans la carte.

La carte et son double

Le Neo6502 est une carte de 80 × 55 mm qui associe un vrai processeur 65C02 (celui des ordinateurs 8 bits des années 1980) à un microcontrôleur RP2040. Le 65C02 exécute les programmes ; le RP2040 fait tout le reste : il dessine à l’écran, joue les sons, lit les fichiers et le clavier. Cette partie s’appelle le firmware.

Phosphoneo reproduit cet ensemble dans un programme pour PC. On lui donne un programme du Neo6502 ; il l’exécute comme le ferait la carte, et on voit l’écran dans une fenêtre, ou on enregistre ce qu’il affiche.

Phosphoneo : ce qui tourne, et ce qui l'entoureUn programme .neo ou .bas est chargé dans la RAM de 64 Ko du processeur 65C02. Quand il écrit à l'adresse $FF00, il appelle l'API du firmware : le code de firmware/common, lié tel quel dans l'émulateur, qui s'occupe de l'écran, du son, des fichiers, du clavier et de la souris. À droite, l'hôte : fenêtre SDL, navigateur, ou rien, avec captures, vidéo et journaux. En bas, une seule horloge compte les cycles.Programme.neo · .bas · binairechargé dans la RAM65C02un accès bus par cyclevérifié sur 2 540 000 casRAM 64 Koet mémoire graphiqueAPI du firmwarefirmware/common, lié tel quelconsole, dessin, spritesson, 4 canauxfichiers, stockageclavier, souris, manettesérie USB (modem)$FF00Hôtefenêtre SDL2navigateur (WebAssembly)sans affichagecaptures, vidéo, WAVjournaux, trace, gdbHorloge : 6,25 MHz · une trame = 109 226 cycles (60 Hz) · minuteur 100 Hz compté en cycles émulés
Ce que contient Phosphoneo : le processeur, sa mémoire, l’API du firmware, et l’hôte autour.

Pourquoi pas simplement la carte ?

Parce qu’un essai sur la carte demande de la brancher, de copier le programme, de regarder l’écran à l’œil. Avec Phosphoneo, un essai tient en une ligne de commande, donne toujours le même résultat, et se range dans un script de test. On peut lui faire taper au clavier, bouger la manette, prendre une photo de l’écran au cycle voulu, ou filmer une partie.

Trois mots à connaître

  • Cycle : le battement du processeur. Phosphoneo compte le temps en cycles : 6 250 000 cycles font une seconde de machine. C’est ce qui rend ses essais répétables.
  • Firmware : le programme du RP2040. Phosphoneo n’en fait pas une imitation : il en exécute le code.
  • Capture de référence : une image prise par l’émulateur et gardée comme preuve. Si un changement modifie un seul pixel, un test le voit.

Et maintenant ?

Le premier lancement montre les trois commandes de base ; les options détaillent chaque réglage ; les recettes combinent plusieurs options pour des besoins précis.

Sources dans le dépôt : README.md, docs/ARCHITECTURE.md.