Phosphoric 2.0.0 — la machine cadencée au cycle
Phosphoric 2.0.0 — la machine cadencée au cycle
Première version majeure. Ce qui change depuis la 1.x, et l'annonce qu'on retire, sont dans la note technique docs/articles/v2-cycle-stepped.md ; ce qui est exact et ce qui ne l'est pas, composant par composant, dans docs/ACCURACY.md.
- Cœur 6502 micro-séquencé : un accès bus par cycle, accès factices du NMOS compris — 100,00 % de séquence bus exacte sur les 2 440 000 cas de l'oracle SingleStepTests/65x02 ; interruptions échantillonnées au cycle pénultième.
- Horloge maître : un appel fait avancer toute la machine d'un cycle (ULA → CPU → périphériques), jamais à vide.
- VIA au cycle (période Timer 1 = N+2), ULA une cellule de 6 pixels par cycle (splits raster), PSG à horloge/8 (enveloppe corrigée, plus de repliement, étage de sortie relevé sur le schéma), WD1793 LOST DATA et protection en écriture, cassette parité impaire.
- Savestates : point de reprise exact, même pris en pleine trame ; les
.ost1.x se lisent toujours. - Non revendiqué : « exacte au cycle » pour la machine entière — le FDC reste cadencé par des délais forfaitaires, le calage horizontal de l'ULA n'est pas calibré contre du matériel.
Fichiers
phosphoric-2.0.0-linux-x86_64.tar.gz— binaire Linux x86_64 (SDL2 dynamique :libSDL2-2.0.so.0requis), docs incluses.phosphoric-2.0.0-windows-x86_64.zip—oric1-emu.exe+SDL2.dll+libwinpthread-1.dll(build MinGW du workflowwindows-build).
Les ROM ne sont pas distribuées : -r roms/basic11b.rom (Atmos) ou basic10.rom (ORIC-1).
La page WebAssembly (benedictemarty.github.io/Phosphoric) reste sur le build 1.49.0 pour l'instant.