HiSoft Basic

Ein moderner Basic-Compiler, der in Deutschland nie so richtig beachtet wurde, ist HiSoft Basic.

Dabei klingen die Leistungsdaten von HiSoft Basic sehr beeindruckend: ein Basic- Compiler komplett in GEM eingebunden, mit Unterstützung für den Falcon und SpeedoGDOS. Das Programm war auf der Insel auch sehr erfolgreich, nur fand sich in Deutschland nie ein mutiger Vertrieb. In Großbritannien ist HiSoft hingegen so bekannt wie hierzulande ASH, mit dem Unterschied, das sich HiSoft an das Hardware-Geschäft herangetraut. Eine Zeitlang wurde auch FirST Basic, eine Einsteigerversion von HiSoft Basic vertrieben. Ein deutscher Distributor erbarmte sich für kurze Zeit dann doch des HiSoft Basics und vertrieb ihn - mit dem schon damals nicht allzu schlagendem Werbeargument, dass der neue Compiler ST-Basic-Programme kompilieren könne.

Hier sind bestenfalls drei Basic-Dialekte in Erinnerung geblieben: das ST-Basic, Omikron. Basic und GFA-Basic. Interessant ist die GEM-Einbindung dieser drei Programme. So warf das ST-Basic gleich vier Fenster auf den Bildschirm und war langsam. Deshalb wurde es eher zu einem warnenden Beispiel als einem leuchtenden Vorbild. Omikron und GFA verzichteten auf GEM - und handelten sich immer wieder Probleme mit neuer Atari-Hardware ein.

Ganz anders die Basic-Varianten außerhalb Deutschlands: Fast Basic, Softworks Basic und HiSoft Basic waren in GEM eingebunden und schneller als das ST-Basic.

Vielfach vorhanden, aber altertümlich verpackt dank Zahn der Zeit: die Voreinstellungen

Lieferumfang

HiSoft Basic wird mit einer Diskette und einer Kurzanleitung geliefert. In England gab es auch ausführlichere Anleitungen.

Das Basic ist einer kompakten Datei untergebracht, GEM-Editor und Compiler sind nicht voneinander getrennt. Als zweites Programm liegt - wie bei allen HiSoft-Produkten -, WERCS bei, ein Resource-Editor.

Sehr empfehlenswert ist es, im Internet auf die Suche nach Beispieldateien zu gehen, denn dem Programm liegen nicht viele Beispiele bei, so dass die wahr Leistungsfähigkeit des Basics leicht unterschätzt wird.

Komplett: Die Menüs von HiSoft Basic auf einen Blick

Editor

Beim Editor war HiSoft clever und benutzt den gleichen wie Lattice-C. Das bedeutet zwangsläufig etwas ungewöhnliche Tastenkombinationen (Alt+L: Öffnen, F5: Paste), aber in dem Bereich hat sich GFA-Basic auch nicht durch Standardtreue ausgezeichnet.

Da der Editor offensichtlich 1:1 übernommen wurde, gibt es einen Nachteil: die von GFA-Basic gewohnte und geschätzte Strukturierung des Quelltextes bei der Eingabe gibt es in HiSoft nicht - C-Programme werden eben formatfrei geschrieben. Das Einklappen von Prozeduren oder gar Syntaxeinfärbung kennt der Editor ebenfalls nicht.

Englisch ist vonnöten: Die Optionen des BASIC-Compilers

Positiv ist allerdings, dass der Editor absolut sauber lief - auch unter Betriebssystemen, die erst nach HiSoft Basic 2.1 veröffentlicht wurden. Es ist, gerade verglichen mit GFA, eine Freude, Blöcke zu markieren, auszuschneiden und einzufügen.

Im Quelltext lassen sich bis zu neun "Lesezeichen" setzen, die dann direkt angesprungen werden können. Diese erweisen sich besonders bei größeren Projekten als sinnvoll.

Die Suchen/Ersetzen-Funktionen sind äußert einfach: lediglich eine Unterscheidung zwischen Groß-/Kleinschreibung kann aktiviert werden.

Als kleinen Bonus gibt es eine Zeichensatzübersicht. Wer die nicht mag, kann auch auf externe Programme zurückgreifen, da weder Multitasking noch Accessories gesperrt werden. Die Ausnahme bilden lediglich die Dialoge des Editors, die modal sind und somit das Multitasking anhalten.

Einen Schock versetzt das Editor-Fenster mit der Meldung des freien Speicherplatzes: zehn KB wird angezeigt. Hintergrund ist, dass der Editor nur soviel Speicher reserviert, wie er braucht. In den Voreinstellungen muß deshalb festgelegt werden, wieviel Speicher der Textpuffer bekommen soll. Dieser Wert kann zwar während des Arbeitens geändert werden, aber die geöffneten Dateien müssen anschließend neu geladen werden.

Mit der voreingestellten Größe beansprucht das Programm etwa 460 KB.

Die britische Antwort auf faceVALUE: Enchant

Das Dateiformat

HiSoft-Basic Programme tragen die Endung BAS, aber lassen sich nach einem Doppelklick problemlos von GFA2.0 und Omikron Basic-Programmen unterscheiden: sie benutzen keine Tokens, sondern können als normale ASCII-Dateien auch in jedem Texteditor bearbeitet werden.

Anders ist es bei den Libraries, die zumeist in kompiliertem HiSoft Basic geschrieben sind.

Libraries

Libraries spielen bei HiSoft eine viel größere Rolle als bei GFA oder Omikron. Da HiSoft mit seinen Programmiersprachen von Anfang an auf mehreren Systemen präsent waren, konnte damit der Portierungsaufwand in Grenzen gehalten werden. So enthält HiSoft Basic eine Library die alle ST-spezifischen Befehle, die z.B. für das Ansprechen des AES, VDI oder GEMDOS notwendig sind. Um diese ST-Standard-Befehle anzusprechen, ist kein besonderes Kommando erforderlich.

Anders ist es bei den zusätzlichen Libraries von denen es im Internet einige gibt. Mit der Library MODPLAY können z.B. MOD-Dateien über den DSP abgespielt werden. Um eine neue Library zu installieren muß so vorgegangen werden:

  1. Kopieren der BIN-Datei in das LIB-Verzeichnis
  2. Starten von buildlib.ttp mit dem Dateinamen der Library (ohne ".BIN") und dem Parameter "-q".

Buildlib erstellt aus allen BIN-Dateien die HBASIC.LIB. Um die Befehle der neu eingebundenen Library zu benutzen, muß lediglich

    LIBRARY "MODPLAY"

eingegeben werden. Die Befehle der Library werden ganz normal benutzt, so als wären sie Standard-Basic-Befehle.

Neben den Standard-Libs gibt es u.a. Libraries zum Falcon, SpeedoGDOS, STE, DSP-Modplayer, CD-Laufwerke, System Audio Player und Networld. Letzteres ist eine Brücke zu STiK/STinG und ist auch für STOS erhältlich(!). Als kleines Beispiel ist ein 2KB-Telnet-Programm dabei. Die Anleitung beschreibt sogar, wie aus dem Telnet-Programm ein einfacher E-Mail-Client entstehen könnte.

Fairerweise soll hier nicht verschwiegen werden, das auch GFA-Basic die Möglichkeit bietet, neue Befehle in den Befehlsschatz aufzunehmen. Das Problem bei GFA ist, das es sowohl Interpreter- als auch Compilersprache ist. Der GFA-Compiler hat eine externe Library mit den benötigten Befehlen, der Interpreter nicht. Die Compilerlibrary läßt sich mit Licom patchen und Richard-Gordon Faika hat von dieser Möglichkeit bei der LicomLib fleißig Gebrauch gemacht.

Enchant...

...heißt die Antwort der HiSoft-Basic-Programmierer auf faceVALUE. Enchant ersetzt die mitgelieferte HGT (HiSoft GEM Toolkit) und ist eine Kombination aus bereits älteren und neu geschriebenen Routinen. Schon die HGT selber war eine Vereinfachung und ergänzte die normalen AES-Befehle, die es in HiSoft auch gibt und sich beim Aufrufen nicht von C unterscheiden, um neue und kürzere Befehle. Ähnlich wie faceVALUE unterscheidet Enchant zwischen GEM Toolkit und Modulen. Unter den Modulen finden sich alte bekannte wie die CD-Library. Weitere Module:

Zu "Sample" sei nur so viel gesagt, dass dieses Modul wohl mittlerweile überflüssig sein dürfte. Kaum noch jemand hat SAM (System Audio Manager) installiert, jetzt, wo das ungleich bessere Rational Sounds auch noch als Freeware freigegeben ist. Damals erschien der SAM jedoch in einer inoffiziellen neuen Version, deren Erscheinen in Deutschland kaum wahrgenommen, aber dafür in Großbritannien von der Atari Computing gewürdigt wurde.

Neben den Modulen liegen Enchant noch einige weitere HiSoft-Programme bei, u.a. das schon erwähnte Networld. Für das nötige Hintergrundwissen sorgen verschiedene Texte zu MIDI, NVDI, Grafik- und Audioformaten.

Die Qualität der GEM-Library läßt sich grob mit faceVALUE vergleichen. Enchant beschränkt sich allerdings mehr auf die sinnvollen Bereiche der GEM-Programmierung und verzichtet somit auf Features wie animierte Radio- und Checkbuttons. Das Aussehen der erweiterten Objekte paßt sich dem System an. Neben Tastaturbedienung für alle Objekte werden nicht-modale Dialoge, Mac-Radio/Checkbuttons, Popup-Menüs, Iconify und einiges mehr unterstützt.

Enchant in Aktion.

Enchant war bisher Kommerziell, doch sowohl Paul Jones als auch Matthew Bacon sind in andere Projekte eingespannt, wobei letzterer der Atari-Welt durch die MyAtari erhalten bleibt. Matthew hat unter [1] einen Großteil der frei erhältlichen HiSoft Basic-Sourcecodes gesammelt - immerhin ein paar Megabyte. Ein großer Teil davon sind sogar relativ moderne GEM-Anwendungen. Enchant wird bald als Freeware freigegeben - und das inklusive Sourcecode. Damit dürfte HiSoft zumindest so zukunftssicher wie die anderen Basic-Dialekte sein.

Dokumentation

Mit etwas Glück sind noch Bücher zu HiSoft Basic erhältlich. Zumindest gab es ein ausführlicheres "Extended Manual", auf das im mitgelieferten Handbuch sogar verwiesen wird. Mögliche Bezugsquellen wären Best oder B&C, wer den London-Trip mit etwas Computer-Shopping verbinden will, kann auch in den Retro-Shops der Stadt stöbern.

Fazit

Es ist schon erstaunlich: mit etwas zusätzlichem Feinschliff wäre HiSoft Basic das ideale Basic als Beilage für jeden ST gewesen. Auch heute eignet es sich zur Programmierung aller Anwendungstypen - und es ist schon sehr angenehm, das Programm nicht mit mehreren Patches auf Farblauffähigkeit patchen zu müssen.

Wer sich das Basic aus England einmal gönnen möchte - HiSoft Basic ist ein recht geläufiges Programm und bei verschiedenen Online-Händlern erhältlich.

[1] http://www.ataritoday.com/extra/


Mia Jaap
Links

Copyright-Bestimmungen: siehe Über diese Seite
Classic Computer Magazines
[ Join Now | Ring Hub | Random | << Prev | Next >> ]