- AmigaBASIC
-
AmigaBasic Entwickler Microsoft Corporation Aktuelle Version 1.2 Betriebssystem AmigaOS Kategorie BASIC-Interpreter und Entwicklungsumgebung Deutschsprachig Nein AmigaBASIC war eine von Microsoft entwickelte BASIC-Version für den Commodore Amiga, welche zum Lieferumfang der AmigaOS-Versionen 1.1 bis 1.3 gehörte. Es löste das ABasiC (von Metacomco) der Version 1.0 ab und wurde seinerseits mit der AmigaOS-Version 2.0 von ARexx abgelöst. Da der Amiga in Deutschland erst einige Monate später als in USA ausgeliefert wurde, wurde er dort von Anfang an mit AmigaBASIC statt ABasiC ausgeliefert. AmigaBASIC blieb die einzige Software, die Microsoft für den Amiga herstellte.
Inhaltsverzeichnis
Aufbau
AmigaBASIC gehörte zu den ersten BASIC-Versionen, welche ohne Zeilennummern auskam und in Ansätzen eine strukturierte Programmierung ermöglichte und war vom etwas älteren Macintosh-BASIC von Microsoft abgeleitet. Für Umsteiger, die bisher andere BASIC-Dialekte kannten, war die integrierte Entwicklungsumgebung sowie der Aufbau der Sprache zukunftsweisend. Problematisch hingegen war die Übernahme bestehender BASIC-Programme. Es stellte sich jedoch sehr schnell heraus, dass die umfassenden Möglichkeiten des Commodore Amiga nur unzureichend genutzt werden konnten – obwohl Microsoft AmigaBASIC mit einer speziell auf den Amiga abgestimmten Bibliothek auslieferte. Zwar konnte man aus BASIC heraus auf die System-Librarys zugreifen – doch der Umgang mit diesen erwies sich aus AmigaBASIC heraus als sehr umständlich und fehlerträchtig. So ließ sich z. B. der HAM-Modus unter AmigaBASIC nur unter der Zuhilfenahme der System-Librarys ansprechen.
Möglichkeiten
AmigaBASIC betrat durch den Verzicht auf Zeilennummern Neuland und ermöglichte die Definition von SUB-Routinen. Damit wurden AmigaBASIC-Programme übersichtlicher als diejenigen beispielsweise von GW-Basic. Der BASIC-Dialekt wurde zumindest zum Teil an die Möglichkeiten das Amigas angepasst. So gab es die Möglichkeit, die Maus abzufragen, und eine rudimentäre Möglichkeit der eventgesteuerten Programmsteuerung wurde implementiert. Ebenfalls genutzt werden konnten die Grafikmöglichkeiten und die Soundmöglichkeiten des Amiga – wenn auch nur unvollständig. Mit dem "say"-Befehl war die Ausgabe synthetischer englischer Sprache möglich.
Beschränkungen und Probleme
AmigaBASIC galt als unvollständig in seiner Entwicklung, als fehlerbehaftet und vor allem als sehr langsam. In einigen Fällen lag der Unterschied gegenüber einer C- oder Assemblerimplementierung beim Faktor 1000. Wurde – was zur damaligen Zeit üblich war – als kurzer Performancetest eine Leerschleife mit 1000 Durchläufen gemessen, so lag der Wert mit 800 ms nur dicht unter dem des C64 mit rund 1000 ms. In Anbetracht der Tatsache, dass die darunterliegende CPU etwa um den Faktor 10 schneller war, ein mehr als enttäuschendes Ergebnis.
Als Amigas mit mehr Speicher verfügbar wurden, stellte sich überdies heraus, dass AmigaBASIC auf Grund seiner Mac-Herkunft auf einen Adressraum von 24 Bit – entsprechend 16 MB Speicher – beschränkt war und auf einem Amiga, dessen RAM in höheren Bereichen lag, nicht mehr funktionierte.
Zudem litt AmigaBASIC unter dem damals sehr schlechten Ruf der Programmiersprache BASIC. Die meisten Anwender griffen daher sehr schnell zu C, Assembler oder Modula 2, da für den Amiga für diese Sprachen leistungsfähige Compilerpakete zur Verfügung standen. Mehrfach wurde durch Fremdhersteller versucht, durch einen Compiler (z. B. HiSoft Basic Compiler oder MaxonBASIC) AmigaBASIC aufzuwerten, doch stets ohne Erfolg. Das endgültige „Todesurteil“ für AmigaBASIC waren jedoch Lizenzkostenprobleme bei der Abrechnung mit dem Hersteller Microsoft.
Bedeutung
Auch wenn zum Teil beeindruckende Programme mit AmigaBASIC entwickelt wurden, so spielte dieser BASIC-Dialekt kommerziell nie eine Rolle. Dennoch ist AmigaBASIC auch ein Symbol für eine Zeit, in der noch Listings aus Zeitschriften abgetippt wurden, um so an kleine Programme oder einfache Spiele zu kommen. Alte, eventuell lieb gewonnene, AmigaBASIC-Programme lassen sich heute am ehesten auf QBasic oder mit etwas mehr Aufwand auf FreeBasic portieren.
Weiterentwicklung zum Freeware-Compiler „ACE-Basic“
ACE ist ein erweiterter AmigaBASIC-Compiler, der zusammen mit den Freeware-Tools A68K (Assembler) und Blink (Linker) allein ausführbare Programme erstellen kann. Aufbauend auf der Syntax von AmigaBASIC sind so Programme möglich, welche alle Fähigkeiten der Programmier-Umgebung Intuition unter AmigaOS komplett ausnutzen und die in der Ablaufgeschwindigkeit das interpretierte AmigaBASIC um Längen schlagen können. Erschaffen wurde dieser Compiler vom Australier David Benn, Launceston, Tasmania. Veröffentlicht wird er unter der GNU General Public License. Die aktuelle Version 2.4 (17. September 1996) ist auf dem Aminet als Download erhältlich, siehe Weblinks.
Literatur
Den AmigaOS-Versionen, bei denen AmigaBASIC mitgeliefert wurde, war ein Handbuch beigelegt, welches den Funktionsumfang in Form einer Referenz erläuterte. Insbesondere aus den Verlagen Data Becker und Markt und Technik gab es in den Jahren zwischen 1986 und 1991 sehr viel Literatur über die Programmierung in dieser Sprache, wovon einige bis heute in Retro-Bookshops erhältlich sind.
Weblinks
- Codebeispiel: Fraktalgebirge mit dem Amiga auf atarimagazines.
- ACE-Basic
Kategorien:- Programmiersprache Basic
- AmigaOS-Betriebssystemkomponente
- Historische Software
Wikimedia Foundation.