Skip to content

Phosphoric 2.0.0 — la machine cadencée au cycle

Choose a tag to compare

@benedictemarty benedictemarty released this 11 Sep 19:37
· 100 commits to main since this release
v2.0.0

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 .ost 1.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.0 requis), docs incluses.
  • phosphoric-2.0.0-windows-x86_64.zip — oric1-emu.exe + SDL2.dll + libwinpthread-1.dll (build MinGW du workflow windows-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.