|
Bugfixes am Forum
Subdomains aktiviert
Counterscript entfernt
|
| |
|
|
Referenzhandbuch |
|
|
Referenzhandbuch
|
Kapitel 18
|
Compiler-Anweisungen
Das folgende Kapitel befaßt sich mit den Compiler-Direktiven, also den Kommandos, die festlegen, wie compiliert wird.
Bedingungsabhängiges Compilieren, Macros, Include-Files und mehr finden Sie in diesem Kapitel.
Anweisung: USEPATH
Syntax: USEPATH Pfadtext
Modus: Amiga/Blitz
USEPATH erlaubt die Festlegung eines Kurzpfades bei Anwendung von NEWTYPE-Variablen.
Wir nehmen folgenden Code an:
aliens()\x=160
aliens()\y=100
aliens()\xs=10
aliens()\ys=10
Bei Benutzung von USEPATH sieht derselbe Code so aus:
USEPATH aliens()
\x=160
\y=100
\xs=10
\ys=10
Sobald AB2 eine Variable findet, die mit dem Backslashzeichen "\" beginnt, setzt AB2 einfach den gewählten
USEPATH-Text voran.
siehe auch: NewType
Anweisung: BLITZ
Syntax: BLITZ
Modus: Amiga/Blitz
Die BLITZ-Direktive schaltet in den Blitzmodus.
Beachten Sie:
Das Multitasking wird ausgeschaltet, nur im Blitzmode nutzbare Befehle sind jetzt ausführbar, nur im Amigamode nutzbare Befehle sind
nicht mehr verwendbar. (Slices und Blitzkeys u.a. sind verwendbar).
Voreingestellt ist Amigamodus.
siehe auch: AMIGA, QAMIGA
Anweisung: AMIGA
Syntax: AMIGA
Modus: Amiga/Blitz
Die AMIGA-Direktive schaltet in den Amigamodus.
Beachten Sie:
Das Multitasking wird eingeschaltet, Befehle, die nur im Blitzmodus verwendet werden können sind nicht mehr erreichbar (Filezugriff
jetzt möglich).
Voreingestellt ist der Amigamodus.
siehe auch: BLITZ, QAMIGA
Anweisung: QAMIGA
Syntax: QAMIGA
Modus: Amiga/Blitz
Die QAMIGA-Direktive schaltet in den Quick-Amiga-Modus. Dies ist sinnvoll, wenn Sie nur kurz in den Amigamodus
wechseln wollen um z.B. eine Grafik einzuladen und der Blitzslice weiterhin sichtbar bleiben soll.
siehe auch: BLITZ, AMIGA
Anweisung: INCLUDE
Syntax: INCLUDE Filename
Modus: N/A
INCLUDE lädt ein File mit Namen Filename nach und compiliert den Inhalt
des Files. Das File muß mit dem AB2-Editor abgespeichert worden sein. ASCII- Files können nicht verwendet werden.
INCDIR wird benutzt, um einen Pfad für Filename zu erstellen.
siehe auch: XINCLUDE, IncBin
Anweisung: XINCLUDE
Syntax: XINCLUDE Filename
Modus: N/A
XINCLUDE steht für Exklusiv-INCLUDE. XINCLUDE arbeitet wie
INCLUDE, lädt aber ein File mit dem gleichen Namen nur einmal ein.
INCDIR wird benutzt, um einen Pfad für Filename festzulegen.
siehe auch: INCLUDE, IncBin
Anweisung: IncBin
Syntax: IncBin Filename
Modus: N/A
IncBin erlaubt das Hinzufügen von Binärfiles in den Objektcode. Dies ist für
Assemblerprogrammierer interessant. Das Einfügen von binären Daten mit großen Chunks in die Mitte des Basicprogramms ist
keine gute Idee und sollte deshalb unterlassen werden.
INCDIR wird benutzt, um einen Pfad für Filename festzulegen.
Anweisung: INCDIR
Syntax: INCDIR Pfadname
Modus: Amiga/Blitz
INCDIR erlaubt die Angabe eines AmigaDos-Pfades für die Direktiven INCLUDE,
XINCLUDE, INCBIN.
Beispiel:
INCDIR ":MyIncs/"
INCLUDE "mysource.src"
siehe auch: INCLUDE, XINCLUDE, IncBin
Anweisung: CNIF
Syntax: CNIF Konstante Vergleich Konstante
Modus: N/A
CNIF erlaubt eine vergleichsabhängige Compilierung eines Codeabschnittes. Der Vergleich erfolgt zwischen
zwei Konstanten.
Zum Vergleich stehen zur Verfügung: <, >,
=, <>, <= und
>=.
Ist der Vergleich richtig, wird normal weitercompiliert.
Ist der Vergleich falsch, wird der Code bis CEND nicht mitcompiliert.
Beispiel:
#debugit=1 ;ein Debug-Flag
For k=1 To 10 ;Anfang der Schleife
CNIF #debugit=1 ;ist das Debug-Flag=1 ?
NPrint k ;ja, schreibe den K-Wert
CEND ;Schluß der vergleichsabhängigen Compilierung
Next
MouseWait
siehe auch: CEND, CELSE, CSIF
Anweisung: CEND
Syntax: CEND
Modus: N/A
CEND markiert das Ende eines Blocks von bedingungsabhängig zu compilierenden Codes.
CEND muß immer einer CNIF- oder CSIF-Direktive
folgen.
siehe auch: CNIF, CSIF, CELSE
Anweisung: CSIF
Syntax: CSIF "String" Vergleich "String"
Modus: N/A
CSIF erlaubt die vergleichsabhängige Compilierung eines Codeabschnittes auf der Basis zweier Zeichenstrings.
Als Vergleich kann benutzt werden: <, >,
=, <>, <= und
>=.
Ist der Vergleich richtig, wird normal weitercompiliert.
Ist der Vergleich falsch, wird bis CEND kein Code erzeugt.
CSIF wird meist zur Überprüfung von Macroparametern benutzt.
Beispiel:
Macro test ; Test-Macro definieren
CSIF "`1=" ; Überprüfungs-Parameter
CERR "Illegal Macro Parameter" ; Fehler erzeugen falls 0
CEND
NPrint "`1" ; Print Parameter
End Macro ; Ende der Macrodefinition
!test{hello} ; dies wird OK erzeugen
!test ; und dies einen Fehler
siehe auch: CEND, CNIF, CELSE
Anweisung: CELSE
Syntax: CELSE
Modus: N/A
CELSE kann zwischen CNIF oder CSIF und
CEND benutzt werden, um bei einem falschen Vergleichsergebnis einen alternativen Code zu erzeugen.
siehe auch: CNIF, CSIF, CEND
Anweisung: CERR
Syntax: CERR Fehlermeldung
Modus: N/A
CERR erlaubt das Erzeugen einer Compiletime-Fehlermeldung.
CERR wird normalerweise in Verbindung mit Makros und bedingungsabhängiger Compilierung verwendet, um
Fehlermeldungen bei falschen Makroparametern auszugeben.
Anweisung: Macro
Syntax: Macro Makroname
Modus: N/A
Macro legt den Anfang eines Makrocodes fest. Der Text nach Macro bis
End Macro wird als Makroinhalt übernommen.
Beispiel:
Macro test ;Start einer "Test"-Makrodefintion
NPrint "Hello!" ;Makro-Inhalt
NPrint "This is a Macro!" ;...
End Macro ;Ende des "Test"-Makros
!test ;Macro...!test einfügen
MouseWait
siehe auch: End Macro
Anweisung: End Macro
Syntax: End Macro
Modus: N/A
End Macro kennzeichnet das Ende eines Makrocodes.
siehe auch: Macro
|
|
|
|
|
|