Neun Zeilen Code

Als Homecomputer Ende der 1970er-Jahre anfingen, den Spielkonsolen langsam den Rang abzulaufen, verfuhr der bis dahin unangefochtene Marktführer Atari zweigleisig: Zum Einen entwickelte man eine eigene Homecomputer-Serie, die ihre Wurzeln allerdings in der Spielkonsolen-Technologie behalten sollte (alle 8-Bit-Atari-Computer behielten ihren Modul-Slot an der Oberseite, für den es etliche Spielmodule gab). Zum Anderen erstellte Warren Robinett 1978 für die massenhaft verkaufte „Atari 2600“-Spielkonsole ein „BASIC Programming“-Modul*:

Aufgrund des extrem kleinen Konsolen-RAM-Speichers von nur 256 Byte und der fehlenden Tastatur waren die Möglichkeiten dieses Programmiersystems natürlich beschränkt. Die Eingabe der Befehle erfolgte über zwei aneinander steckbare „Keyboard Controller“ (Atari CX-50). Zusammen mit dem BASIC-Modul wurden dazu Overlay-Folien angeboten, die die Tasten des rechten Controllers mit alphanummerischen Zeichen beschrifteten und die des linken Controllers mit Befehls-Shortcuts und einer Programm-Ablaufsteuerung:

Der minimale Speicher machte es nötig, (im Vergleich zu zeitgenössischen anderen Dialekten} mächtige BASIC-Befehle auf dem Spielmodul-ROM anzubieten, damit die VCS-Konsole mit einer möglichst turingvollständigen Programmiersprache aufwarten konnte. Jedes Programm durfte nämlich nur maximal neun Zeilen lang sein. Deshalb gab es Befehle, die – ähnlich bei verschiedenen Assemblern – mehrere Funktionen gleichzeitig innehatten. Beeindruckend lässt sich dies an einer sechszeiligen(!) Version des Pong-Spiels mit Grafik- und Sound-Ausgabe verdeutlichen, dessen Listing im Handbuch des Moduls zu finden ist:

1 Hor 2!Hor 2+Key
2 If Ver 1>90 Then Ver 1!88
3 If Hit Then Ver 1!9
4 Ver 1!Ver 1+If Ver 1 Mod 2 Then 8 Else 92
5 Hor 1!Hor 1+7
6 Goto 1

Atari selbst plante bezüglich des Eingabemediums offenbar mehrfach, eine eigene, separate Tastatur für die „VCS 2600“-Konsole herauszubringen; es blieb jedoch bei Prototypen. Anstelle dessen wurden Zweitanbieter aktiv: Von SpectraVideo (Universum) gab es eine Tastatur namens „Compumate SV-010„, die jedoch – anders als die CX-50-Controller – nicht an den Joystickports der Konsole angeschlossen wurde, sondern am Modul-Schacht. Der Grund dafür war, dass dieses Gerät nicht als Ergänzung zum BASIC-Modul gedacht war, sondern ein eigenes Programmiersystem darstellte: Es beinhaltete ein 16 KB BASIC-ROM, zusätzliche 1,75 KB RAM sowie eine Schnittstelle für einen Datenrekorder zum laden und speichern der Programme. Letzteres fehlte dem BASIC-Modul, womit es – wie schon die „Odyssey II“ (bzw. „Philips G-7000„) nur sehr bedingt zum Progammieren geeignet war. Na gut: Neun Zeilen Code sind schnell wieder eingetippt.

Ich habe mir das Modul, die Beschreibung und die Keyboard-Controller gekauft. Was mir noch „fehlt“, sind die Tastaturfolien, die ich in Kürze nachbasteln werde. Dann stelle ich hier ein paar Screenshots mit Programmbeispielen ein und drehe vielleicht auch mal ein kleines Video, das die Funktionalität des o.g. Pong-Programms vorführt.

*Nicht zu verwechseln mit dem jüngeren Entwicklungssystem BATARI BASIC!

Über Stefan Höltgen

siehe: http://about.me/hoeltgen
Dieser Beitrag wurde unter Computer- & Videospiele, Programmiersprachen, SF/Utopie/CompUtopia abgelegt und mit , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

2 Antworten zu Neun Zeilen Code

  1. Pingback: Zweieinhalb neue Computer | SimulationsRaum

  2. Pingback: Two and a half new computers | SimulationsRaum

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.