Kurz erklärt · Retro & DDR-Heimcomputer
BASIC ist eine einfache Programmiersprache, die 1964 für Einsteiger entwickelt wurde. Auf fast allen Heimcomputern der 1980er-Jahre war sie dabei: Programme bestehen aus nummerierten Zeilen, die ein Interpreter Schritt für Schritt ausführt.
Auch: Basic, BASIC-Interpreter, KC-BASIC, Beginner’s All-purpose Symbolic Instruction Code, BASIC programming language
Was ist BASIC?
BASIC steht für „Beginner’s All-purpose Symbolic Instruction Code“, frei übersetzt: eine symbolische Allzweck-Befehlssprache für Anfänger. Entwickelt wurde sie 1964 am Dartmouth College in den USA von John G. Kemeny und Thomas E. Kurtz. Ihr Ziel war, dass auch Studierende ohne Technikstudium einen Computer programmieren können.
Mit den Heimcomputern der späten 1970er- und 1980er-Jahre wurde BASIC zur Sprache für alle. Bei vielen Geräten steckte der BASIC-Interpreter fest im Festwertspeicher: einschalten, Befehl tippen, Programm starten. Unzählige Menschen haben so ihre ersten eigenen Programme geschrieben.
Jeder Rechner hatte dabei seinen eigenen Dialekt. Die Grundbefehle waren fast überall gleich, Befehle für Farbe, Ton oder Grafik unterschieden sich dagegen von Gerät zu Gerät.
Wie funktioniert BASIC?
Ein BASIC-Programm besteht aus Zeilen mit Nummern. Die Nummern legen die Reihenfolge fest und dienen als Sprungziele. Üblich waren Zehnerschritte, damit später noch Zeilen dazwischen passen. Mit RUN startest du das Programm, mit LIST zeigt der Rechner es wieder an.
Ausgeführt wird es von einem Interpreter: Er liest eine Zeile, deutet die Befehle darin und führt sie sofort aus, dann folgt die nächste Zeile. Genau das zeigt die Animation oben: Zeile 40 prüft, ob X noch kleiner als 3 ist, und schickt den Interpreter zurück zu Zeile 20.
| Befehl | Wirkung |
|---|---|
| gibt Text oder Zahlen auf dem Bildschirm aus | |
| INPUT | wartet auf eine Eingabe über die Tastatur |
| X=1 (LET) | speichert einen Wert in einer Variablen |
| IF … THEN | führt etwas nur aus, wenn eine Bedingung stimmt |
| GOTO | springt zu einer anderen Zeilennummer |
| FOR … NEXT | wiederholt einen Abschnitt mehrmals |
| GOSUB … RETURN | ruft ein Unterprogramm auf und kehrt zurück |
Weil der Interpreter jede Zeile bei jedem Durchlauf neu deuten muss, ist BASIC bequem, aber langsam. Dafür meldet er Fehler sofort, und du kannst eine einzelne Zeile ändern und gleich wieder starten – ideal zum Ausprobieren.
BASIC auf dem Robotron Z9001 und KC 87
Beim Robotron Z9001 und beim KC 85/1 war BASIC noch nicht eingebaut. Es kam von Kassette oder steckte als BASIC-Modul im Modulschacht. Erst der KC 87 hatte den Interpreter fest an Bord: rund 10 KB im Festwertspeicher, im Adressbereich C000h bis E7FFh.
Gestartet wird BASIC an der Eingabezeile „>“ des Betriebssystems mit dem Befehl BASIC. Danach fragt der Rechner nach „memory end“, also nach dem Ende des Arbeitsspeichers, den BASIC nutzen darf; ENTER übernimmt den Vorschlag. Meldet der Rechner stattdessen „start tape“, fehlt das eingebaute BASIC, und er will es von Kassette laden.
Eigene Programme speicherst du mit CSAVE auf der Datenkassette und lädst sie mit CLOAD wieder. Wer BASIC beim Z9001 erst von Kassette laden musste, hatte ohne Speichererweiterung nur noch etwa 5 KB für eigene Programme übrig.
Warum wurden schnelle Spiele selten in BASIC geschrieben?
Für Lernprogramme, Quiz und ruhige Spiele reichte BASIC völlig. Für flüssige Action dagegen kaum: Jede Zeile wird erst während des Laufs gedeutet, und auf einem 8-Bit-Rechner mit 2,46 MHz kostet das viel Zeit. Wer es schnell wollte, schrieb in Assembler, der vorab Maschinencode für den Prozessor erzeugt.
Beliebt war auch ein Mittelweg: das Hauptprogramm in BASIC, zeitkritische Teile als kleine Maschinencode-Routinen. Zeitschriften druckten außerdem lange Programmlisten zum Abtippen – mühsam, aber lehrreich.
Tipp: Willst du verstehen, wie ein Programm denkt, ist BASIC noch immer ein guter Einstieg: wenige Befehle, sofortige Rückmeldung und nichts, was zwischen dir und dem Ergebnis steht.
Unterschied: BASIC, Assembler und JavaScript
| Sprache | Wie läuft sie? | Typisch für |
|---|---|---|
| BASIC | ein Interpreter deutet Zeile für Zeile | Einstieg, kleine Programme auf Heimcomputern |
| Assembler | wird vorher in Maschinencode übersetzt | schnelle Spiele und systemnahe Programme |
| JavaScript | läuft im Browser und wird dort im Hintergrund übersetzt | Webseiten und Browserspiele heute |
BASIC lebt in vielen Nachfolgern weiter, die ohne Zeilennummern auskommen. Die Idee „eintippen und sofort ausprobieren“ findest du heute vor allem bei JavaScript, der Sprache, in der auch die Browserspiele auf Player 0o5 laufen.
BASIC in Spielen auf Player 0o5
Duum Z9001
Duum Z9001 zeigt, was ohne BASIC möglich ist: Der Ego-Shooter ist reiner Z80-Maschinencode und rechnet seine 3D-Ansicht aus Textzeichen am echten Rechner mit 5 bis 19 Bildern pro Sekunde.
Steine Z9001
Steine Z9001 braucht kein BASIC: Du gibst an der Eingabezeile „>“ des Betriebssystems
STEINEein, und das in Z80-Assembler geschriebene Spiel lädt von Kassette und startet nach knapp 2 Minuten von selbst.Hüpf Z9001
Hüpf Z9001 bringt 16 Level in 4 Welten, Endgegner und Musik in 26 869 Byte gepacktem Maschinencode unter – geschrieben in reinem Z80-Assembler statt in BASIC.
Häufige Fragen zu BASIC
Wofür steht die Abkürzung BASIC?
BASIC steht für „Beginner’s All-purpose Symbolic Instruction Code“. Die Sprache wurde 1964 entwickelt, damit auch Einsteiger ohne Vorkenntnisse Computer programmieren können.
Ist BASIC eine Interpreter-Sprache?
Auf den Heimcomputern meist ja: Ein Interpreter liest jede Programmzeile, deutet sie und führt sie sofort aus. Das ist bequem zum Ausprobieren, aber deutlich langsamer als vorab übersetzter Maschinencode.
Wie startet man BASIC auf dem KC 87?
An der Eingabezeile „>“ BASIC eingeben, ENTER drücken und die Frage nach „memory end“ ebenfalls mit ENTER bestätigen. Beim Z9001 und KC 85/1 ohne eingebautes BASIC erscheint stattdessen „start tape“.
Warum haben BASIC-Programme Zeilennummern?
Die Nummern legen die Reihenfolge fest und sind Sprungziele für Befehle wie GOTO. Meist nummerierte man in Zehnerschritten, damit später neue Zeilen dazwischen passen.
Sind die Z9001-Spiele auf Player 0o5 in BASIC geschrieben?
Nein. Spiele wie Duum, Hüpf oder Steine sind in Z80-Assembler geschrieben und laufen als Maschinencode – so erreichen sie Tempo und Umfang, die mit BASIC auf dem Z9001 nicht drin wären.
Verwandte Begriffe
- Retro & DDR-HeimcomputerAssemblerVon LD A,5 zu 3E 05: Was Assembler ist, wie aus Befehlswörtern Maschinencode wird und warum Spiele für 8-Bit-Rechner bis heute so geschrieben werden.
- Retro & DDR-HeimcomputerHeimcomputerTastatur, Fernseher, Kassette: Was einen Heimcomputer der 1980er ausmachte, wie es in der DDR aussah und wo du heute noch dafür geschriebene Spiele spielst.
- Retro & DDR-HeimcomputerRobotron Z9001Der DDR-Heimcomputer aus Dresden: Z9001, KC 85/1 und KC 87 erklärt – Technik, Grafik aus Zeichen, Kassette und Spiele, die du heute noch spielen kannst.
- Retro & DDR-HeimcomputerROM (Festwertspeicher)Speicher, der ohne Strom nichts vergisst: Was ein ROM ist, welche Arten es gibt und was im Festwertspeicher von Heimcomputern wie dem Robotron Z9001 steckte.
- Retro & DDR-HeimcomputerArbeitsspeicher (RAM)Der Schreibtisch des Prozessors: Was Arbeitsspeicher ist, warum er beim Ausschalten alles vergisst und wie Spiele die 48 KB des Robotron Z9001 ausreizen.
- Technik & PlattformJavaScriptDie Sprache hinter fast jedem Browserspiel: JavaScript liest Tasten, bewegt Figuren und zeichnet das Bild – direkt im Browser.


