WILLKOMMEN BEIM MEGA65! Herzlichen Glückwunsch zu Ihrem Kauf eines der lang ersehntesten Computer in der Geschichte der Informatik. Der MEGA65 ist ein von der Community entwickelter Rech- ner, der auf dem Commodore® 65 basiert. Dieser wurde 1989 entwickelt und sollte 1991 auf den Markt kommen.
Seite 18
in dem Maße wachsen, in dem klar wird, welche Programme durch die Leistung und die Funktionen dieses modernen Commodore-Computers erschaffen werden können. Gemeinsam werden wir eine neue ”Homebrew”-Community aufbauen, um Software und Projekte zu entwickeln, von denen wir nicht dachten, dass sie auf dem MEGA65 möglich sind.
BEFEHLE, FUNKTIONEN UND OPERATOREN Dieses Referenzhandbuch beschreibt alle Befehle, Funktionen und andere aufrufbaren Elemente von BASIC 65, einer erweiterten Version von BASIC 10. Einige von ihnen kön- nen ein oder mehrere Argumente annehmen, d.h. Eingaben die Sie als Teil des Befehls oder Funktionsaufrufs bereitstellen.
Seite 22
Es ist allgemein üblich, dass Befehle, Funktionen und Operatoren einen oder mehre- "HALLO" re ”Ausdrücke” verwenden. Ein Ausdruck ist nur ein schicker Name für etwas, das einen Wert hat. Dabei kann es sich um einen String (Zeichenkette) ( ), eine LEN("HALLO") * (3 XOR 7) Zahl (23.7) oder eine Berechnung, die eine oder mehrere Funktionen oder Operatoren ) beinhaltet, handeln.
BASIC 65-KONSTANTEN Beispiel Beispiel Dezimale ganze Zahl (integer) 32000 Dezimale Festkommazahl (fixed point) 3.14 -7654.321 Dezimale Fließkommazahl (floating point) 1.5E03 7.7E-02 Hexadezimale Zahl (hex) $D020 String (string) "X" "TEXT" BASIC 65-VARIABLEN Jede skalare Variable verbraucht 8 Byte Speicherplatz im Speicher. Der reservierte Bereich in Bank 0 von $F700-$FEFF kann 256 Variablen speichern.
Seite 24
dem String-Bereich, der in Bank 1 an der Adresse $F6FF beginnt und sich im Speicher nach unten absteigend erweitert. Jeder der oben genannten einfachen Variablentypen kann auch als Array verwendet werden, indem er mit einer DIM-Anweisung deklariert wird. Die Arrays werden bei der Deklaration für alle Elemente mit Null initialisiert. Wenn ein nicht deklariertes Array-Element verwendet wird, wird eine automatische implizite Deklaration durchgeführt, die die obere Grenze für jede Dimension auf 10 setzt.
BASIC 65-OPERATOREN BASIC 65 bietet eine Reihe von Operatoren, die für die meisten BASIC- Programmiersprachen typisch sind. Die Verwendung und der Vorrang entsprechen den Standards. A = B = Das Symbol = wird sowohl als Zuweisungsoperator als auch als relationaler Operator zur Prüfung der Gleichheit verwendet.
Zuweisungsoperator Symbol Beschreibung Operandentyp Beispiel Zuweisung alle A = 42, A$ ="HALLO", A = B < 42 Unäre mathematische Operatoren Name Symbol Beschreibung Operandentyp Beispiel Plus positives Vorzeichen numerisch A = +42 Minus - negatives Vorzeichen numerisch B = -42 Binäre mathematische Operatoren Name Symbol Beschreibung...
Boolesche Operatoren Schlüsselwort Beschreibung Operandentyp Beispiel boolesch A = B AND $FF Oder boolesch A = B OR $80 Exklusives Oder boolesch A = B XOR 1 Negation boolesch A = NOT 22 String-Operator Name Symbol Beschreibung Operandentyp Beispiel Plus + Verkettung String A$ = B$ + ".PRG"...
BASIC 65-BEFEHLSREFERENZ Symbol Bedeutung Sie können den Vorgang … so oft wiederholen, wie … Sie wollen, oder auch gar nicht. Alles, was zwischen den eckigen Klammern steht, ist optional und kann auch weggelassen werden. Sie müssen eine Option auswählen. Die Optionen <...
Token: Format: ABS(x) Zweck: Die numerische Funktion ABS(x) liefert den absoluten Betrag des nume- rischen Arguments x. x ist ein numerisches Argument (ganzzahlig oder reeller Ausduck). Notiz: Das Ergebnis ist vom Typ real (reelle Zahl). Beispiel: Verwendung von ABS:...
Token: Format: Operand AND Operand Zweck: AND führt eine bitweise logische UND-Verknüpfung von zwei 16-Bit- Werten durch. Ganzzahlige Operanden werden so verwendet, wie sie sind. Reelle Operanden werden in eine vorzeichenbehaftete 16-Bit- Ganzzahl umgewandelt (unter Verlust der Genauigkeit). Logische Ope- randen werden in 16-Bit-Ganzzahlen umgewandelt mit $FFFF, dezimal -1 für TRUE (wahr) und $0000, dezimal 0, für FALSE (falsch).
APPEND Token: $FE $0E Format: APPEND# Kanal, Dateiname [,D Laufwerk (drive)] [,U Gerät (unit)] Zweck: Öffnet eine vorhandene sequentielle Datei vom Typ SEQ oder USR zum Schreiben und positioniert den Schreibzeiger an das Ende der Datei. Kanal ist eine ganze Zahl, wobei: •...
Token: Format: ASC(String) Zweck: Nimmt das erste Zeichen des String-Arguments und gibt dessen numeri- schen Codewert zurück. Der Name wurde anscheinend gewählt, um eine Eselsbrücke zu ASCII zu bilden, aber der zurückgegebene Wert ist in Wirk- lichkeit der sogenannte PETSCII-Code. Notiz: ASC liefert bei einem leeren String den Wert 0 zurück.
Token: Format: ATN(numerischer Ausdruck) Zweck: Liefert den Arcustangens des Arguments. Das Ergebnis liegt im Bereich ( π/2 bis π/2) Notiz: Eine Multiplikation des Ergebnisses mit 180/π wandelt den Wert in die Einheit ”Grad” um. ATN ist die Umkehrfunktion zu TAN. Beispiel: Verwendung von ATN:...
AUTO Token: Format: AUTO [Schrittweite] Zweck: Ermöglicht das schnellere Eintippen von BASIC-Programmen. Nach Über- RETURN gabe einer neuen Programmzeile an den BASIC-Editor mit der Taste, erzeugt die AUTO-Funktion eine neue BASIC-Zeilennummer für die Eingabe der nächsten Zeile. Die neue Nummer wird errechnet, indem die Schrittweite zur aktuellen Zeilennummer addiert wird.
BACKGROUND Token: $FE $3B Format: BACKGROUND Farbwert Zweck: BACKGROUND (dt. ”Hintergrund”) setzt die Hintergrundfarbe des Bild- schirms auf das Argument, das im Bereich von 0 bis 255 liegen muss. Alle Farben innerhalb dieses Bereichs können mit dem Befehl PALETTE angepasst werden. Beim Start hat der MEGA65 nur die ersten 32 Far- ben konfiguriert, die in der folgenden Tabelle beschrieben sind.
Seite 37
Farben: Index und RGB-Werte der Farbpalette Index Rot Grün Blau Farbe (engl.) Farbe (dt.) 0 black schwarz 1 15 15 white weiß 2 15 0 red 15 cyan türkis 4 15 15 purple violett 0 green grün 15 blue blau 7 15 0 yellow gelb...
BACKUP Token: Format: BACKUP U Quelle TO U Ziel BACKUP D Quelle TO D Ziel [,U Gerät (unit)] Zweck: Die erste Form von BACKUP, mit der Angabe von Geräten (units) für Quelle und Ziel, kann nur für die Laufwerke verwendet werden, die an den internen FDC (Floppy Disk Controller) angeschlossen sind.
BANK Token: $FE $02 Format: BANK Banknummer Zweck: Wählt die Speicherkonfiguration für BASIC-Befehle, die 16 Bit-Adressen verwenden. Diese sind LOAD, LOADIFF, PEEK, POKE, SAVE, SYS, und WAIT. Nähere Informationen dazu finden Sie in der Beschreibung des Systemspeichers. Notiz: Ein Wert > 127 wählt eine Speicherkonfiguration mit sichtbarem I/O- Bereich.
BEGIN Token: $FE $18 Format: BEGIN ... BEND Zweck: BEGIN und BEND fungieren als ein Paar geschweifte Klammern um ei- ne zusammengesetzte Anweisung, die nach THEN oder ELSE ausgeführt wird. Dadurch wird die einzeilige Beschränkung der Standardanweisung IF ... THEN ... ELSE-Klausel umgangen. Notiz: Springen Sie nicht mit GOTO oder GOSUB in eine so zusammengesetzte Anweisung.
BEND Token: $FE $19 Format: BEGIN ... BEND Zweck: BEGIN und BEND fungieren als ein Paar geschweifte Klammern um ei- ne zusammengesetzte Anweisung, die nach THEN oder ELSE ausgeführt wird. Dadurch wird die einzeilige Beschränkung der Standardanweisung IF ... THEN ... ELSE-Klausel umgangen. Notiz: Das folgende Beispiel zeigt eine Besonderheit in der Implementierung der zusammengesetzten Anweisung.
BLOAD Token: $FE $11 Format: BLOAD Dateiname [,B Bank] [,P Adresse] [,R] [,D Laufwerk] [,U Gerät] Zweck: ”Binary LOAD” (dt. ”binäres Laden”) lädt eine Datei des Typs PRG in das RAM bei Adresse P. BLOAD hat zwei Modi: Der sogenannte ”flache” Speicheradressenmo- dus kann verwendet werden, um ein Programm an jede Adresse im 28 Bit (256 MB) Adressbereich, in dem RAM installiert ist, zu laden.
Seite 43
wendet wird, muss sie in Klammern gesetzt werden. Standardmäßig ist das Gerät auf 8 eingestellt. Notiz: BLOAD kann keine Bank-Grenzen überschreiten. Falls kein Parameter P angeben ist, verwendet BLOAD die Ladeadresse der Datei. Beispiel: Verwendung von BLOAD:...
BOOT Token: $FE $1B Format: BOOT Dateiname [,B Bank] [,P Adresse] [,D Laufwerk] [,U Gerät] BOOT SYS BOOT Zweck: BOOT Dateiname lädt eine Datei vom Typ PRG in das RAM in Adresse P und Bank B und startet den Code an der Ladeadresse. BOOT SYS lädt den Bootsektor von Sektor 0, Spur 1 und Gerät 8 an die Adresse $0400 in Bank 0, und führt anschließend einen JSR $0400 durch (Jump To Subroutine / dt.
BORDER Token: $FE $3C Format: BORDER Farbe Zweck: Setzt die Rahmenfarbe des Bildschirms auf den angegebenen Farbwert, der im Bereich von 0 bis 255 liegen muss. Alle Farben innerhalb dieses Bereichs können mit dem PALETTE-Befehl angepasst werden. Beim Start hat der MEGA65 nur die ersten 32 Farben entsprechend der folgenden Abbildung konfiguriert.
Token: Format: BOX x0,y0, x2,y2 [, gefüllt] BOX x0,y0, x1,y1, x2,y2, x3,y3 [, gefüllt] Zweck: Die erste Form von BOX, mit zwei Koordinatenpaaren und einem optio- nalen Parameter gefüllt, zeichnet ein einfaches Rechteck, wobei ange- nommen wird, dass die Koordinatenpaare zwei diagonal gegenüberlie- gende Ecken deklarieren.
BSAVE Token: $FE $10 Format: BSAVE Dateiname, P Startadresse TO P Endadresse [,B Bank] [,D Lauf- werk] [,U Gerät] Zweck: ”Binary SAVE” (dt. ”binäres Speichern”) speichert einen Speicherbereich in eine Datei des Typs PRG. BSAVE hat zwei Modi: Der sogenannte ”flache” Speicheradressenmodus kann verwendet werden, um einen Speicherbereich im 28 Bit (256 MB) Adressbereich, in dem RAM installiert ist, abzuspeichern.
Seite 49
Laufwerk (drive) ist die Laufwerksnummer bei Diskettenstationen mit zwei Laufwerken. Die standardmäßige Laufwerksnummer ist 0 und kann bei Diskettenstationen mit nur einem Laufwerk, wie der 1541, 1571 oder 1581, weggelassen werden. Gerät (unit) ist die Gerätenummer auf dem IEC-Bus. Normalerweise im Bereich von 8 bis 11 für die Diskettenlaufwerke.
BUMP Token: $CE $03 Format: BUMP(Typ) Zweck: Dient zur Erkennung von Sprite-Sprite (Typ=1)- oder Sprite-Daten (Typ=2)-Kollisionen. Der Rückgabewert ist eine 8-Bit-Maske mit einem Bit pro Sprite. Die Bitposition entspricht der Sprite-Nummer. Jedes gesetzte Bit im Rückgabewert zeigt an, dass das Sprite für seine Position seit dem letzten Aufruf von BUMP in eine Kollision verwickelt war.
BVERIFY Token: $FE $28 Format: BVERIFY Dateiname [,P Adresse] [,B Bank] [,D Laufwerk] [,U Gerät] Zweck: ”Binary VERIFY” (”binäres Überprüfen”) vergleicht einen Speicherbereich mit einer Datei des Typs PRG. Dateiname ist entweder ein String in Anführungszeichen, z.B. ”Daten” oder ein Stringausdruck in Klammern gesetzt, z.B. (FI$). Bank gibt die zu verwendende RAM-Bank an.
CATALOG Token: $FE $0C Format: CATALOG [Dateimuster] [,W] [,R] [,D Laufwerk] [,U Gerät] $ [Dateimuster] [,W] [,R] [,D Laufwerk] [,U Gerät] Zweck: Zeigt einen Dateikatalog/Verzeichnis der angegebenen Diskette bzw. des angebenen Diskettenimage. Der Parameter W (Wide, dt. ”breit”) listet das Verzeichnis drei Spalten breit auf dem Bildschirm auf und pausiert, wenn der Bildschirm mit einer Seite (63 Verzeichniseinträge) gefüllt ist.
Seite 53
Beispiel: Verwendung von CATALOG: Nachfolgend ein Beispiel, das zeigt, wie ein Verzeichnis mit dem Para- meter Wide (dt. ”breit”) aussieht:...
CHANGE Token: $FE $2C Format: CHANGE /Suchstring/ TO /Ersetzungsstring/ [, Zeilenbereich] CHANGE ”Suchstring” TO ”Ersetzungsstring” [, Zeilenbereich] Zweck: CHANGE führt ein Suchen und Ersetzen in dem BASIC-Programm, das sich derzeit im Speicher befindet, durch. Ein optionaler Zeilenbereich begrenzt die Suche auf diesen Bereich, ansonsten wird das gesamte BASIC-Programm durchsucht.
CHAR Token: Format: CHAR Spalte, Zeile, Höhe, Weite, Richtung, String [, Adresse des Zei- chensatzes] Zweck: Zeigt einen Text auf einem Grafikscreen. CHAR kann in allen Auflösungen verwendet werden. Spalte (in Einheiten von Zeichenpositionen) ist die Startposition der Aus- gabe in horizontaler Richtung. Da jede Spalteneinheit 8 Pixel breit ist, hat eine Bildschirmbreite von 320 einen Spaltenbereich von 0-39, während eine Bildschirmbreite von 640 einen Spaltenbereich von 0-79 hat.
Seite 56
String ist eine String-Konstante oder ein String-Ausdruck der ausgege- ben werden soll. Dieser String kann optional eines oder mehrere der fol- genden Steuerzeichen enthalten: CHR$(2) Ausdruck Tastenkombination Beschreibung CHR$(6) CTRL+B Leerzeichen CHR$(9) CTRL+F Reihenfolge umdrehen CHR$(15) CTRL+I Verknüpfe mittels AND CHR$(24) CTRL+O Verknüpfe mittels OR...
Seite 57
Beispiel: Verwendung von CHAR: Gibt den Text ”MEGA65” in der Mitte eines 640 x 400 Pixel großen Bild- schirms aus.
CHR$ Token: Format: CHR$(numerischer Ausdruck) Zweck: Gibt einen String zurück, der ein Zeichen enthält, dessen PETSCII-Code gleich dem Argument ist. Notiz: Der Argumentbereich reicht von 0 bis 255, so dass diese Funktion auch zum Einfügen von Steuercodes in Strings verwendet werden kann. Sogar das NULL-Zeichen mit dem Code 0 ist erlaubt.
CIRCLE Token: Format: CIRCLE x-Mittelpunkt, y-Mittelpunkt, Radius [, gefüllt] Zweck: Zeichnet einen Kreis mit dem Mittelpunkt (x,y) und dem Radius (Radius). Ein Sonderfall von ELLIPSE, bei dem für den horizontalen und vertikalen Radius derselbe Wert verwendet wird. x-Zentrum x-Koordinate des Mittelpunkts in Pixel y-Zentrum y-Koordinate des Mittelpunkts in Pixel Radius Radius des Kreises in Pixel gefüllt füllt den Kreis, falls ungleich Null.
CLOSE Token: Format: CLOSE Kanal Zweck: Schließt einen Eingangs- oder Ausgangskanal. Kanal Nummer, die bei einem früheren Aufruf von Befehlen wie APPEND, DOPEN oder OPEN vergeben worden ist. Notiz: Das Schließen von Dateien, die zuvor geöffnet wurden, bevor ein Pro- gramm beendet ist, ist sehr wichtig, insbesondere für Ausgabedateien.
Token: Format: CLR Variable Zweck: Dient der Verwaltung von BASIC-Variablen, -Arrays und -Strings. Die Laufzeit-Stackpointer und die Tabelle der offenen Kanäle werden dabei zurückgesetzt. Nach der Ausführung eines CLR-Befehls sind alle Varia- blen und Arrays nicht deklariert. RUN führt jeweils CLR automatisch aus. CLR Variable löscht die angegebene Variable (setzt sie auf Null).
Token: Format: CMD Kanal [, String] Zweck: CMD (Change Main Device, dt. etwa ”ändere Standardgerät”) leitet die Standardausgabe vom Bildschirm in den angegebenen Kanal um. Damit können Sie Programmlistings und Dateiverzeichnisse auf andere Ausga- bekanäle auszugeben. Es ist auch möglich, diese Ausgabe in eine Datei oder ein Modem umzuleiten.
COLLECT Token: Format: COLLECT [,D Laufwerk] [,U Gerät] Zweck: Stellt die BAM (Block Availability Map, dt. ”bla”) eines Datenträgers wie- der her und löscht dabei sogenannte ”Splat”-Dateien (Dateien, die ge- öffnet, aber nicht richtig geschlossen wurden) und markiert unbenutzte Blöcke als frei. Laufwerk (drive) ist die Laufwerksnummer bei Diskettenstationen mit zwei Laufwerken.
COLLISION Token: $FE $17 Format: COLLISION Typ [, Zeilennummer] Zweck: Aktiviert oder deaktiviert einen benutzerprogrammierten Interrupt- Handler. Ein Aufruf ohne Zeilennummer schaltet den Handler aus, wäh- rend ein Aufruf mit Zeilennummer ihn aktiviert. Nach der Ausführung von COLLISION mit Zeilennummer, unterbricht eine Sprite-Kollision des im Aufruf angegebenen Typs das BASIC-Programm und führt einen GOSUB- Sprung zur Zeile Zeilennummer aus, ab der Anwendercode für die Be- handlung von Sprite-Kollisionen erwartet wird.
Seite 66
Info: COLLISION wurde in BASIC 10 nicht fertiggestellt. Eine funktionierende Implementierung wird in einem zukünftigen BASIC 65-Update verfügbar sein.
COLOR Token: Format: COLOR Farbe COLOR <ON | OFF> Zweck: Das erste Format funktioniert auf die gleiche Weise wie FOREGROUND, d.h.: es setzt die Vordergrundfarbe (Textfarbe) des Bildschirms auf das Argument Farbe, das im Bereich von 0 bis 31 liegen muss. Siehe dazu die Tabelle unter BACKGROUND auf Seite 19 für die Farbwerte und ihre entsprechenden Farben.
CONCAT Token: $FE $13 Format: CONCAT Anhangsdatei [,D Laufwerk] TO Zieldatei [,D Laufwerk] [,U Ge- rät] Zweck: CONCAT (concatenation) (dt. ”Verkettung”) fügt den Inhalt von An- hangsdatei an Zieldatei an. Danach enthält Zieldatei den Inhalt der beiden Dateien, während Anhangsdatei unverändert bleibt. Anhangsdatei ist entweder ein String in Anführungszeichen (zum Bei- spiel: ”Daten”) oder ein String-Ausdruck in Klammern (zum Beispiel: (FI$)).
CONT Token: Format: CONT Zweck: Wiederaufnahme der Programmausführung nach einer Unterbrechung oder einem Stopp, der durch eine END- oder STOP-Anweisung oder durch Drücken der -Taste ausgelöst worden ist. Dies ist ein nützli- STOP ches Werkzeug zur Fehlersuche. Das BASIC-Programm kann angehalten werden und die Variablen können untersucht und sogar geändert wer- den.
COPY Token: Format: COPY Quelle [,D Laufwerk] [,U Gerät] TO [Ziel] [,D Laufwerk] [,U Gerät] Zweck: Kopiert den Inhalt von Quelle nach Ziel. Wird verwendet, um entweder einzelne Dateien oder, unter Verwendung von Platzhalterzeichen, meh- rere Dateien zu kopieren. Quelle ist entweder ein String in Anführungszeichen (zum Beispiel: ”Da- ten”) oder ein String-Ausdruck in Klammern (zum Beispiel: (FI$)).
Seite 71
COPY kann keine DEL-Dateien kopieren, die üblicherweise als Titel oder Trennzeichen in Diskettenverzeichnissen verwendet werden. Diese ent- sprechen nicht den Commodore DOS-Regeln und können nicht von den OPEN-Standardroutinen angesprochen werden. REL-Dateien können nicht von Gerät zu Gerät kopiert werden. Beispiel: Verwendung von COPY:...
Token: Format: COS(numerischer Ausdruck) Zweck: Gibt den Kosinus des Arguments zurück. Das Argument wird im Bogenmaß angegeben. Das Ergebnis liegt im Bereich (-1.0 bis +1.0) Notiz: Ein Argument in Grad kann ins benötigte Bogenmaß umgerechnet wer- den, indem es mit π/180 multipliziert wird. Beispiel: Verwendung von COS:...
CURSOR Format: CURSOR <ON | OFF> [{, Spalte, Zeile, Stil}] CURSOR {Spalte, Zeile, Stil} Zweck: Bewegt den Textcursor an die angegebene Position auf dem aktuellen Textbildschirm. ON (”an”) oder OFF (”aus”) zeigt den Cursor oder blendet ihn aus. Spalte und Zeile geben die neue Position an. Stil definiert einen feststehenden (1) oder blinkenden (0) Cursor.
Token: Format: CUT x, y, Breite, Höhe Zweck: CUT (dt. ”schneide aus”) wird auf Grafikbildschirmen verwendet und ko- piert den Inhalt des angegebenen Rechtecks mit der oberen linken Posi- tion x, y sowie der Breite und Höhe in einen Puffer und füllt den Bereich anschließend mit der Farbe des aktuell ausgewählten Stifts.
DATA Token: Format: DATA [Konstante [, Konstante ...]] Zweck: Dient zur Definition von Konstanten, die in einem Programm von READ- Anweisungen gelesen werden können. Zahlen und Strings sind erlaubt, Ausdrücke jedoch nicht. Elemente werden durch Kommas getrennt. Strings, die Kommas, Doppelpunkte oder Leerzeichen enthalten, müssen in Anführungszeichen gesetzt werden.
DCLEAR Token: $FE $15 Format: DCLEAR [,D Laufwerk] [,U Gerät] Zweck: Sendet einen Initialisierungsbefehl an das angegebene Gerät und das angegebene Laufwerk. Laufwerk (drive) ist die Laufwerksnummer bei Diskettenstationen mit zwei Laufwerken. Die standardmäßige Laufwerksnummer ist 0 und kann bei Diskettenstationen mit nur einem Laufwerk, wie der 1541, 1571 oder 1581, weggelassen werden.
DCLOSE Token: $FE $0F Format: DCLOSE [U Gerät] DCLOSE # Kanal Zweck: Schließt eine einzelne Datei oder alle Dateien für das angegebene Ge- rät. Kanal Nummer, die bei einem früheren Aufruf von Befehlen wie APPEND, DOPEN oder OPEN vergeben worden ist. Gerät (unit) ist die Gerätenummer auf dem IEC-Bus.
Token: Format: DEC(String-Ausdruck) Zweck: Gibt den Dezimalwert des Arguments zurück, das als Hexadezimal-String geschrieben wird. Der Argumentbereich ist ”0000” bis ”FFFF” (0 bis 65535 in Dezimalzah- len). Das Argument muss 1-4 Hexadezimalziffern haben. 0123456789ABCDEF Notiz: Erlaubte Ziffern im Großbuchstaben-/Grafikmodus sind: 0123456789abcdef und im Klein-/Großbuchstabenmodus: Beispiel:...
DEF FN Token: Format: DEF FN Name(reelle Variable) = [Ausdruck] Zweck: Definiert eine Benutzerfunktion mit einer einzelnen Anweisung und einem Argument vom Typ ”Real” (reelle Zahl), die einen reellen Wert zurückgibt. Die Definition muss ausgeführt werden, bevor die Funktion in Ausdrü- cken verwendet werden kann.
DELETE Token: Format: DELETE [Zeilenbereich] DELETE Dateiname [,D Laufwerk] [,U Gerät] [,R] Zweck: Dient entweder zum Löschen eines Bereichs von Zeilen aus dem BASIC- Programm oder zum Löschen einer Datei von Diskette. Zeilenbereich besteht aus der ersten und letzten zu löschenden Zeile oder einer einzelnen Zeilennummer.
Token: Format: DIM Name(Grenzwert) [, Name(Grenzwert) ...] Zweck: Deklariert die Form, Grenzen und den Typ eines BASIC-Arrays. Als De- klarationsanweisung muss sie nur einmal und vor jeder Verwendung des deklarierten Arrays ausgeführt werden. Ein Array kann eine oder mehre- re Dimensionen haben. Eindimensionale Arrays werden oft als Vektoren bezeichnet, während zwei oder mehr Dimensionen eine Matrix definie- ren.
DISK Token: $FE $40 Format: DISK Befehl [,U Gerät] Befehl [,U Gerät] Zweck: Sendet einen Befehlsstring an das angegebene Diskettengerät. Gerät (unit) ist die Gerätenummer auf dem IEC-Bus. Normalerweise im Bereich von 8 bis 11 für die Diskettenlaufwerke. Wenn eine Variable ver- wendet wird, muss sie in Klammern gesetzt werden.
DLOAD Token: Format: DLOAD Dateiname [,D Laufwerk] [,U Gerät] Zweck: ”Disk LOAD” (dt. ”von Diskette laden”) lädt eine Datei vom Typ PRG in den für BASIC-Programme reservierten Speicher. Dateiname ist entweder ein String in Anführungszeichen, z.B. ”Daten” oder ein Stringausdruck in Klammern gesetzt, z.B. (FI$). Laufwerk (drive) ist die Laufwerksnummer bei Diskettenstationen mit zwei Laufwerken.
Token: $FE $1F Format: DMA Befehl [, Länge, Quelladresse, Quellbank, Zieladresse, Zielbank [, Unterbefehl]] Zweck: DMA ”Direct Memory Access” (dt. ”direkter Speicherzugriff”). Die Ver- wendung von DMA ist nicht mehr üblich und wurde durch EDMA abge- löst. Befehl 0: Kopieren, 1: Mischen, 2: Austauschen, 3: Füllen Länge Anzahl der Bytes Quelladresse 16 Bit-Adresse des Lesebereichs oder des Füll-Bytes.
DMODE Token: $FE $35 Format: DMODE Blockieren, Ergänzen, Schablone, Stil, Dicke Zweck: ”Display MODE” (dt. ”Anzeigemodus”) setzt mehrere Parameter des Gra- fikkontexts, der von Zeichenbefehlen verwendet wird. Mode Values Blockieren 0 - 1 Ergänzen (XOR) 0 - 1 Schablone 0 - 1 Stil 0 - 3 Dicke...
Seite 89
Token: Format: DO ... LOOP DO [<UNTIL | WHILE> logischer Ausdruck] . . . Befehle [EXIT] LOOP [<UNTIL | WHILE> logischer Ausdruck] Zweck: DO und LOOP definieren den Start einer BASIC-Schleife. Die Verwen- dung von DO und LOOP ohne jegliche Modifikatoren erzeugt eine End- losschleife, die nur durch die Anweisung EXIT verlassen werden kann.
DOPEN Token: $FE $0D Format: DOPEN# Kanal, Dateiname [,L [Recordlänge]] [,W] [,D Laufwerk] [,U Ge- rät] Zweck: Öffnet eine Datei zum Lesen oder Schreiben. Kanal Kanalnummer, wobei bei: • 1 <= Kanal <= 127 der Zeilenabschluss CR ist. • 128 <= Kanal <= 255 der Zeilenabschluss CR LF ist. L zeigt an, dass die Datei eine relative Datei ist, die sowohl für den Lese- /Schreibzugriff als auch für den wahlfreien Zugriff geöffnet ist.
DPAT Token: $FE $36 Format: DPAT Typ [, Anzahl, Muster ...] Zweck: ”Drawing PATtern” (dt. ”Zeichenmuster”) setzt das Muster des Grafikkon- textes für Zeichenbefehle. Es gibt vier vordefinierte Mustertypen, die durch Angabe der Typennum- mer (1, 2, 3 oder 4) als einzelnen Parameter ausgewählt werden können. Ein Wert von Null für die Typnummer bedeutet ein benutzerdefiniertes Muster.
Seite 93
Format: Zweck: enthält Status letzten Laufwerksoperation. handelt sich eine flüchtige Systemvariable. Jede Ver- wendung löst das Lesen des Status auf dem aktuell ver- wendeten Gerät aus. String-Variablen DSgekoppelt, diezurgleichenZeitaktualisiertwird.DasLesendesStatusvonein Notiz: DS ist eine reservierte Systemvariable. Beispiel: Verwendung von DS:...
Seite 94
Format: Zweck: DS$ enthält den Status der letzten Diskettenoperation in folgendem Textformat: Code, Nachricht, Spur, Sektor. DS$ ist an die numerische Variable DS gekoppelt. DS$ wird aktualisiert, wenn DS verwendet wird. DS$ ist auf 00,OK,00,00 gesetzt, falls kein Fehler vorliegt, ansonsten ist er auf eine DOS-Fehlermeldung gesetzt (entsprechend den in den Hand- büchern der jeweiligen Laufwerke erläuterten Fehlermeldungen).
DSAVE Token: Format: DSAVE Dateiname [,D Laufwerk] [,U Gerät] Zweck: ”Disk SAVE” (dt. ”Speichern auf Diskette”) speichert das BASIC- Programm, das sich aktuell im Speicher befindet, in eine Datei des Typs PRG. Dateiname ist entweder ein String in Anführungszeichen, z.B. ”Daten” oder ein Stringausdruck in Klammern gesetzt, z.B.
Seite 96
Format: Zweck: DT$ enthält das aktuelle Datum und wird vor jeder Verwendung von der DD-MON-YYYY 04-APR-2021 RTC (Real-Time Clock, dt. ”Echtzeituhr”) aktualisiert. DT$ ist wie folgt formatiert: , zum Beispiel: für den 4. April 2021. Notiz: DT$ ist eine reservierte Systemvariable. Beispiel: Verwendung von DT$:...
DVERIFY Token: $FE $14 Format: DVERIFY Dateiname [,D Laufwerk] [,U Gerät] Zweck: ”Disk VERIFY” (dt. etwa ”Überprüfung mit Diskette”) vergleicht das akuelle BASIC-Programm im Speicher mit einer Datei des Typs PRG auf Diskette. Dateiname ist entweder ein String in Anführungszeichen, z.B. ”Daten” oder ein Stringausdruck in Klammern gesetzt, z.B.
EDIT Format: EDIT <ON | OFF> Zweck: EDIT schaltet den eingebauten Editor entweder mit EDIT ON in den Text- modus oder mit EDIT OFF in den BASIC-Programmeditor. Nach dem Einschalten oder einem Reset (Zurücksetzen) wird der Editor als BASIC-Programmeditor initialisiert. Nachdem der Editor mit EDIT ON in den Textmodus versetzt wurde, sind die Unterschiede zum Programmmodus folgende: Der Editor führt keine Tokenisierung/Parsing durch.
EDMA Token: $FE $21 Format: EDMA Befehl, Länge, Quelle, Ziel [, Unterbefehl, Modifikator] Zweck: EDMA (”Extended Direct Memory Access”, dt. ”Erweiterter direkter Spei- cherzugriff”) ist die schnellste Methode, Speicherbereiche mit Hilfe des DMA-Controllers zu manipulieren. Befehl 0: Kopieren, 1: Mischen, 2: Austauschen, 3: Füllen. Länge Anzahl der Bytes (Maximum = 65535).
Seite 101
Format: Zweck: EL hat den Wert der Zeile, in der der letzte BASIC-Fehler aufgetreten ist oder den Wert -1, wenn es bisher keinen Fehler gab. Notiz: EL ist eine reservierte Systemvariable. Diese Variable wird normalerweise in einer TRAP-Routine verwendet, wo die Fehlerzeile von EL übernommen wird.
ELLIPSE Token: $FE $30 Format: ELLIPSE x-Mittelpunkt, y-Mittelpunkt, x-Radius, y-Radius [, gefüllt] Zweck: Zeichnet eine Ellipse mit dem Mittelpunkt (x,y) und dem x- und y-Radius. x-Zentrum x-Koordinate des Mittelpunkts in Pixel y-Zentrum y-Koordinate des Mittelpunkts in Pixel x-Radius x-Radius der Ellipse in Pixel y-Radius x-Radius der Ellipse in Pixel gefüllt füllt die Ellipse, falls ungleich Null.
ELSE Token: Format: IF Ausdruck THEN wahr-Klausel [ELSE falsch-Klausel] Zweck: ELSE ist ein optionaler Teil einer IF-Anweisung. Ausdruck ist ein logischer oder numerischer Ausdruck. Ein numerischer Ausdruck wird als FALSE (falsch) ausgewertet, wenn der Wert Null ist und TRUE (wahr) für jeden Wert ungleich Null. wahr-Klausel eine oder mehrere Anweisungen, die direkt nach THEN in derselben Zeile beginnen.
Seite 105
Verwendung von ELSE mit BEGIN und BEND:...
Token: Format: READY. Zweck: Beendet die Ausführung des BASIC-Programms. Die Eingabeaufforde- rung erscheint, der Computer geht in den Direktmodus und war- tet auf Tastatureingaben. Notiz: Mit END werden weder Kanäle gelöscht noch Dateien geschlossen. Auch die Variablendefinitionen sind nach END noch gültig. Das Programm kann mit der Anweisung CONT fortgesetzt werden.
ENVELOPE Token: $FE $0A Format: ENVELOPE Nummer [{, Anschlag, Abschwell, Halt, Auskling, Wellenform, Impulsbreite}] Zweck: ENVELOPE (dt. ”Hüllekurve”) wird verwendet, um die Parameter für die Synthese eines Musikinstruments zu definieren. Nummer Nummer der Hüllkurve (0-9). Anschlag Anschlagsphase (0-15). Abschwell Abschwellphase (0-15). Halt Haltephase (0-15).
Seite 108
Format: Zweck: ER hat den Wert des letzten aufgetretenen BASIC-Fehlers oder -1, falls kein Fehler aufgetreten ist. Notiz: ER ist eine reservierte Systemvariable. Diese Variable wird normalerweise in einer TRAP-Routine verwendet, wo- bei die Fehlernummer aus ER übernommen wird. Beispiel: Verwendung von ER:...
ERASE Token: $FE $2A Format: ERASE Dateiname [,D Laufwerk] [,U Gerät] [,R] Zweck: ERASE (dt. ”lösche”) wird verwendet, um eine Datei auf einer Diskette zu löschen. Dateiname ist entweder ein String in Anführungszeichen, z.B. ”Daten” oder ein Stringausdruck in Klammern gesetzt, z.B. (FI$). Laufwerk (drive) ist die Laufwerksnummer bei Diskettenstationen mit zwei Laufwerken.
ERR$ Token: Format: ERR$(Nummer) Zweck: Wird verwendet, um eine Fehlernummer in einen Fehlerstring umzuwan- deln. Nummer ist eine BASIC-Fehlernummer (1-41). Diese Funktion wird normalerweise in einer TRAP-Routine verwendet, wo- bei die Fehlernummer aus der reservierten Variable ER entnommen wird. ILLEGAL QUANTITY Notiz: Argumente außerhalb des Bereichs (1-41) führen zu einer Fehlermeldung (dt.
EXIT Token: Format: EXIT Zweck: Beendet die aktuelle DO .. LOOP-Schleife und setzt die Ausführung mit der ersten Anweisung nach LOOP fort. Notiz: In verschachtelten Schleifen verlässt EXIT nur die aktuelle Schleife und setzt die Ausführung in einer äußeren Schleife fort (falls eine solche vor- handen ist).
Token: Format: EXP(numerischer Ausdruck) Zweck: Die EXP-Funktion (”exponential function”, dt. ”Exponentialfunktion”) er- rechnet den Wert der Eulerschen Zahl (2.71828183) potenziert mit dem Ein Argument größer als 88 erzeugt einen Überlauffehler: OVERFLOW ERROR. Wert des Argumentes. Notiz: Beispiel: Verwendung von EXP:...
FAST Token: $FE $25 Format: FAST [Geschwindigkeit] Zweck: Setzt die CPU-Geschwindkeit auf 1 MHz, 3.5 MHz oder 40 MHz. Geschwindigkeit ist die CPU-Geschwindigkeit, wobei: • 1 die CPU-Geschwindigkeit auf 1 MHz setzt. • 3 die CPU-Geschwindigkeit auf 3,5 MHz setzt. •...
FGOSUB Token: $FE $48 Format: FGOSUB numerischer Ausdruck Zweck: Wertet den angegebenen numerischen Ausdruck aus und ruft dann das Unterprogramm mit der daraus resultierenden Zeilennummer auf. Notiz: Falls im Programm FGOSUB-Befehle vorkommen, kann die Verwendung von RENUMBER dazu führen, dass das Programm unter Umständen nicht mehr korrekt funktioniert.
FGOTO Token: $FE $47 Format: FGOTO numerischer Ausdruck Zweck: Wertet den angegebenen numerischen Ausdruck aus und springt dann zu der daraus resultierenden Zeilennummer. Notiz: Falls im Programm FGOTO-Befehle vorkommen, kann die Verwendung von RENUMBER dazu führen, dass das Programm unter Umständen nicht mehr korrekt funktioniert.
FIND Token: $FE $2B Format: FIND /String/ [, Zeilenbereich] FIND ”String” [, Zeilenbereich] Zweck: FIND ist ein Editor-Befehl, der nur im Direktmodus verwendet werden kann. Er durchsucht einen bestimmten Zeilenbereich (falls angegeben), ansonsten wird das gesamte BASIC-Programm durchsucht. Bei jedem Vorkommen des ”Suchstrings” wird die Zeile aufgelistet, wobei der String hervorgehoben ist.
Seite 120
Token: Format: FN Name(numerischer Ausdruck) Zweck: FN-Funktionen sind benutzerdefinierte Funktionen, die einen numeri- schen Ausdruck als Argument akzeptieren und einen reellen Wert zurück- geben. Vor einer ersten Verwendung muss die Funktion mit DEF FN defi- niert werden. Beispiel: Verwendung von FN:...
FONT Token: $FE $46 Format: FONT <A | B | C> Zweck: FONT wird verwendet, um zwischen den Schriftarten zu wechseln und den Codepages ”PETSCII” und ”erweitertes PETSCII”. Das ”erweiterte PETSCII” enthält alle ASCII-Symbole, die die in der PETSCII-Codepage fehlen, wobei die Reihenfolge immer noch PETSCII ist. Die ASCII-Symbole werden durch Drücken der Tasten in der nachstehenden Tabelle einge- geben, einige davon erfordern auch das Gedrückthalten der Taste Die Codes für Großbuchstaben und Kleinbuchstaben sind im Vergleich zu...
Token: Format: FOR Index = Start TO Ende [STEP Schrittweite] ... NEXT [Index] Zweck: FOR-Anweisungen beginnen eine BASIC-Schleife mit einer Indexvaria- blen. Index wird bei jeder Iteration um einen konstanten Wert erhöht oder ver- mindert. Der Standardwert ist, die Variable jeweils um 1 zu erhöhen. Die Indexvariable muss eine reelle Variable sein.
FOREGROUND Token: $FE $39 Format: FOREGROUND Farbe Zweck: Setzt die Vordergrundfarbe (Textfarbe) des Bildschirms auf das Argu- ment, das im Bereich von 0 bis 31 liegen muss. Für die Farbwerte und ihre entsprechenden Farben siehe die Tabelle un- ter BACKGROUND auf Seite 19. Notiz: Die Vordergrundfarbe kann ebenfalls mit COLOR verändert werden.
Token: Format: FRE(Bank) Zweck: Gibt die Anzahl der freien Bytes für Bank 0 oder 1 zurück oder, wenn das Argument negativ ist, die ROM-Version. FRE(0) liefert die Anzahl der freien Bytes in Bank 0, die für den BASIC- Programmcode verwendet wird. FRE(1) liefert die Anzahl der freien Bytes in Bank 1, der Bank für BASIC- Variablen, Arrays und Strings.
FREAD Token: $FE $1C Format: FREAD# Kanal, Zeiger, Größe Zweck: Liest Größe Bytes von Kanal Kanal ab der 32 Bit-Adresse Zeiger in den Speicher. Kanal Nummer, die bei einem früheren Aufruf von Befehlen wie DOPEN oder OPEN verwendet worden ist. Es muss darauf geachtet werden, dass kein Speicher überschrieben wird, der vom System oder dem Interpreter verwendet wird.
FWRITE Token: $FE $1E Format: FWRITE# Kanal, Zeiger, Größe Zweck: Schreibt Größe Bytes ab der 32 Bit-Adresse Zeiger aus dem Speicher in Kanal Kanal . Kanal Nummer, die bei einem früheren Aufruf von Befehlen wie APPEND, DOPEN oder OPEN verwendet worden ist. Es wird empfohlen, die Anweisung POINTER für das Zeigerargument zu verwenden und den Größenparameter durch Multiplikation der Anzahl der Elemente mit der Elementgröße zu berechnen.
GCOPY Token: $FE $32 Format: GCOPY x, y, Breite, Höhe Zweck: GCOPY (dt. ”grafisches Kopieren”) wird auf Grafikbildschirmen verwen- det und kopiert den Inhalt des angegebenen Rechtecks mit der oberen linken Position x, y sowie der Breite und Höhe in einen Puffer. Der Ausschnitt kann mit dem Befehl PASTE an beliebiger Stelle eingefügt werden.
Token: Format: GET Variable Zweck: Holt das nächste Zeichen (oder den Byte-Wert des nächsten Zeichens) aus der Warteschlange der Tastatur. Wenn die Variable vom Typ String ist und die Warteschlange leer ist, wird ihr ein leerer String zugewiesen. Andernfalls wird ein String mit der Länge 1 erstellt und dieser der String-Variablen zugewiesen.
GET# Token: $A1 ’#’ Format: GET# Kanal, Variable [, Variable …] Zweck: Liest ein einzelnes Byte aus dem angegebenen Kanal und weist String- Variablen Strings der Länge 1 bzw. numerischen Variablen einen 8-Bit Binärwert (0-255) zu Dies ist nützlich, um Zeichen (oder Bytes) Byte für Byte aus einem Einga- bestrom zu lesen.
GETKEY Token: $A1 $F9 (GET-Token und KEY-Token) Format: GETKEY Variable Zweck: Holt das nächste Zeichen (oder den Byte-Wert des nächsten Zeichens) aus der Tastatur-Warteschlange. Wenn die Warteschlange leer ist, wartet das Programm, bis eine Taste gedrückt wurde. Nachdem eine Taste ge- drückt wurde, wird die Variable entsprechend gesetzt und die Programm- ausführung fortgesetzt.
GO64 Token: $CB $36 $34 (GO-Token und 64) Format: GO64 ARE YOU SURE? Zweck: Mit GO64 wechselt der MEGA65 in den C64-Modus. Im Direktmodus wird hierbei ein Sicherheitshinweis (dt. ”Sind Sie si- cher?”) ausgegeben, der zum Fortführen mit (für ”Yes”, dt. ”Ja”) be- stätigt werden muss.
GOSUB Token: Format: GOSUB Zeilennummer Zweck: GOSUB (”Goto Subroutine”, dt. ”Sprung ins Unterprogramm”) speichert den aktuellen BASIC-Programmzähler und die Zeilennummer auf dem Laufzeitstapel und setzt die Programmausführung an der angegebenen BASIC-Zeilennummer fort. Dies ermöglicht nach der Anweisung GOSUB die Wiederaufnahme der Programmausführung, sobald eine RETURN- Anweisung in dem aufgerufenen Unterprogramm ausgeführt wird.
GOTO Token: $89 (GOTO) oder $CB $A4 (GO TO) Format: GOTO Zeilennummer GO TO Zeilennummer Zweck: Setzt die Programmausführung an der angegebenen BASIC-Zeilen- nummer fort. Notiz: Wenn die Zeilennummer des Ziels höher ist als die aktuelle Zeilennum- mer, beginnt die Suche in der aktuellen Zeile und geht von dort aus weiter zu höheren Zeilennummern.
GRAPHIC Token: Format: GRAPHIC CLR Zweck: Initialisiert das BASIC-Grafiksystem. Es löscht den Grafikspeicher und den Bildschirm und setzt alle Parameter des Grafikkontextes auf ihre Standardwerte. Nachdem das Grafiksystem initialsiert wurde, können Befehle wie LINE, PALETTE, PEN, SCNCLR und SCREEN verwendet werden, um die Para- meter des Grafiksystems erneut einzustellen.
HEADER Token: Format: HEADER Diskettenname [,I ID] [,D Laufwerk] [,U Gerät] Zweck: Wird verwendet um eine Diskette zu formatieren (oder zu löschen). "DATEN" Diskettenname ist entweder eine String in Anführungszeichen, zum (DN$) Beispiel oder ein String-Ausdruck in Klammern, zum Beispiel .
HELP Token: Format: HELP Zweck: Wenn das BASIC-Programm aufgrund eines Fehlers anhält, kann HELP verwendet werden, um weitere Informationen zu erhalten. Die interpre- tierte Zeile wird aufgelistet, wobei die fehlerhafte Anweisung hervorge- hoben oder unterstrichen ist. Notiz: HELP zeigt BASIC-Fehler an. Bei Fehlern im Zusammenhang mit Disket- tenoperationen sollte stattdessen die Diskettenstatus-Variable DS oder der Diskettenstatus-String DS$ verwendet werden.
HEX$ Token: Format: HEX$(numerischer Ausdruck) Zweck: Gibt eine vierstellige hexadezimale Darstellung des Arguments zurück. Das Argument muss im Bereich von 0-65535 liegen, was den Hex-Zahlen $0000-$FFFF entspricht. Notiz: Wenn reelle Zahlen als Argumente verwendet werden, wird der Nach- kommaanteil ignoriert. Mit anderen Worten: Reelle Zahlen werden nicht gerundet.
HIGHLIGHT Token: $FE $3D Format: HIGHLIGHT Farbe [, Modus] Zweck: Legt die für die Hervorhebung verwendeten Farben fest. Für Systemmel- dungen, REM-Anweisungen und BASIC 65-Schlüsselwörter können un- terschiedliche Farben eingestellt werden. Farbe ist eine der ersten 16 Farben in der aktuellen Palette. Siehe Seite 19 für die Farben in der Standardpalette.
Seite 140
Token: Format: IF Ausdruck THEN wahr-Klausel [ELSE falsch-Klausel] Zweck: IF startet eine Anweisung zur bedingten Ausführung. Ausdruck ist ein logischer oder numerischer Ausdruck. Ein numerischer Ausdruck wird als FALSE (”falsch”) ausgewertet, wenn der Wert Null ist und TRUE (”wahr”) für jeden Wert ungleich Null. wahr-Klausel ist eine oder mehrere Anweisungen, die direkt nach THEN in derselben Zeile beginnen.
IMPORT Token: Format: IMPORT Dateiname [,D Laufwerk] [,U Gerät] Zweck: IMPORT lädt den Inhalt einer Datei (des Typs SEQ), die PETSCII-kodierten Text enthält, als BASIC 65-Programm in den Speicher. Dateiname ist entweder ein String in Anführungszeichen, z.B. ”Daten” oder ein Stringausdruck in Klammern gesetzt, z.B. (FI$). Laufwerk (drive) ist die Laufwerksnummer bei Diskettenstationen mit zwei Laufwerken.
INPUT Token: Format: INPUT [Eingabeaufforderung <, | ;>] Variable [, Variable ...] Zweck: Gibt eine optionale Eingabeaufforderung und ein Fragezeichen auf dem Bildschirm aus, lässt den Cursor blinken und wartet auf Benutzereingaben über die Tastatur. Die Eingabeaufforderung ist ein optionaler String-Ausdruck, der als Eingabeaufforderung ausgegeben werden soll.
INPUT# Token: Format: INPUT# Kanal, Variable [, Variable ...] Zweck: Liest einen Datensatz von einem Eingabegerät, zum Beispiel aus einer Datei von Diskette, und ordnet die Daten den Variablen in der Liste zu. Kanal Nummer, die bei einem früheren Aufruf von Befehlen wie DOPEN oder OPEN angegeben wurde.
INSTR Token: Format: INSTR(Heuhaufen, Nadel [, Start]) Zweck: Sucht die Position des String-Ausdrucks Nadel im String-Ausdruck Heu- haufen und gibt den Index des ersten Vorkommens oder Null zurück, wenn es keine Übereinstimmung gibt. Eine erweiterte Version der Stringsuche mit Muster wird verwendet, wenn das erste Zeichen des Suchstrings ein Pfundzeichen ’£’...
Token: Format: INT(numerischer Ausdruck) Zweck: Gibt den ganzzahligen Teil des Arguments zurück. Diese Funktion ist nicht auf den typischen 16 Bit-Ganzzahlbereich (-32768 bis 32767) beschränkt, da sie reelle Arithmetik verwendet. Der zulässige Bereich wird daher durch die Größe der reellen Mantisse bestimmt, die 32 Bit breit ist (-2147483648 bis 2147483647).
Token: Format: JOY(Port) Zweck: Gibt den Status des Joysticks für den ausgewählten Controller-Port (1 oder 2) zurück. Bit 7 enthält den Status der Feuertaste. Der Joystick kann in acht Richtungen bewegt werden, die im Uhrzeigersinn nummeriert sind, beginnend mit der obersten Position. Links Mitte Rechts Oben Mitte...
Token: Format: KEY <ON | OFF> KEY <LOAD | SAVE> Dateiname KEY Nummer, String Zweck: Liest den Zustand der Funktionstasten aus. Die Funktionstasten können entweder ihren Tastencode senden, wenn sie gedrückt werden, oder ei- ne der Taste zugewiesene Zeichenfolge. Nach dem Einschalten oder Zu- rücksetzen ist diese Funktion aktiviert und die Tasten haben ihre Stan- dardbelegung.
Seite 150
Notiz: Die Summe der Längen aller zugewiesenen Strings darf 240 Zeichen nicht überschreiten. Sonderzeichen wie RETURN oder ANFÜHRUNGSZEI- CHEN werden über ihre Codes mit der Funktion CHR$ eingegeben. Wei- tere Informationen finden Sie unter CHR$ auf Seite 40. Beispiel: Verwendung von KEY:...
LEFT$ Token: Format: LEFT$(String, n) Zweck: Gibt einen String zurück, der die ersten n Zeichen des Arguments String enthält. Wenn die Länge von String gleich oder kleiner als n ist, ist die resultierende Zeichenkette identisch mit dem Argument String. String ist ein String-Ausdruck. n ist ein numerischer Ausdruck (0-255).
Token: Format: LEN(String) Zweck: Liefert die Länge von String zurück. String ist ein String-Ausdruck. Notiz: Es gibt kein abschließendes Zeichen, im Gegensatz zu anderen Program- miersprachen wie zum Beispiel bei C, die das NULL-Zeichen verwenden. Die Länge des Strings wird intern in einem zusätzlichen Byte des String- Deskriptors gespeichert.
Token: Format: [LET] Variable = Ausdruck Zweck: Weist der Variable Werte oder Ergebnisse von Ausdrücken zu. Notiz: Die Anweisung LET ist obsolet und wird nicht benötigt. Die Zuweisung von Variablen kann ohne LET erfolgen, wurde aber aus Gründen der Ab- wärtskompatibilität in BASIC 65 beibehalten.
LINE Token: Format: LINE x-Start, y-Start [, x-Nächstes1, y-Nächstes1 ...] Zweck: Zeichnet ein Pixel bei (x-Start, y-Start), wenn nur ein Koordinatenpaar angegeben ist. Wenn mehr als ein Koordinatenpaar definiert ist, wird auf dem aktuel- len Grafikbildschirm eine Linie von der Koordinate (x-Start, y-Start) zum nächsten Koordinatenpaar gezeichnet und davon jeweils (bis zum letzten Argument) weiter zum nächsten Koordinatenpaar.
LINE INPUT# Token: $E5 $84 Format: LINE INPUT# Kanal, Variable [, Variable ...] Zweck: Liest einen Datensatz pro Variable von einem Eingabegerät (z. B. einem Diskettenlaufwerk) und ordnet die gelesenen Daten den Variablen zu. Die Datensätze müssen mit einem RETURN-Zeichen abgeschlossen wer- den, das nicht Bestandteil der String-Variable wird.
LIST Token: Format: LIST [P] [Zeilenbereich] LIST [P] Dateiname [,U Gerät] Zweck: Wird verwendet, um eine Reihe von Zeilen aus dem BASIC-Programm auf- zulisten. Zeilenbereich besteht aus der ersten und/oder letzten aufzulistenden Zeile oder einer einzelnen Zeilennummer. Wenn die erste Zahl wegge- lassen wird, wird die erste BASIC-Zeile angenommen.
LOAD Token: Format: LOAD Dateiname [, Gerät [, Adressübernahme]] / Dateiname [, Gerät [, Adressübernahme]] Zweck: LOAD lädt eine Datei vom Typ PRG in den Speicher in Bank 0, der auch für den BASIC-Programmcode verwendet wird. "PROG" Dateiname ist entweder ein String in Anführungszeichen, zum Beispiel oder ein String-Ausdruck.
Seite 158
Das Abkürzungssymbol / kann nur im Direktmodus verwendet werden. Der C64 verwendet standardmäßig Gerät 1 für die Datasette, die an dem Kassettenport angeschlossen ist. Der MEGA65 hingegen verwendet standardmäßig Gerät 8, das dem internen Diskettenlaufwerk zugewie- sen ist. Das bedeutet, dass Sie LOAD-Befehlen, die diese Einheit verwen- den, nicht den Zusatz hinzufügen müssen.
LOADIFF Token: $FE $43 Format: LOADIFF Dateiname [,D Laufwerk] [,U Gerät] Zweck: LOADIFF lädt eine IFF-Datei in den Grafikspeicher. Das IFF (Interchan- ge File Format) wird von vielen verschiedenen Anwendungen und Be- triebssystemen unterstützt. LOADIFF geht davon aus, dass die Datei- en Bitplane-Grafiken enthalten, die in den Grafikspeicher des MEGA65 passen.
Token: Format: LOG(numerischer Ausdruck) Zweck: Berechnet den Wert des natürlichen Logarithmus des Arguments. Der na- türliche Logarithmus (auf Taschenrechner oft als LN bezeichnet) verwen- det die Eulersche Zahl (2.71828183) als Basis, nicht 10, die normaler- weise in LOG-Funktionen auf Taschenrechnern verwendet wird. Notiz: Die Log-Funktion zur Basis 10 kann berechnet werden indem man das Ergebnis durch log(10) dividiert.
LOG10 Token: $CE $08 Format: LOG10(numerischer Ausdruck) Zweck: Berechnet den Wert des dezimalen Logarithmus des Arguments. Der de- zimale Logarithmus verwendet 10 als Basis. Beispiel: Verwendung von LOG10:...
LOOP Token: Format: DO ... LOOP DO [<UNTIL | WHILE> logischer Ausdruck] . . . Ausdrücke [EXIT] LOOP [<UNTIL | WHILE> logischer Ausdruck] Zweck: DO und LOOP definieren den Beginn einer BASIC-Schleife. Die alleinige Verwendung von DO und LOOP ohne jegliche Modifikatoren erzeugt eine Endlosschleife, die nur durch die Anweisung EXIT verlassen werden kann.
LPEN Token: $CE $04 Format: LPEN(Koordinate) Zweck: Diese Funktion erfordert die Verwendung eines Röhrenmonitors (oder Röhrenfernsehers) und eines Lightpen (dt. ”Lichtstift”), der an Port 1 an- geschlossen sein muss. Ein Lightpen funktioniert nicht mit einem LCD- oder LED-Bildschirm. LPEN(0) gibt die x-Position des Lightpen zurück, der Bereich ist 60-320. LPEN(1) gibt die y-Position des Lightpen zurück, der Bereich liegt bei 50- 250.
Token: $FE $23 Format: MEM Maske4, Maske5 Zweck: Maske4 und Maske5 sind Byte-Werte, die als Maske von 8 Bits inter- pretiert werden. Jedes auf 1 gesetzte Bit reserviert ein 8 KB-Segment des Speichers in Bank 4 (für das erste Argument) und in Bank 5 (für das zweite Argument).
MERGE Token: Format: MERGE Dateiname [,D Laufwerk] [,U Gerät] Zweck: MERGE lädt eine BASIC-Programmdatei von der Festplatte und fügt sie an das Programm im Speicher an. Dateiname ist entweder ein String in Anführungszeichen, z.B. ”Daten” oder ein Stringausdruck in Klammern gesetzt, z.B. (FI$). Laufwerk (drive) ist die Laufwerksnummer bei Diskettenstationen mit zwei Laufwerken.
MID$ Token: Format: MID$(String, Start, Länge) MID$(String, Start, Länge) = String-Ausdruck Zweck: MID$ kann entweder als Funktion verwendet werden, die eine Zeichen- kette zurückgibt, oder als Anweisung zum Einfügen von Teilzeichenketten in eine bestehende Zeichenkette. String ist ein String-Ausdruck. Start Startindex (0-255). Länge Länge der Teilzeichenkette (0-255).
Token: Format: MOD(Di vi dend, Divisor) Zweck: Die Funktion MOD gibt den Rest der Division zurück. Notiz: In anderen Programmiersprachen, wie zum Beispiel C, ist diese Funktion als Operator (%) implementiert. In BASIC 65 ist sie als Funktion imple- mentiert. Beispiel: Verwendung von MOD:...
MONITOR Token: Format: MONITOR Zweck: Ruft das Monitorprogramm für Maschinensprache auf, das hauptsächlich zur Fehlersuche verwendet wird. Notiz: Die Verwendung des MONITOR erfordert Kenntnisse der CSG4510- / 6502- / 6510-CPU, der verwendeten Assemblersprache und ihrer Ar- chitekturen. Zum Verlassen des Monitors drücken Sie X. Der Hilfetext kann entweder mit ? oder H angezeigt werden.
MOUNT Token: $FE $49 Format: MOUNT Dateiname [,U Gerät] Zweck: Bindet ein Diskette-Image vom Typ D81 von der SD-Karte als Gerät 8 (Standard) oder Gerät 9 ein. Wenn kein Argument angegeben wird, weist MOUNT das eingebaute Diskettenlaufwerk des MEGA65 dem Gerät 8 zu. Dateiname ist entweder ein String in Anführungszeichen, z.B.
MOUSE Token: $FE $3E Format: MOUSE ON [{, Port, Sprite, Position}] MOUSE OFF Zweck: MOUSE ON aktiviert den Maustreiber und verknüpft die Maus am ange- gebenen Port mit dem Mauszeiger-Sprite. Port Mausport 1, 2 (Voreinstellung) oder 3 (beide). Sprite Sprite-Nummer für Mauszeiger (Voreinstellung 0). Position Anfangsposition der Maus (x,y).
MOVSPR Token: $FE $06 Format: MOVSPR Nummer, Position MOVSPR Nummer, Startposition TO Endposition, Geschwindigkeit Zweck: Bewegt ein Sprite auf dem Bildschirm. Jedes Argument von Position be- steht aus zwei 16 Bit-Werten, die entweder eine absolute Koordinate, eine relative Koordinate, einen Winkel oder eine Geschwindigkeit ange- ben.
Seite 173
y absolute y-Bildschirmkoordinate in Pixel. xrel relative x-Bildschirmkoordinate in Pixel. yrel relative y-Bildschirmkoordinate in Pixel. Winkel Kompassrichtung für die Sprite-Bewegung [Grad]. 0: oben, 90: rechts, 180: unten, 270: links, 45 oben rechts, usw. 127.0 Geschwindigkeit ist die Bewegungsgeschwindigkeit des Sprites, ange- geben als Fließkommazahl im Bereich .
Token: Format: NEW RESTORE Zweck: NEW ”löscht” das gegenwärtig im Speicher befindliche BASIC-Programm sowie alle Variablen. NEW setzt alle BASIC-Parameter auf ihre Standard- werte zurück. Da NEW Parameter und Zeiger zurücksetzt (aber den Adressbereich ei- nes BASIC-Programms, das sich im Speicher befand, nicht überschreibt), kann das Programm wiederhergestellt werden.
NEXT Token: Format: FOR Index = Start TO Ende [STEP Schrittweite] ... NEXT [Index] Zweck: NEXT markiert das Ende der BASIC-Schleife, die mit der angegebenen Indexvariablen verbunden ist. Wenn eine BASIC-Schleife mit FOR dekla- riert wird, muss sie mit NEXT beendet werden. Index kann bei jeder Iteration um einen konstanten Wert erhöht oder ver- ringert werden.
Token: Format: NOT Operand Zweck: NOT führt eine bitweise logische NICHT-Operation an einem 16 Bit-Wert durch. Ganzzahlige Operanden werden so verwendet, wie sie sind, während reelle Operanden in eine vorzeichenbehaftete 16 Bit-Ganzzahl umge- wandelt werden (mit Verlust der Genauigkeit). Logische Operanden werden in eine 16 Bit-Ganzzahl umgewandelt, wo- bei $FFFF (dezimal -1) für TRUE (wahr) und $0000 (dezimal 0) für FALSE (falsch) verwendet wird.
Token: $FE $24 Format: Schlüsselwort OFF Zweck: OFF ist ein sekundäres Schlüsselwort, das in Kombination mit primären Schlüsselwörtern wie COLOR, KEY und MOUSE verwendet wird. Notiz: OFF kann nicht eigenständig verwendet werden. Beispiel: Verwendung von OFF:...
Seite 179
Token: Format: ON Ausdruck GOSUB Zeilennummer [, Zeilennummer ...] ON Ausdruck GOTO Zeilennummer [, Zeilennummer ...] Schlüsselwort ON Zweck: ON ruft entweder eine berechnete GOSUB- oder GOTO-Anweisung auf. Je nach Ergebnis des Ausdrucks wird das Ziel für GOSUB und GOTO aus der Tabelle der Zeilenadressen am Ende der Anweisung ausgewählt.
OPEN Token: Format: OPEN Kanal, Primäradresse [, Sekundäradresse [, Dateiname]] Zweck: Öffnet einen Eingangs-/Ausgangskanal für ein Gerät. Kanal Kanalnummer, wobei bei: • 1 <= Kanal <= 127 der Zeilenabschluss CR ist. • 128 <= Kanal <= 255 der Zeilenabschluss CR LF ist. Primäradresse Gerätenummer.
Seite 182
Token: Format: Operand OR Operand Zweck: Führt eine bitweise logische ODER-Operation an zwei 16 Bit-Werten durch. Ganzzahlige Operanden werden so verwendet, wie sie sind. Reel- le Operanden werden in eine vorzeichenbehaftete 16 Bit-Ganzzahl um- gewandelt (mit Verlust der Genauigkeit). Logische Operanden werden unter Verwendung von $FFFF (dezimal -1) für TRUE (wahr) und $0000 (dezimal 0) für FALSE (falsch) in eine 16 Bit-Ganzzahl umgewandelt.
PAINT Token: Format: PAINT x, y, Modus [, Farbe] Zweck: Füllt einen eingeschlossenen Grafikbereich aus. x, y ist ein Koordinatenpaar, das innerhalb des zu füllenden Bereichs lie- gen muss. Modus gibt den Füllmodus an: • 0 verwendet die Farbe zum Füllen des Bereichs. •...
PALETTE Token: $FE $34 Format: PALETTE Bildschirmnummer, Farbe, Rot, Grün, Blau PALETTE COLOR Farbe, Rot, Grün, Blau PALETTE RESTORE Zweck: PALETTE kann verwendet werden, um einen Eintrag der Systemfarbpa- lette oder die Palette eines Bildschirms zu ändern. PALETTE RESTORE setzt die Systempalette auf die Standardwerte zu- rück.
PASTE Token: Format: PASTE x, y, 0, 0 Zweck: PASTE (dt. ”einfügen”) wird auf Grafikbildschirmen verwendet und fügt den Inhalt des Cut/Copy/Paste-Puffers auf dem Bildschirm an der Posi- tion x, y (Koordinaten für die linke obere Ecke) ein. SYNTAX ERROR Notiz: Die beiden als Argumente dürfen nicht weggelassen werden, weil dies...
PEEK Token: Format: PEEK(Adresse) Zweck: Gibt einen vorzeichenlosen 8 Bit-Wert (Byte) zurück, der von Adresse gelesen wurde. Wenn die Adresse im Bereich von $0000 bis $FFFF (0-65535) liegt, wird die Speicherbank, die durch BANK festgelegt ist, verwendet. Adressen, die größer oder gleich $10000 (dezimal 65536) sind, wer- den als flache Speicheradressen verwendet, wobei die Einstellung BANK ignoriert wird.
PEEKW Token: $C2 ’W’ Format: PEEKW(Adresse) Zweck: Gibt einen vorzeichenlosen 16 Bit-Wert (Wort) zurück, der von Adres- se (low byte, dt. ”niederwertiges Byte”) und Adresse+1 (high byte, , dt. ”höherwertiges Byte”) gelesen wurde. Liegt die Adresse im Bereich von $0000 bis $FFFF (0-65535), wird die mit BANK eingestellte Speicherbank verwendet.
Token: $FE $33 Format: PEN Farbe Zweck: PEN (dt. ”Stift”) legt die Farbe des Grafikstifts fest. Farbe Palettenindex. Notiz: Die mit PEN ausgewählte Farbe wird von allen nachfolgenden Grafik- und Zeichenbefehlen verwendet. Es ist auch möglich, PEN mit zwei Argumenten aufzurufen. Das erste Ar- gument steht für den zu verwendenen Zeichenmodus und darf 0,1 oder 2 sein.
PIXEL Token: $CE $0C Format: PIXEL(x, y) Zweck: Gibt die Farbe eines Pixels an der angegebenen Position zurück. x absolute Bildschirmkoordinate. y absolute Bildschirmkoordinate. Beispiel: Verwendung von PIXEL:...
PLAY Token: $FE $04 Format: PLAY [{String1, String2, String3, String4, String5, String6}] Zweck: PLAY ohne Argumente führt dazu, dass alle Stimmen stumm geschaltet werden und alle BASIC-Variablen des Musiksystems zurückgesetzt wer- den (zum Beispiel TEMPO). Auf PLAY können bis zu sechs durch Komma getrennte String-Argumente folgen, wobei jedes Argument die Abfolge von Noten und Direktiven an- gibt, die auf einer bestimmten Stimme auf den beiden verfügbaren SID- Chips gespielt werden sollen, was eine bis zu sechskanalige Polyphonie...
Seite 194
Die Modulations-Direktive moduliert die Note um die von Ihnen angege- bene Stärke (1-9). Mit dem Argument 0 wird die Modulation deaktiviert. Die Portamento-Direktive gleitet sanft zwischen aufeinanderfolgenden Noten mit der von Ihnen angegebenen Geschwindigkeit (1-9). Mit dem Argument 0 wird das Portamento deaktiviert. Bei aktiviertem Portamento entfällt die Ausklingphase der Hüllkurve.
Seite 195
Notiz: Die Anweisung PLAY verwendet eine Interrupt-gesteuerte Routine, die mit dem Abarbeiten des Strings und dem Abspielen der Melodie beginnt. Die Programmausführung wird mit der nächsten Anweisung fortgesetzt und blockiert das Programm nicht. Beispiel: Verwendung von PLAY:...
POINTER Token: $CE $0A Format: POINTER(Variable) Zweck: Gibt die aktuelle Adresse einer Variablen oder eines Array-Elements als 32 Bit-Zeiger zurück. Bei String-Variablen ist es die Adresse des String- Deskriptors, nicht die des Strings selbst. Der String-Deskriptor besteht aus drei Bytes (Länge, niedrige String-Adresse und hohe String-Adresse). Notiz: Die Adresswerte von Arrays und ihren Elementen sind während der Aus- führung des Programms konstant.
POKE Token: Format: POKE Adresse, Byte [, Byte ...] Zweck: Schreibt ein oder mehrere Bytes in den Speicher oder in die speicherein- gebunden Ein-/Ausgabe, beginnend bei Adresse. Wenn die Adresse im Bereich von $0000 bis $FFFF (0-65535) liegt, wird die Speicherbank, die durch BANK festgelegt ist, verwendet. Adressen, die größer oder gleich $10000 (dezimal 65536) sind, wer- den als flache Speicheradressen verwendet, wobei die Einstellung BANK ignoriert wird.
POKEW Token: $97 ’W’ Format: POKEW Adresse, Wort [, Wort ...] Zweck: Schreibt ein oder mehrere Wörter (zwei Bytes) in den Speicher oder in die speichereingebunden Ein-/Ausgabe, beginnend bei Adresse. Wenn die Adresse im Bereich von $0000 bis $FFFF (0-65535) liegt, wird die Speicherbank, die durch BANK festgelegt ist, verwendet.
POLYGON Token: $FE $2F Format: POLYGON x, y, x-Radius, y-Radius, Polygonseiten [{, Zeichenseiten, Schneiden, Winkel, gefüllt}] Zweck: Zeichnet ein regelmäßiges n-seitiges Polygon. Das Polygon wird unter Verwendung des aktuellen Zeichenkontextes, der mit SCREEN, PALETTE und PEN gesetzt worden ist, gezeichnet. x,y Mittelpunktskoordinaten.
Token: Format: POS(Dummy) Zweck: Gibt die Cursorspalte relativ zum aktuell verwendeten Fenster zurück. Dummy ein numerischer Wert, der ignoriert wird. Notiz: POS gibt die Spaltenposition für den Bildschirmcursor an. Sie funktioniert nicht bei umgeleiteter Ausgabe. Beispiel: Verwendung von POS:...
Token: $CE $02 Format: POT(Paddle) Zweck: Gibt die Position eines Paddels zurück. Paddle Paddlenummer (1-4). Das niederwertige Byte des Rückgabewerts ist der Paddle-Wert, wobei 0 die Grenze im Uhrzeigersinn und 255 die Grenze gegen den Uhrzei- gersinn darstellt. Ein Wert größer als 255 zeigt an, dass auch die Feuertaste gedrückt wird. Notiz: Analoge Paddles sind verrauscht und ungenau.
PRINT Token: Format: PRINT Argumentliste Zweck: Wertet die Argumentliste aus und gibt die Werte formatiert im aktuel- len Bildschirmfenster aus. Je nach Argumenttyp wird die Standardfor- matierung verwendet. Für benutzergesteuerte Formatierung siehe PRINT USING. Die folgenden Argumenttypen werden ausgewertet: • numerisch Der Ausdruck beginnt mit einem Leerzeichen für positive und Nullwerte bzw.
PRINT# Token: Format: PRINT# Kanal, Argumentliste Zweck: Wertet die Argumentliste aus und gibt die formatierten Werte auf dem Gerät aus, das Kanal zugewiesen ist. Es wird die Standardformatierung verwendet, abhängig vom Argumenttyp. Für benutzergesteuerte Forma- tierung siehe PRINT# USING. Kanalnummer Kanalnummer, die bei einem früheren Aufruf von Befehlen wie APPEND, DOPEN oder OPEN verwendet wurde.
Seite 205
Beispiel: Verwendung von PRINT# zum Schreiben einer Datei auf Gerät 8: DIR "TABELLE" Sie können überprüfen, ob die Datei ’TABELLE’ geschrieben wurde, in- TYPE "TABELLE" dem Sie eingeben und sich dann den Inhalt der Datei anzeigen lassen, indem Sie eingeben.
PRINT USING Token: $98 $FB or $99 $FB Format: PRINT[# Kanal,] USING Format; Argument Zweck: Gibt unter Berücksichtigung von Format das Argument aus. Das Argument kann entweder ein String oder ein numerischer Wert sein. Das Format der Ausgabe richtet sich nach dem String Format. Kanal ist die Kanalnummer, die bei einem vorherigen Aufruf von Befehlen wie APPEND, DOPEN oder OPEN verwendet worden ist.
Seite 207
Beispiel: Verwendung von PRINT USING:...
RCURSOR Token: $FE $42 Format: RCURSOR {Spaltenvariable, Zeilenvariable} Zweck: Liest die aktuelle Spalte und Zeile des Cursors in die Spaltenvariable und Zeilenvariable. Notiz: Die Zeilen- und Spaltenwerte beginnen bei Null, wobei die Spalte ganz links den Wert Null und die oberste Zeile den Wert Null hat. Beispiel: Verwendung von RCURSOR:...
READ Token: Format: READ Variable [, Variable ...] Zweck: Liest Werte aus der Programmquelle in Variablen. Variable Liste von beliebigen gültigen Variablen. Alle Arten von Konstanten (Integer, Real und Strings) können gelesen wer- den, allerdings keine Ausdrücke. Elemente werden durch Kommas ge- trennt.
RECORD Token: $FE $12 Format: RECORD# Kanal, Datensatz [, Byte] Zweck: RECORD (dt. ”Datensatz”) positioniert den Lese-/Schreibzeiger einer re- lativen Datei. Kanal ist eine Kanalnummer, die bei einem früheren Aufruf von Befehlen wie DOPEN oder OPEN verwendet wurde. Datensatz ist der Zieldatensatz im Bereich 1 - 65535. Byte Byte-Position im Datensatz.
Token: Format: Zweck: Markiert alle Zeichen nach REM in der gleichen Zeile als Kommentar, ohne Einfluss auf den Programmablauf. Notiz: Zeichen nach REM werden von BASIC 65 nicht ausgeführt. Beispiel: Verwendung von REM:...
RENAME Token: Format: RENAME Alt TO Neu [,D Laufwerk] [,U Gerät] "DATEN" Zweck: Benennt eine Diskettendatei um. (FI$) Alt ist entweder ein String in Anführungszeichen, zum Beispiel "BACK- oder ein String-Ausdruck in Klammern, zum Beispiel UP" (FS$) Neu ist entweder ein String in Anführungszeichen, zum Beispiel oder ein String-Ausdruck in Klammern, zum Beispiel Laufwerk (drive) ist die Laufwerksnummer bei Diskettenstationen mit zwei Laufwerken.
RENUMBER Token: Format: RENUMBER [{Neu, Schrittweite, Bereich}] Zweck: RENUMBER wird verwendet, um alle Zeilen oder einen Bereich von Zeilen eines BASIC-Programms neu zu nummerieren. Neu ist die neue Anfangszeile des neu zu nummerierenden Zeilenbe- reichs. Der Standardwert ist 10. Schrittweite ist die zu verwendende Schrittweite bei der Neunummerie- rung.
RESTORE Token: Format: RESTORE [Zeilennumer] Zweck: Setzen oder Zurücksetzen des internen Zeigers für READ von DATA- Anweisungen. Zeilennummer ist die neue Position für den Zeiger. Der Standardwert ist die erste Programmzeile. Notiz: Das neue Zeigerziel Zeilennummer muss keine DATA-Anweisungen ent- halten.
RESUME Token: Format: RESUME [Zeilennummer | NEXT] Zweck: Wird in einer TRAP-Routine verwendet, um die normale Programmaus- führung nach der Behandlung eines Fehlers wieder aufzunehmen. Mit RESUME ohne Parameter wird versucht, die Anweisung, die den Feh- ler verursacht hat, erneut auszuführen. Die Routine TRAP sollte das Pro- blem, bei dem der Fehler aufgetreten ist, untersucht und korrigiert haben.
RETURN Token: Format: RETURN Zweck: Springt im Programmablauf von einem Unterprogramm, das mit GOSUB oder einem mit COLLISION deklarierten Ereignishandler aufgerufen wur- de, zurück an die Aufrufstelle. Die Ausführung wird mit der Anweisung fortgesetzt, die auf den Aufruf von GOSUB folgt. Im Falle des Handlers COLLISION wird die Ausführung an der Stelle fort- gesetzt, an der sie zum Aufruf des Handlers verlassen wurde.
RIGHT$ Token: Format: RIGHT$(String, Länge) Zweck: Gibt einen String zurück, der die letzten Länge Zeichen von String ent- hält. Wenn die Länge von String gleich oder kleiner als Länge ist, ist der Ergebnisstring identisch mit dem Argument String. String ist ein String-Ausdruck. Länge ist ein numerischer Ausdruck (0-255).
RMOUSE Token: $FE $3F Format: RMOUSE x-Variable, y-Variable, Maustasten-Variable Zweck: Liest die Mausposition und den Status der Maustasten. x-Variable ist eine numerische Variable, in der die x-Position gespeichert wird. y-Variable ist eine numerische Variable, in der die y-Position gespeichert wird. Mausknopf-Variable ist eine numerische Variable, die den Status der Maustasten erhält.
Token: Format: RND(Typ) Zweck: Gibt eine Pseudo-Zufallszahl zurück. Dies wird als ”Pseudo”-Zufallszahl bezeichnet, da die Zahlen nicht wirk- lich zufällig sind. Sie werden von einer anderen Zahl abgeleitet, die als ”seed” (dt. ”Saat”) bezeichnet wird und reproduzierbare Sequenzen er- zeugt. Typ legt fest, welcher ”seed”verwendet wird: •...
RPALETTE Token: $CE $0D Format: RPALETTE(Bildschirm, Index, RGB) Zweck: Gibt den Rot-, Grün- oder Blauwert eines Palettenfarbindexes zurück. Bildschirm Bildschirmnummer (0-3) Index Palettenfarbindex RGB (0: Rot, 1: Grün, 2: Blau) Beispiel: Verwendung von RPALETTE:...
RPLAY Token: $FE $0F Format: RPLAY(Stimme) Zweck: RPLAY gibt einen Wert (0 oder 1) zurück, um anzuzeigen, ob eine Melodie auf dem angegebenen Stimmkanal gespielt wird (1) oder nicht (0). Stimme ist der zu überprüfende Stimmkanal (1-6). Beispiel: Verwendung von RPLAY:...
RREG Token: $FE $09 Format: RREG [{a-Register, x-Register, y-Register, z-Register, s-Register}] Zweck: Liest die Werte, die nach einem SYS-Aufruf in den CPU-Registern stehen, in die angegebenen Variablen. a-Register erhält den Wert des Akkumulators. x-Register erhält den Wert des X-Registers. y-Register erhält den Wert des Y-Registers. z-Register erhält den Wert des Z-Registers.
RSPCOLOR Token: $CE $07 Format: RSPCOLOR(Index) Zweck: Gibt Farben eines mehrfarbigen Sprites zurück. Index Farbindex des mehrfarbigen Sprites: • 1 liefert Farbe Nummer 1. • 2 liefert Farbe Nummer 2. Notiz: Weitere Informationen finden Sie unter SPRITE und SPRCOLOR. Beispiel: Verwendung von RSPCOLOR:...
RSPEED Token: $CE $0E Format: RSPEED(Dummy) Zweck: Gibt die aktuelle CPU-Geschwindigkeit in MHz zurück. POKE 0,65 Dummy ist ein numerisches Wert, der ignoriert wird. Notiz: RSPEED gibt nicht den korrekten Wert zurück, wenn zuvor verwendet wurde, um die höchste Geschwindigkeit (40 MHz) zu aktivie- ren.
RSPPOS Token: $CE $05 Format: RSPPOS(Sprite, Parameter) Zweck: Gibt die Position und Geschwindigkeit eines Sprites zurück. Sprite ist die Nummer des Sprites (0-7). Parameter ist der Sprite-Parameter zum Abrufen: • 0 X-Koordinate der aktuellen Position • 1 Y-Koordinate der aktuellen Position •...
RSPRITE Token: $CE $06 Format: RSPRITE(Sprite, Parameter) Zweck: Gibt den angegebenen Parameter eines Sprites zurück. Sprite ist die Nummer des Sprites (0-7). Parameter ist der Sprite-Parameter zum Abrufen folgender Werte: • 0 Sprite ist an (1) oder aus (0). • 1 Vordergrundfarbe (0-15) •...
Token: Format: RUN [Zeilennummer] RUN Dateiname [,D Laufwerk] [,U Gerät] Zweck: Startet die Ausführung eines BASIC-Programms. Wenn ein Dateiname angegeben wird, wird die Programmdatei in den Speicher geladen und ausgeführt, andernfalls wird das Programm, das sich gerade im Speicher befindet, gestartet. Zeilennummer ist eine existierende Zeilennummer des aktuell im Spei- cher befindlichen Programms, von der die Ausführung gestartet werden soll.
RWINDOW Token: $CE $09 Format: RWINDOW(Parameter) Zweck: Gibt Informationen über das aktuelle Textfenster zurück. Parameter ist der Bildschirm-Parameter zum Abrufen folgender Werte: • 0 Breite des aktuellen Textfensters • 1 Höhe des aktuellen Textfensters. • 2 Anzahl der Spalten auf dem Bildschirm (40 oder 80). Notiz: Ältere Versionen von RWINDOW im BASIC 10 berichteten hiervon ab- weichend über die letztmögliche Spaltenposition (= Breite - 1) und die...
SAVE Token: Format: SAVE Dateiname [, Gerät] ← Dateiname [, Gerät] Zweck: Speichert ein BASIC-Programm in eine Datei des Typs PRG. Dateiname ist entweder ein String in Anführungszeichen, z.B. ”Daten” oder ein Stringausdruck in Klammern gesetzt, z.B. (FI$). Die maximale Länge des Dateinamens beträgt 16 Zeichen, wobei das optionale Zeichen zum Speichern und Ersetzen und die Laufwerksde- finition in dem Dateinamen nicht mitgezählt werden.
SAVEIFF Token: $FE $44 Format: SAVEIFF Dateiname [,D Laufwerk] [,U Gerät] Zweck: Speichert ein Bild aus dem Speicher in eine Diskettendatei im IFF-Format. Das IFF (”Interchange File Format”, dt. etwa ”Austausch-Dateiformat”) wird von vielen verschiedenen Anwendungen und Betriebssystemen un- terstützt. SAVEIFF speichert das Bild, die Palette und die Auflösungspa- rameter.
SCNCLR Token: Format: SCNCLR [Farbe] Zweck: Löscht ein Textfenster oder einen Bildschirm. SCNCLR ohne Argumente löscht das aktuelle Textfenster. Das Standard- fenster nimmt den gesamten Bildschirm ein. SCNCLR Farbe löscht den Grafikbildschirm, indem er ihn mit der ange- gebenen Farbe füllt. Beispiel: Verwendung von SCNCLR:...
SCRATCH Token: Format: SCRATCH Dateiname [,D Laufwerk] [,U Gerät] [,R] Zweck: SCRATCH (dt. ”kratzen”) wird verwendet, um eine Datei auf der Diskette zu löschen. Dateiname ist entweder ein String in Anführungszeichen, z.B. ”Daten” oder ein Stringausdruck in Klammern gesetzt, z.B. (FI$). Laufwerk (drive) ist die Laufwerksnummer bei Diskettenstationen mit zwei Laufwerken.
SCREEN Token: $FE $2E Format: SCREEN [Nummer,] Breite, Höhe, Farbtiefe SCREEN CLR Farbe SCREEN DEF Nummer, Breiten-Flag, Höhen-Flag, Farbtiefe SCREEN SET Drawscreen, Viewscreen SCREEN OPEN [Nummer] SCREEN CLOSE [Nummer] Zweck: Bei der Vorbereitung des Bildschirms für das Zeichnen von Grafiken gibt es folgende zwei Varianten: Eine vereinfachte Variante und eine detail- lierte Variante.
Seite 242
Wenn Sie mit Ihrem Grafikbildschirm fertig sind, rufen Sie SCREEN CLOSE [Nummer] auf, um zum Textbildschirm zurückzukehren. Detaillierte Variante: Die andere Variante von SCREEN führt spezielle Aktionen aus, die für fortgeschrittene Grafikprogramme verwendet werden, die mehrere Bild- schirme öffnen oder ”double buffering” (dt. ”doppelte Pufferung”) erfor- dern.
Seite 243
nes Bildschirms automatisch der Befehl PALETTE RESTORE durchgeführt wird. Beispiel: Verwendung von SCREEN:...
Token: $FE $2D Format: SET DEF Gerät SET DISK Alt TO Neu SET VERIFY <ON | OFF> Zweck: SET DEF definiert die Standardeinheit für den Diskettenzugriff neu. Nach dem Einschalten des MEGA65 ist dieser Wert auf 8 gesetzt. Befehle, die nicht ausdrücklich eine Einheit angeben, verwenden diese Standardein- heit.
Token: Format: SGN(numerischer Ausdruck) Zweck: Ermittelt das Vorzeichen des numerischen Ausdrucks und gibt es als Zahl zurück: • -1 der Ausdruck ist negativ (< 0) • -0 der Ausdruck ist Null (= 0) • 1 der Ausdruck ist positiv (> 0) Beispiel: Verwendung von SGN:...
Token: Format: SIN(numerischer Ausdruck) Zweck: Gibt den Sinus des numerischen Ausdrucks zurück. Das Argument wird im Bogenmaß erwartet. Das Ergebnis liegt im Bereich (-1.0 bis +1.0) Notiz: Ein Argument in Grad kann ins benötigte Bogenmaß umgerechnet wer- den, indem es mit π/180 multipliziert wird. Beispiel: Verwendung von SIN:...
SLEEP Token: $FE $0B Format: SLEEP Sekunden Zweck: SLEEP (dt. ”schlafe”) hält die Ausführung des Programms für die angege- bene Dauer (in Sekunden) an. Das Argument ist eine positive Fließkom- mazahl. Die Genauigkeit beträgt 1 Mikrosekunde. Notiz: Durch Drücken der -Taste wird der Ruhezustand unterbrochen.
SOUND Token: Format: SOUND Stimme, Frequenz, Dauer [{, Richtung, Minimum, Sweep, Wellen- form , Impulsweite}] Zweck: Spielt einen Soundeffekt ab. Stimme Stimmennummer (1-6). Frequenz Frequenz (0-65535). Dauer ein Wert für die Dauer des Effekts (0-32767). Die tatsächliche Dauer hängt von der Bild-Darstellungsnorm ab. Bei PAL (wie in Deutsch- land üblich) entspricht ein Wert von 50 einer Sekunde, bei NTSC ent- spricht ein Wert von 60 einer Sekunde.
Token: Format: SPC(Anzahl) Zweck: Überspringt Anzahl Spalten bei der Ausgabe. → Dies entspricht einem Anzahl-maligem Drücken der -Taste. Notiz: Der Name dieser Funktion ist von SPACES (dt. ”Leerzeichen”) abgeleitet, was irreführend ist. Die Funktion gibt Cursorbewegungen nach rechts aus, keine Leerzeichen. Die damit übersprungenen Zeichen werden nicht geändert.
SPEED Token: $CE $0E Format: SPEED [Geschwindigkeit] Zweck: Setzt die CPU-Geschwindkeit auf 1 MHz, 3.5 MHz oder 40 MHz. Geschwindigkeit ist die CPU-Geschwindigkeit, wobei: • 1 die CPU-Geschwindigkeit auf 1 MHz setzt. • 3 die CPU-Geschwindigkeit auf 3,5 MHz setzt. •...
SPRCOLOR Token: $FE $08 Format: SPRCOLOR [{Farbe1, Farbe2}] Zweck: Legt die Farben der mehrfarbigen Sprites fest. Der SPRITE-Befehl, der die Attribute eines Sprites setzt, setzt nur die Vordergrundfarbe. Für die Einstellung der zusätzlichen zwei Farben von mehrfarbigen Sprites verwenden Sie stattdessen SPRCOLOR. Notiz: Die mit SPRCOLOR angegebenen Farben wirken sich auf alle Sprites aus.
SPRSAV Token: $FE $16 Format: SPRSAV Quelle, Ziel Zweck: Kopiert Spritedaten. Quelle ist eine Spritenummer oder String-Variable. Ziel ist eine Spritenummer oder String-Variable. Notiz: Quelle und Ziel können entweder eine Spritenummer oder eine String- Variable sein, jedoch können nicht beide gleichzeitig eine String-Variable sein.
Token: Format: SQR(numerischer Ausdruck) Zweck: Gibt die Quadratwurzel des numerischen Ausdrucks zurück. Notiz: Das Argument darf nicht negativ sein. Beispiel: Verwendung von SQR:...
Seite 256
Format: Zweck: ST enthält den Status der letzten Ein-/Ausgabe-Operation. Falls ST gleich Null ist, lag kein Fehler vor, andernfalls wird ST auf einen geräteabhängigen Fehlercode gesetzt. Notiz: ST ist eine reservierte Systemvariable. Beispiel: Verwendung von ST:...
Seite 257
STEP Token: Format: FOR Index = Start TO Ende [STEP Schrittweite] ... NEXT [Index] Zweck: STEP ist ein optionaler Teil einer FOR-Schleife. Index kann bei jeder Iteration um einen konstanten Wert erhöht oder ver- ringert werden. Der Standardwert ist, die Variable jeweils um 1 zu erhö- hen.
STOP Token: Format: STOP Zweck: Stoppt die Ausführung des BASIC-Programms. Es wird eine Meldung mit READY. der Zeilennummer angezeigt, in der das Programm angehalten wurde. Die Eingabeaufforderung erscheint und der Computer geht in den Direktmodus über und wartet auf Tastatureingaben. Notiz: Alle Variablendefinitionen sind nach STOP noch gültig.
STR$ Token: Format: STR$(numerischer Ausdruck) Zweck: Gibt einen String zurück, der den formatierten Wert des Arguments ent- hält, so als ob er mit PRINT in den String ausgegeben worden wäre. Notiz: Mit STR$ ist es zum Beispiel möglich, eine Zahl in einen String umzuwan- deln.
Token: Format: SYS Adresse [{, a-Register, x-Register, y-Register, z-Register, s- Register}] Zweck: SYS ruft ein Maschinensprache-Unterprogramm auf. Dabei kann es sich um eine Systemroutine oder um ein anderes Programm handeln, das zu- vor in den Arbeitsspeicher geladen oder mittels POKE erstellt worden ist. Die CPU-Register werden mit den Argumenten geladen (falls sie ange- geben sind), dann wird ein Unterprogrammaufruf (JSR Adresse) durch- geführt.
Seite 261
RAM besteht, in dem keine Ein-/Ausgabe- oder Kernal-Systemroutinen eingeblendet sind. Die korrekte Verwendung von SYS (d.h. ohne das BASIC-RAM zu beein- flussen und Zugriff auf Kernal- und Ein-/Ausgabe-Routinen zu haben) er- fordert einige technische Kenntnisse, die den Rahmen dieses Referenz- handbuchs sprengen würden.
Token: Format: TAB(Spalte) Zweck: Positioniert den Cursor an der Spaltennummer Spalte. Dies geschieht nur, wenn die Zielspalte rechts von der aktuellen Cursor- Spalte liegt, andernfalls wird der Cursor nicht bewegt. Die Spaltenzäh- lung beginnt am linken Rand mit der Spalte 0. Notiz: Diese Funktion ist nicht zu verwechseln mit der -Taste, die den Cur-...
Token: Format: TAN(numerischer Ausdruck) Zweck: Gibt den Tangens des Arguments zurück. Das Argument wird in der Einheit Bogenmaß erwartet. Das Ergebnis liegt im Bereich (-1.0 bis +1.0) Notiz: Ein Argument in Grad-Einheiten kann durch Multiplikation mit π/180 in Bogenmaß umgewandelt werden. Beispiel: Verwendung von TAN:...
TEMPO Token: $FE $05 Format: TEMPO Geschwindigkeit Zweck: Legt die Wiedergabegeschwindigkeit für PLAY fest. Geschwindigkeit ist ein Wert im Bereich 1-255. Die Dauer (in Sekunden) einer ganzen Note wird mit Dauer = 24/Geschwindigkeit berechnet. Beispiel: Verwendung von TEMPO:...
THEN Token: Format: IF Ausdruck THEN wahr-Klausel [ELSE falsch-Klausel] Zweck: THEN ist Teil einer IF-Anweisung. Ausdruck ist ein logischer oder numerischer Ausdruck. Ein numerischer Ausdruck wird als FALSE (”falsch”) ausgewertet, wenn der Wert Null ist und TRUE (”wahr”) für jeden Wert ungleich Null. wahr-Klausel ist eine oder mehrere Anweisungen, die direkt nach THEN in derselben Zeile beginnen.
Seite 266
Format: Zweck: TI ist ein hochpräziser Timer mit einer Auflösung von 1 Mikrosekunde. Er wird mit CLR TI gestartet oder zurückgesetzt und kann wie jede andere Variable in Ausdrücken angesprochen werden. Notiz: TI ist eine reservierte Systemvariable. Der Wert in TI ist die Anzahl der Se- kunden (mit 6 Dezimalstellen) seit der letzten Löschung oder dem letzten Start.
Seite 267
Format: Zweck: TI$ speichert die Zeitinformationen der RTC (Real-Time Clock, dt. ”Echtzeituhr”) in Textform, wobei folgendes Format verwendet wird: ”hh:mm:ss”. Die Systemvariable wird bei jeder Verwendung aktualisiert. TI$ ist eine schreibgeschützte Variable, die die Register der RTC ausliest und die Werte in ein String formatiert. Notiz: TI$ ist eine reservierte Systemvariable.
Seite 268
Token: Format: Schlüsselwort TO Zweck: TO ist ein sekundäres Schlüsselwort, das in Kombination mit primären Schlüsselwörtern wie BACKUP, BSAVE, CHANGE, CONCAT, COPY, FOR, GO, RENAME und SET DISK verwendet wird. Notiz: TO kann nicht allein verwendet werden. Beispiel: Verwendung von TO:...
TRAP Token: Format: TRAP [Zeilennummer] Zweck: TRAP einer gültigen Zeilennummer aktiviert BASIC- Fehlerbehandlungsroutine ab Zeilennummer. Wenn ein Programm einen Fehlerbehandlungsroutine aktiviert hat, ändert sich das Laufzeit- verhalten. Normalerweise wird BASIC das Programm beenden und eine Fehlermeldung anzeigen. Wenn jedoch eine BASIC-Fehlerbehandlungsroutine aktiviert wurde, speichert BASIC stattdessen den Ausführungszeiger und die Zeilennum- mer, legt die Fehlernummer in der Systemvariablen ER ab und springt zu der bei TRAP angegebenen Zeilennummer.
TRON Token: Format: TRON Zweck: Aktiviert den Trace-Modus (wird durch TROFF deaktiviert). Wenn Sie das BASIC 65-Programm ausführen, werden die jeweiligen Zei- lennummern in Klammern angezeigt, bevor eine Aktion für diese Zeile er- folgt. Beispiel: Verwendung von TRON:...
TYPE Token: $FE $27 Format: TYPE Dateiname [,D Laufwerk] [,U Gerät] Zweck: Gibt den Inhalt einer Datei aus, die PETSCII-kodierten Text enthält. Dateiname ist entweder ein String in Anführungszeichen, z.B. ”Daten” oder ein Stringausdruck in Klammern gesetzt, z.B. (FI$). Laufwerk (drive) ist die Laufwerksnummer bei Diskettenstationen mit zwei Laufwerken.
UNTIL Token: Format: DO ... LOOP DO [<UNTIL | WHILE> logischer Ausdruck] . . . Befehle [EXIT] LOOP [<UNTIL | WHILE> logischer Ausdruck] Zweck: DO und LOOP definieren den Start einer BASIC-Schleife. Die Verwen- dung von DO und LOOP ohne jegliche Modifikatoren wird eine Endlos- schleife erzeugt, die nur durch die Anweisung EXIT verlassen werden kann.
USING Token: Format: PRINT[# Kanal,] USING Format; Argument Zweck: Gibt unter Berücksichtigung von Format das Argument aus. Das Argument kann entweder ein String oder ein numerischer Wert sein. Das Format der Ausgabe richtet sich nach dem String Format. Kanal ist die Kanalnummer, die bei einem vorherigen Aufruf von Befehlen wie APPEND, DOPEN oder OPEN verwendet worden ist.
Token: Format: USR(numerischer Ausdruck) Zweck: Ruft eine Assembler-Routine auf, deren Speicheradresse bei $02F8 - $02F9 gespeichert ist. Das Ergebnis des numerischen Ausdrucks wird in den Fließkomma-Akkumulator 1 geschrieben. Nach der Ausführung der Assembler-Routine gibt BASIC den Inhalt des Fließkomma-Akkumulators 1 zurück. Notiz: Die Bänke 0-127 ermöglichen den Zugriff auf RAM- oder ROM-Bänke.
Token: Format: VAL(String-Ausdruck) Zweck: Konvertiert einen String in einen Fließkommawert. Diese Funktion verhält sich genauso wie das Lesen aus einem String. Notiz: Ein String, der eine ungültige Zahl enthält, führt nicht zu einem Fehler, sondern liefert stattdessen 0 als Ergebnis. Beispiel: Verwendung von VAL:...
VERIFY Token: Format: VERIFY Dateiname [, Gerät [, Binärflag]] Zweck: VERIFY ohne Binärflag vergleicht ein BASIC-Programm im Speicher mit einer Datei auf Diskette des Typs PRG. Es macht das Gleiche wie DVERI- FY, allerdings unterscheidet sich die Syntax. VERIFY mit Binärflag vergleicht einen Speicherbereich mit einer Datei auf Diskette des Typs PRG.
VIEWPORT Token: $FE $31 Format: VIEWPORT CLR VIEWPORT DEF x, y, Breite, Höhe Zweck: VIEWPORT DEF definiert einen sogenannten Clipping-Bereich (dt. etwa ”Ausschnittsbereich”) mit dem Ursprung (obere linke Position) auf x, y und der Breite und Höhe. Alle folgenden Grafikbefehle sind auf den Bereich VIEWPORT beschränkt.
Token: Format: VOL Lautstärke Zweck: Stellt die Lautstärke für die Tonausgabe mit SOUND oder PLAY ein. Lautstärke 0 (aus) bis 15 (maximale Laustärke) Notiz: Diese Lautstärkeeinstellung wirkt sich auf alle Stimmen aus. Beispiel: Verwendung von VOL:...
WAIT Token: Format: WAIT Adresse, AND-Maske [, XOR-Maske] Zweck: Hält das BASIC-Programm an, bis ein angefordertes Bitmuster von der angegebenen Adresse gelesen wird. Adresse ist die Adresse in der aktuellen Speicherbank, die gelesen wird. AND-Maske ist die anzuwendende AND-Maske. XOR-Maske ist die anzuwendende XOR-Maske. WAIT liest den Byte-Wert von Adresse und wendet die Masken an: Ergebnis = PEEK(Adresse) AND AND-Maske XOR XOR-Maske.
WHILE Token: Format: DO ... LOOP DO [<UNTIL | WHILE> logischer Ausdruck] . . . Befehle [EXIT] LOOP [<UNTIL | WHILE> logischer Ausdruck] Zweck: DO und LOOP definieren den Start einer BASIC-Schleife. Die Verwen- dung von DO und LOOP ohne jegliche Modifikatoren wird eine Endlos- schleife erzeugt, die nur durch die Anweisung EXIT verlassen werden kann.
Token: Format: Operand XOR Operand Zweck: Der boolesche Operator XOR führt eine bitweise logische Exklusiv- ODER-Verknüpfung an zwei 16-Bit-Werten durch. Integer-Operanden werden so verwendet, wie sie sind. Reelle Operanden werden in eine vorzeichenbehaftete 16 Bit-Ganzzahl umgewandelt (mit Verlust der Ge- nauigkeit).
Schlüsselwörter und Token - Teil 1 AC COLOR E7 FAST FE25 AA CONCAT FE13 FGOSUB FE48 AB CONT 9A FGOTO FE47 AD COPY F4 FILTER FE03 < B3 COS BE FIND FE2B B2 CURSOR FE41 FN > B1 CUT E4 FONT FE46 B6 DATA 83 FOR...
Token und Schlüsselwörter - Teil 1 80 END A3 TAB( C6 ASC 81 FOR A4 TO C7 CHR$ 82 NEXT A5 FN C8 LEFT$ 83 DATA A6 SPC( C9 RIGHT$ 84 INPUT# A7 THEN CA MID$ 85 INPUT A8 NOT CB GO 86 DIM A9 STEP...
Token und Schlüsselwörter - Teil 2 EA HELP FE02 BANK FE26 SPEED EB DO FE03 FILTER FE27 TYPE EC LOOP FE04 PLAY FE28 BVERIFY ED EXIT FE05 TEMPO FE29 ECTORY EE DIR FE06 MOVSPR FE2A ERASE EF DSAVE FE07 SPRITE FE2B FIND F0 DLOAD FE08 SPRCOLOR...
PETSCII-CODES UND CHR$ In BASIC kann PRINT CHR$(X) verwendet werden, um ein Zeichen aus einem PETSCII-Code Tabelle verwenden, PRINT CHR$(65), dann werden Sie den Buchstaben A drucken. Weitere auszugeben. Unten finden Sie die vollständige Tabelle der PETSCII-Codes, die Sie nach Index ausgeben können. Zum Beispiel, wenn Sie Index 65 aus der untenstehenden Mit dem ASC-Befehl können Sie auch den umgekehrten Weg gehen.
Seite 292
106 J 163 t 76 L 135 F5 77 M 107 K 136 F7 164 [ 78 N 108 L 137 F2 165 g 79 O 109 M 138 F4 166 = 80 P 110 N 139 F6 167 m 81 Q 111 O 140 F8...
HINWEIS: Die Codes von 192 bis 223 entsprechen den Werten 96 bis 127. Die Codes von 224 bis 254 entsprechen 160 bis 190 und Code 255 ist gleich 126. KONTROLLCODES Tastatursteuerung Funktion Farben Wählen Sie aus der ersten Farbpalette. Weitere Informationen CTRL zu den verfügbaren Farben finden Sie unter dem BASIC-Befehl...
Seite 294
Tastatursteuerung Funktion Cursorbewegung Bewegt den Cursor jeweils um eine CTRL Zeile nach unten. Entspricht der ↓ Taste Bewegt den Cursor um eine Position nach unten. Wenn Sie sich in einer langen BASIC-Codezeile befinden, CTRL die sich auf zwei Zeilen ausgedehnt hat, bewegt sich der Cursor zwei Zeilen nach unten, um in die nächste Zeile zu gelangen.
Seite 295
Tastatursteuerung Funktion Bildlauf (Scrollen) BASIC-Listing um eine Zeile nach CTRL unten scrollen. Entspricht der Taste BASIC-Listing um eine Zeile nach CTRL oben scrollen. Entspricht der Taste Unterbindet das Scrollen. Entspricht CTRL der Taste SCROLL Formatierung Aktiviert den Unterstreichungsmodus für Text. Sie können den Unterstreichungsmodus CTRL deaktivieren, indem Sie die...
Tastatursteuerung Funktion Sonstiges CTRL Erzeugt einen Glockenton. Entspricht dem Drücken der CTRL -Taste. Ruft den Matrix-Modus-Debugger CTRL auf. SHIFT-CODES Tastatursteuerung Funktion Fügt ein Zeichen an der aktuellen Cursorposition ein und verschiebt SHIFT INST alle Zeichen um eine Position nach rechts. Löscht den gesamten Bildschirm und SHIFT HOME...
ESCAPE-SEQUENZEN Um eine Escape-Sequenz auszuführen, drücken Sie die Taste , lassen sie wieder los und drücken anschließend eine der folgenden Tasten: Taste Aktion Editor-Verhalten Löscht den Bildschirm und schaltet zwischen dem 40- und 80-Spalten-Modus um. Löscht einen Bereich des Bildschirms, beginnend mit der aktuellen Cursorposition bis zum Ende des Bildschirms.
Seite 298
Taste Aktion Einfügen und Löschen Fügt an der aktuellen Cursorposition eine Leerzeile ein und verschiebt alle nachfolgenden Zeilen um eine Position nach unten. Löscht die aktuelle Zeile und verschiebt die Zeilen unterhalb des Cursors um eine Position nach oben. Löscht alle Zeichen ab der Cursorposition bis zum Anfang der aktuellen Zeile.
Seite 299
Taste Aktion Fenstersteuerung Legt die linke obere Ecke des Fensterbereichs fest. Alle getippten Zeichen und Bildschirmaktivitäten werden auf diesen Bereich beschränkt. Siehe auch Der Fenstermodus kann durch zweimaliges Drücken von HOME deaktiviert werden. Legt die untere rechte Ecke des Fensterbereichs fest. Alle getippten Zeichen und Bildschirmaktivitäten werden auf diesen Bereich beschränkt.
Seite 300
Taste Aktion Glocke CTRL Aktiviert die Glocke, die mit ausgelöst werden kann. Deaktiviert die Glocke, so dass das CTRL Drücken von keine Wirkung hat. Farben Schaltet den VIC-IV auf den Farbbereich 16-31 um. Auf diese CTRL Farben kann mit und den Tasten oder der Taste und den Tasten...
Seite 307
MEGA65-TEAM Dr. Paul Gardner-Stephen Detlef Hastik (highlander) (deft) Gründer Mitbegründer Software und virtuelle Hardware Vorsitzender Pressesprecher und leitender Wissenschaftler Marketing und Vertrieb Martin Streit Anton Schneider-Michallek (seriously) (adtbm) Video- und Fotoproduktion Verwaltung des Hardware-Pools Steuer und Organisation Soft-, Hard- und V-Hardware-Tester Soziale Medien Forum-Administrator Falk Rehwagen...