AUTO (BASIC 3.5)

Aus C64-Wiki
Wechseln zu: Navigation, Suche
AUTO (BASIC 3.5)
Format: AUTO [<n>]
Parameter
<n>: Ganzzahl im Wertebereich von 0 bis 63999
Einordnung
Typ: Befehl
Kontext: BASIC-Editor
Aufgabe: Automatische Zeilennummerierung ein- oder ausschalten
Abkürzung: aU
Verwandte Befehle

Anmerkung: Dieser Artikel beschreibt den BASIC-Befehl AUTO ab Commodore BASIC V3.5 oder höher

Der Befehl AUTO schaltet die automatische Zeilennummerierung ein, wobei nun der Computer die Zeilennummer(n) bei der Programmierung vorgibt. Die Zeilennummer wird jeweils um den Wert n inkrementiert (erhöht).
Die automatische Zeilennummerierung startet nach der Eingabe der ersten Zeile mit einem Inhalt (min. ein Zeichen, aber kein Leerzeichen). Nach dem Drücken der Taste RETURN  am Ende einer Zeile wird beim Sprung in die nächste Zeile automatisch die nächste Zeilennummer angezeigt und der Cursor unmittelbar danach positioniert. Vorhandene Zeilen mit selber Zeilennummer werden bei Eingabe der gleichen Zeilennummer wieder überschrieben!
Diese automatische Fortschreibung endet vorläufig mit der Eingabe einer Leerzeile (Achtung: diese Zeile wird aber dann auch gelöscht!), einer Fehlermeldung oder der Cursor wird zu einer anderen Stelle bewegt (eleganter Lösung ohne das Zeilen gelöscht werden).
Die Eingabe von RUN oder der Aufruf von AUTO ohne Argument bzw. mit n kleiner 1 (Null bzw. negative Werte) beendet die automatische Zeilennummerierung dann bleibend.

AUTO kann nicht innerhalb von Programmen genutzt werden. So führt ein 10 AUTO 10 beim Programmablauf zu einem ?DIRECT MODE ONLY ERROR IN 10.

Wurde für n ein Wert größer als 63.999 eingegeben oder wird versucht eine vorgegebene Zeilennummer größer als 63.999 einzugeben, so erscheint die Fehlermeldung ?SYNTAX ERROR. Fließkomma-Werte werden wie mit INT behandelt als Ganzzahl aufgefasst.

Beispiel[Bearbeiten]

Dieses Beispiel zeigt die automatische Zeilennummerierung mit der Schrittweite 64 (an einer Stelle, wird statt RETURN  als Zeilenabschluss eine Cursortaste verwendet):

AUTO 64
 
READY.
0 PRINT CHR$(147) "C64-WIKI"
64 A$ = "DIES IST EIN BEISPIEL"
128 CRSR ⇓  
LIST
0 PRINT CHR$(147) "C64-WIKI" 
64 A$ = "DIES IST EIN BEISPIEL"

READY.