Library-Aufrufe --------------- Hier liegt die Quelle der Verwirrung für viele Anwender. Mit Library-Aufrufen meinen wir den Aufruf von Routinen aus Amiga-Libraries, wie z.B. Intuition, Grafik oder DOS. HiSoft Basic ist zu 99% kompatibel mit dem AmigaBasic-Interpreter und im Gebrauch von Libraries. Um eine Library aufzurufen, brauchen Sie eine .bmap-Datei, die mit dem Programm "convertfd" auf der Extras-Disk erzeugt werden kann; allerdings sind bequemlichkeitshalber alle gebräuchlichen .bmap-Dateien im Verzeichnis .libs: auf Disk 1 enthalten. Die .bmap-Dateien werden nur zur Kompilierzeit gebraucht, und nicht dann, wenn das kompilierte Programm abläuft. Zusätzlich ist auf Disk 2 eine modifizierte convertfd.bas-Quelldatei enthalten. Der erste Schritt zum Gebrauch von Libraries liegt darin, die gewünschte Library anzugeben. Dies geschieht in der LIBRARY-Anweisung. Danach werden mit DECLARE-Anweisungen Funktionen definiert, wie z.B. in LIBRARY "dos.library" DECLARE FUNCTION SetComment&(nameptr&,comment&) LIBRARY Dies bedeutet, daß die DOS-Library gebraucht wird und SetComment eine Funktion ist. Beim Fehlen von DECLARE würde angenommen, daß SetComment eine Prozedur ist (d.h. besitzt kein Return-Ergebnis). Der Aufruf eines Unterprogramms aus einer Library funktioniert wie der Aufruf eines eigenen Unterprogrammes, z.B. LIBRARY "graphics.library" rp&=WINDOW(8) : a$="HiSoft-BASIC Intuition-Text" Text rp&,SADD(a$),LEN(a$)) oder CALL Text(rp&,SADD(a$),LEN(a$)) Um herauszufinden, welche Parameter übergeben werden müssen, schlagen Sie bitte in den ROM-Kernel-Handbüchern nach; alle Parameter werden als Langworte übergeben; d.h. für einige Aufrufe muß für Strings mit SADD die Adresse gefunden werden und ein CHR$(0) angefügt werden. Beachten Sie, daß die Namen mit denen in einigen Basic-Dialekten gleich sind; das Programm convertfd ändert sie, indem es ein x davor setzt, z.B. xREAD. Verwechseln Sie das nicht mit echten Maschinenaufrufen: die Syntax CALL LOC darf nicht in Library-Aufrufen verwendet werden. Beispiele für Library-Aufrufe finden Sie in GetFile auf Disk 2 und Libraries auf der Extras-Disk.