BASICODE#

… ein Esperanto für Computer.

Es wurde von niederländischen Computerspezialisten um 1979 entwickelt, um einen einheitlichen Sprachstandard für die Programmiersprache BASIC festzulegen. BASICODE ermöglicht , dass unabhängig vom verwendeten Rechnertyp Programme ausgetauscht und im Rundfunk übertragen werden können. Auch der WDR-Computerclub und die BBC haben derzeit Basicode-Programme ausgestrahlt.

Die bis zum Jahre 1991 in den Niederlanden bestehende Stiftung (NOS) unter dem Vorsitz von Klaas Robert hat dem Rundfunk der DDR die Rechte zur Anwendung übertragen. In diesem Zuge sind dann auch die Bascoder für die folgenden Computertypen entwickelt worden:

AC1, Z1013, die KC-Reihe aus DDR-Produktion, CPC 464 und 6128, C 64 und C 128, C plus 4 und C 16, Atari XL/XE, Atari ST, ZX-Spectrum, IBM-kompatible PC`s u.a.

Weiterhin mussten durch die Definition eines einheitlichen Datenformats für die damals als Datenträger üblichen Compact Cassetten die Datenrekorder etwas modifiziert werden.

Der Atari-Bascoder#

V1.1 von Andreas Graf,

Diplomphysiker, ehem. wissenschaftlicher Mitarbeiter an der Akademie der Wissenschaften der DDR. Er beschäftigte sich mit Systemsoftwareentwicklung für spezielle Rechnersysteme und schrieb den Bascoder für die ATARI-Typen XL und XE, wobei auch ein spezieller BASIC-Interpreter entstand. Weiter fertigte er die hier vorliegende Beschreibung des Bascoders an.

Bascoder für ATARI 800XL/XE 600XL 130XE#

Allgemeines#

Da bislang für die ATARI-Rechner kein Bascoder zur Verfügung stand, waren bei der Entwicklung zwei Aspekte wesentlich: Erstens sollte das Programm schnell entwickelt werden, um möglichst bald den ATARI-Nutzern die Mitarbeit bei BASICODE zu ermöglichen und den Software- und Datenbestand von BASICODE zugänglich zu machen. Zweitens sollte die verwendete Hardware so einfach wie möglich und die Änderungen an Geräten so gering wie möglich sein. Unter diesen Prioritäten hat an einigen Stellen die "Schönheit" des Programms etwas gelitten. An der Zuverlässigkeit und Portabilität wurden jedoch keine Abstriche gemacht. Auf zwei Variablen der Hardware-Änderung wird am Ende eingegangen.

Software#

Für den ATARI-Rechner stehen vor allem das ATARI-BASIC und das TURBO-BASIC XL zur Verfügung. Beide BASIC-Dialekte weichen in mehreren Punkten stark von den üblichen MICROSOFT-BASIC und allen daraus abgeleiteten Varianten ab. Das Grundprinzip dieser Interpreter liegt jedoch der Struktur von BASICODE zugrunde. Deshalb kamen die o.g. ATARI-BASIC nicht für BASICODE in Betracht. Nun gibt es zwar für den ATARI auch ein MICROSOFT-BASIC, aber dieses ist so groß, so schwerfällig und teilweise fehlerbehaftet, dass sich das BASICODE-Testprogramm (17K) nicht mal mehr laden, geschweige denn abarbeiten ließ. Deshalb wurde für den ATARI ein bei anderen Rechnern unüblicher Weg beschritten. Es wurde insgesamt für BASICODE ein spezieller BASIC-Interpreter geschrieben, der zugleich die Arbeitsweise von BASICODE(Lesen und Schreiben von BASICODE-Programmen, Bearbeiten von BASICODE-Datenbeständen usw.) als seinen normalen Standart ansieht. Dieser Interpreter bearbeitet alle in BASICODE zugelassenen BASIC-Befehle und -Funktionen. Er kann aber auch als neuer BASIC-Interpreter selbständig benutzt werden. Dabei gibt es die folgenden Besonderheiten:

AND; NOT; OR#

Die Operationen werden bitweise ausgeführt.

INPUT#

Der Befehl darf nur im Programm benutzt werden, im Direktmodus ist die Zuweisung zu benutzen. INPUT lässt(erweitert gegenüber BASICODE-3) mehrere Variablen, die mit Komma getrennt sind, zu.

RESTORE#

Ebenfalls über BASICODE-3 hinaus, ist hinter RESTORE auch eine Zeilennummer zulässig. Weiterhin seien alle Funktionen und Kommandos vom neuen ATARI-Interpreter, die zusätzlich zu dem in diesem Abschnitt beschriebenen BASICODE-3-Befehlsvorrat aufgenommen wurden oder abweichendes Verhalten zeigen, alphabetisch aufgeführt:

C. #

C.(I)#

Funktion zum Schließen einer Datei. Sie nimmt einen logischen Wert an, =0 falls o.k., <>0 im Fehlerfall. I ist die logische Kanalnummer des Files (s. O.Befehl).