.tap
Cassettes Oric — chargement rapide ou lecture au niveau signal (--tape-signal) pour les chargeurs protégés.
Projet Tachibana · Émulateur Oric
ORIC-1 / Atmos — cycle-exact
Un émulateur Oric cycle-exact écrit en C11, fidèle jusqu'au timing du 6502, de la VIA 6522 et de l'ULA.
Il tourne en natif (SDL2) comme dans le navigateur (WebAssembly), sans dépendance externe. Périphériques d'époque, débogueur intégré, outils de conversion et de pilotage. Licence MIT.
Fonctionnalités
MOS 6502 (151 opcodes, BCD, IRQ), VIA 6522, ULA (texte 40×28 + HIRES 240×200, timing PAL) et PSG AY-3-8910 émulés cycle à cycle — ce qu'exigent les démos et le code sensible au raster.
Microdisc WD1793 (timing mécanique réel, boot Sedoric), cassette TAP jusqu'au niveau signal, ACIA 6551, carte Digitelec DTL 2000 (V23 Minitel), MIDI Mageco / ORICON, joystick IJK, imprimante Centronics et traceur MCP-40.
Interface LOCI (stockage SD FAT, USB HID), modem WiFi PicoWiFiModemUSB, et modem V23 / Digitelec pour rejouer la télématique et faire le pont avec le patrimoine Minitel / Vidéotex (projet PAVI).
Points d'arrêt conditionnels et raster, watchpoints, undo (rembobinage), désassembleur avec symboles, assembleur en ligne, TUI ncurses — et un stub GDB distant pour déboguer le 6502 depuis gdb / VS Code.
Mode --control (protocole texte pour l'IDE OricForge), API HTTP REST, enregistrement / rejeu déterministe des entrées (« TAS movie »), export vidéo AVI, captures d'écran et diffusion Chromecast / Google Cast.
Build SDL2 sous Linux, Windows et macOS, ou WebAssembly dans le navigateur — sortie octet-pour-octet identique. Clavier à l'écran, filtre CRT, save states .ost. Code publié sous licence MIT.
Voir toutes les fonctionnalités en détail → · Documentation technique →
Supports
Cassettes Oric — chargement rapide ou lecture au niveau signal (--tape-signal) pour les chargeurs protégés.
Disquettes Microdisc / Sedoric, avec timing mécanique réaliste du WD1793.
ROM machine bootables en $C000 : BASIC 1.0 / 1.1, FOCAL, COMAL, variantes FR / DE / ES…
États sauvegardés (save states) avec contrôle d'intégrité CRC32 — F2 / F4 pour sauver et recharger à chaud.
Télécharger & compiler
Le dépôt est public sous licence MIT. Clonez-le, ouvrez une issue, proposez un correctif.
github.com/benedictemarty/PhosphoricSous Debian / Ubuntu, avec SDL2 :
sudo apt install build-essential libsdl2-dev
make SDL2=1
# puis ./oric1-emu -r roms/basic11b.rom
Compilée en WebAssembly (make wasm) et déjà en ligne : elle sert aussi de bouton « Exécuter en ligne » sur les fiches du catalogue.
Feuille de route
Phosphoric est en développement actif (série 1.x-alpha), adossé à une large suite de tests automatisés (100 % au vert). État indicatif ci-dessous — le dépôt fait foi.
Émulation ORIC-1 / Atmos, Microdisc/Sedoric, cassette, ACIA, DTL 2000, MIDI, LOCI.
Builds SDL2 (Linux / Windows / macOS) et navigateur, sortie identique.
Audit ligne à ligne des cœurs face aux datasheets constructeur (WD1793, VIA 6522, PSG…).
ULA nouvelle génération (sprites, 80 colonnes, chunky 4bpp) comme référence logicielle vers une implémentation Verilog / FPGA.