it regularly difficult to spot, aside from maybe by a genuine Rolex replica history specialist, in light of the fact that the best phony Rolex are 95% made by Rolex. If you want to know how often you should optimally be winding your rolex replica watch, Click Here.

Phosphoric — un ému...
 
Notifications
Retirer tout

Phosphoric — un émulateur ORIC-1 / Atmos cycle-accurate en C11, tout équipé

1 Posts
1 Utilisateurs
0 Reactions
2 Vu
185656424
(@185656424)
Posts: 1
New Member
Début du sujet
 
[#408]

Phosphoric — un émulateur ORIC-1 / Atmos cycle-accurate en C11, tout équipé

Bonjour à toutes et à tous,

J'aimerais vous présenter Phosphoric, un émulateur ORIC-1 / Atmos écrit entièrement en C11 portable. L'objectif : la fidélité matérielle d'abord, enveloppée dans une boîte à outils vraiment moderne. SDL2 est optionnel, donc il tourne aussi en mode headless (CI, scripts, automatisation).

Cœur matériel
- MOS 6502 — 151 opcodes officiels, 13 modes d'adressage, timing cycle-accurate, BCD, bug de page du JMP indirect, IRQ à niveau.
- VIA 6522, PSG AY-3-8910 (3 voies + bruit + 16 enveloppes), ULA précise à la scanline (TEXTE 40×28 + HIRES 240×200).
- Microdisc (WD1793, 4 lecteurs, Sedoric) et cassette (.TAP, fast-load optionnel).
- Détection automatique du BASIC 1.0 (ORIC-1) et du BASIC 1.1 (Atmos) d'après la ROM.

Gestion des médias
- Overlay de changement à chaud (F6) — changer cassettes et disquettes (lecteurs A–D), avec éjection et write-back des écritures disque du jeu, sans quitter l'émulateur.
- Write-back disque optionnel vers les fichiers .dsk (--disk-writeback, en place, opt-in).

Périphériques & connectivité — c'est là que ça s'élargit
- Série (ACIA 6551) : loopback, TCP, PTY, modem Hayes, port COM réel, pipe fichier.
- Digitelec DTL 2000 (PIA 6821 + ACIA 6850 fidèles) et V23 / Minitel / Prestel 1200/75.
- Modem PicoWiFi avec terminaison TLS réelle (HTTPS pour l'Oric).
- LOCI (RP2350) : bac à sable flash ou image SD FAT16/32 brute.
- MIDI Mageco (MC6850) : entrée/sortie ALSA en temps réel, lecture de Standard MIDI Files dans l'Oric, plus la variante ORICON.
- Joystick IJK (flèches ou manette SDL2), imprimante Centronics, traceur 4 couleurs MCP-40 (export BMP).

Vidéo & graphismes
- Profil OCULA d'ULA étendue (--ula ocula) : palette redéfinissable, texte 80 colonnes, HIRES 320×200, palette par scanline, bordure overscan animée.
- Mise à l'échelle x1–x4, plein écran, rendu logiciel de secours pour les configs GPU/pilotes capricieuses.

Capture & streaming
- Captures d'écran (PPM/BMP), dump de trames, enregistrement vidéo Motion-JPEG AVI.
- Chromecast — serveur MJPEG intégré et client CASTV2 natif avec découverte des appareils.
- Build WASM / web.

Débogage & outillage développeur
- Débogueur REPL interactif (breakpoints, watchpoints, pas-à-pas), TUI ncurses et stub GDB distant.
- Trace d'instructions CPU, trace IRQ, profileur, dump RAM, analyse de ROM, chargement de table de symboles (.sym/.lab).
- Enregistrement/rejeu d'entrées déterministe (movies), save-states binaires (.ost), protocole de contrôle IPC pour intégration IDE, et benchmark de débit headless.
- Partage du système de fichiers hôte (--hostfs), dispositions AZERTY/QWERTY.
- Outils de conversion : bas2tap, bin2tap, tap2sedoric.

Qualité
~800+ tests unitaires/d'intégration autonomes (tous au vert), propre sous Valgrind, avec cibles de couverture et d'analyse statique — chaque commit garde la suite passante.

Dépôt & build
👉 https://github.com/benedictemarty/Phosphoric
make SDL2=1 # build standard
make tests # lancer la suite de tests

Un mot pour Oricutron 🙏
Phosphoric ne serait pas là sans le travail de référence de la communauté, et tout particulièrement Oricutron de Pete Gordon et ses contributeurs : un émulateur formidable qui a fixé la barre, documenté tant de subtilités du matériel Oric et accompagné des années de homebrew. Le file-requester F6 de Phosphoric s'en inspire directement (réécrit en clean-room, sans copier son code). Merci, chapeau bas.

C'est un projet fait par passion pour l'Oric, et vos retours / rapports de bugs compteraient énormément. Je réponds avec plaisir à toute question technique.

À bientôt,

Béné


Ce message a été modifié Il y a 56 minutes par 185656424
 
Posté : 25 juin 2026 16 h 43 min
Share: