.tap herunterladen
Die Datei asteroric.tap (~23 KB) liegt bei den Assets des neuesten GitHub-Release. Sie ist Autorun: kein CLOAD eintippen, HIRES-Modus und Spiel starten beim Laden.
Tachibana-Projekt · Oric-1-Spiel
Asteroids — Oric-1 48K
Ein originalgetreuer Studienklon von Asteroids (Atari, 1979) für den Oric-1 48K: die Arcade-Logik, die Vektorzeichnung, der Sound — auf einem 6502 mit 1 MHz.
Geschrieben in C und 6502-Assembler (cc65). XOR-Darstellung in HIRES 240×200, Spielschleife mit konstanten 25 Hz, Asteroiden und Untertassen aus der Disassemblierung des Arcade-ROM rev 4, AY-3-8912-Sound auf 3 Kanälen, IJK-Joystick und konfigurierbare Tasten. Auf einem echten Oric-1 getestet. EUPL-1.2-Lizenz.
Funktionen
Bresenham-Segmente per XOR auf dem monochromen HIRES-Bildschirm: Zeichnen und erneut Zeichnen löscht, ohne etwas zu speichern. Selbstmodifizierende Assemblerroutine, byteweise Bündelung auf der horizontalen Achse, vorgerenderte Sprites für feste Formen.
Logik aus der Disassemblierung des Arcade-ROM rev 4 übertragen: Asteroidenformen mit 11-13 Eckpunkten, ansteigende Wellen, Zerfall in 3 Bruchstücke, Untertassen-KI abhängig vom Punktestand, Hyperraum, Schiff mit 5 Segmenten.
Player unter dem Timer-1-Interrupt mit 50 Hz: Kanal A für Effekte, B für den Thump-Thump-Herzschlag, C für die Untertasse. Hardware-Hüllkurven, acht nachgebildete Effekte, Titel-Jingle nach Grieg (zweistimmig).
Vollständiger A-Z-Vektorzeichensatz in XOR, passive Demo wie am Automaten, blinkendes „PRESS SPACE“, 7-Segment-Punktestand, „WAVE n“, Tabelle der fünf besten Ergebnisse.
Direktes Abtasten der Tastaturmatrix über den VIA (keine ROM-Abhängigkeit), Tasten vom Titelbildschirm aus neu belegbar (Taste K), IJK-Joystick-Interface am Druckerport gelesen — Protokoll auf echter Hardware validiert.
Originalcode unter EUPL 1.2 auf GitHub, Autorun-.tap im Release. Läuft im Emulator Phosphoric (Entwicklungswerkzeug des Projekts) und auf einem echten Oric-1.
Spielen
Die Datei asteroric.tap (~23 KB) liegt bei den Assets des neuesten GitHub-Release. Sie ist Autorun: kein CLOAD eintippen, HIRES-Modus und Spiel starten beim Laden.
Der Emulator Phosphoric als Oric-1 (BASIC-1.0-ROM) lädt die .tap direkt; make run aus den Quellen tut dasselbe, make run-joy mit dem emulierten IJK-Joystick.
Laden per Kassette oder über ein modernes Interface. HIRES-Videosignal mit 50 Hz (PAL) von einem externen Tester mit einem RGB2HDMI validiert; physisches IJK-Interface unterstützt.
Herunterladen & bauen
Das Repository ist öffentlich unter der EUPL-1.2-Lizenz (Originalcode). Klonen, ein Issue öffnen, eine Korrektur vorschlagen.
github.com/benedictemarty/oric-asteroidsMit cc65 (≥ 2.19), Python 3 für die Tabellen und Phosphoric zum Starten und Testen:
make # erzeugt build/asteroric.tap
make run # startet unter Phosphoric
make check # Aufnahme = bitgenaue Referenz
make host-test # Host-Tests (RNG, Tastentabelle)
Unter Phosphoric als Oric-1 oder auf einem echten Oric-1 48K. Das Handbuch beschreibt die Tasten, den Konfigurationsbildschirm und den Joystick.
Handbuch lesenRoadmap
Astéroric steht bei 1.0.0-beta (Phase 40, GitHub-Release vom 9. August 2026): ein vollständiges, spielbares Spiel, von einem externen Tester auf einem echten Oric-1 validiert. Vierzig Phasen geliefert, zwei „Senior“-Code-Reviews umgesetzt. Stand unten nur indikativ — das Repository ist maßgeblich.
Schiff mit 32 Winkeln, Schüsse, Asteroiden in 4 Formen × 3 Größen, Kollisionen, Punktestand, Leben, Wellen, Untertassen, Hyperraum, Game Over und fünf beste Ergebnisse.
Formen, Erscheinen, Zerfall, Untertassen-KI, Druck am Wellenende, Explosionen von Schiff und Asteroiden aus der Disassemblierung übertragen.
IRQ-Player, Hüllkurven, acht Effekte, Titel-Jingle (Grieg, gemeinfrei) zweistimmig.
Scheduler mit festem Schritt und Aufholen, keine Ruckler mehr; freie CPU-Zeit in drei Optimierungsphasen von 17,9 % auf 39,8 % erhöht.
50-Hz-Videosignal korrigiert (ULA-Attribut $1E), Torpedos mit 2×2 px, echtes IJK-Protokoll — drei Rückmelderunden eines Testers am physischen Oric-1.
CONTROLS-Bildschirm (Taste K im Titel): fünf neu belegbare Aktionen, Duplikate abgelehnt, ESC stellt wieder her.
Die .tap läuft nicht mit dem Atmos-ROM (BASIC 1.1): Nominalziel ist der Oric-1, Atmos-Kompatibilität wird ein eigener Sprint.
Bestenliste auf Kassette oder Diskette sichern, Microdisc-.dsk-Image, ausgerollte Zeichenschleifen, farbiges HUD-Band.
Artikel
Vierzig Phasen, um ein Vektorspiel von 1979 in 20.000 Zyklen pro Bild unterzubringen. Was nachgab, was sich wehrte, und was der Emulator vor uns verbarg. Artikel lesen →