C128 NetLex

Commodore 128 Bedienungshandbuch
Commodore 128 System Guide



8. Fehlermeldungen

8.1 BASIC-Fehlermeldungen

In diesem Abschnitt werden die Fehlermeldungen der BASIC-Interpreter 2.0 und 7.0 und ihre Fehlercodes (nur BASIC 7.0) aufgeführt. Zur schnelleren Orientierung werden zunächst die Fehlermeldungen in alphabetischer Reihenfolge angegeben, anschließend nach Fehlercodes geordnet.

Jeder Fehlermeldung wird bei der Anzeige stets das Wort ERROR (Fehler) hinzugefügt.

Im C64-Modus gibt es keine Fehlercodes und damit auch keine Möglichkeit der programmierten Fehlerverarbeitung. D.h., in diesem Modus führt ein Fehler auf jeden Fall zum Abbruch des laufenden Programms.

Im C128-Modus kann mit Hilfe der Systemvariablen EL und ER, der Funktion ERR$ sowie der Anweisungen TRAP und RESUME (s. dort in Kapitel 4.6) eine programmierte Fehlerverarbeitung realisiert werden.


Code Meldung und Bedeutung

36BAD DISK (Schlechte Diskette)  Es wurde entweder versucht, eine noch nicht formatierte Diskette mit dem verkürzten HEADER-Befehl (s. dort in Kapitel 4.6) zu löschen oder eine schadhafte Diskette zu formatieren.

18BAD SUBSCRIPT (Falscher Feldindex)  Es wird versucht, auf ein Feldelement zuzugreifen, das außerhalb des in der entsprechenden DIM-Anweisung festgelegten Bereiches liegt.

30BREAK (Unterbrechung)  Die STOP-Taste wurde gedrückt, um das laufende Programm zu unterbrechen.

26CAN'T CONTINUE (keine Fortsetzung möglich)  Der CONT-Befehl ist nur wirksam, wenn das Programm bereits einmal gelaufen ist und dann unterbrochen wurde. Während der Unterbrechung darf das Programm jedoch nicht verändert werden (z.B. durch Hinzufügen weiterer Zeilen).

31CAN'T RESUME (RESUME ohne TRAP)  Der Interpreter findet eine RESUME-Anweisung, ohne daß eine TRAP-Anweisung zur Fehlerverzweigung vorhanden ist.

5DEVICE NOT PRESENT (Gerät nicht angeschlossen)  Ein Ein-/Ausgabe-Gerät wird angesprochen, das entweder ausgeschaltet oder nicht angeschlossen ist, oder die Pufferzuweisung für Kassetten- Ein-/Ausgabe ist aufgehoben.

34DIRECT MODE ONLY (nur Direktmodus erlaubt)  Der Interpreter erkennt während der Abarbeitung eines Programms einen Befehl oder eine Anweisung, der/die nur im Direktmodus erlaubt ist.

20DIVISION BY ZERO (Division durch Null)  Eine Division durch den Wert 0 ist nicht zulässig, da das Ergebnis unendlich wird.

24FILE DATA (ungültige Dateidaten)  Es wird versucht, mit einer INPUT-Anweisung Zeichenkettendaten von einer Eingabedatei einer numerischen Variablen zuzuweisen.

4FILE NOT FOUND (Datei nicht gefunden)  Es wird entweder die spezifizierte Datei auf Diskette nicht gefunden oder die Bandendemarke auf Kassette wird gelesen.

3 FILE NOT OPEN (Datei nicht geöffnet)  Es wird eine Ein- oder Ausgabeoperation für eine Datei versucht, die vorher nicht geöffnet wurde.

2FILE OPEN (Datei bereits geöffnet)  Es wird versucht, mit einer logischen Dateinummer eine Datei zu öffnen, unter der bereits vorher eine andere Datei geöffnet wurde.

25FORMULA TOO COMPLEX (zu komplexer Ausdruck)  Es wird ein zu komplexer numerischer oder Zeichenkettenausdruck gefunden. Ausdruck teilen oder weniger Klammern verwenden.

9ILLEGAL DEVICE NUMBER (unerlaubte Geräteadresse)  Es wird entweder versucht, eine Ein-/Ausgabe-Operation mit einem unerlaubten Gerät oder Einheit auszuführen (z.B. SAVE zum Bildschirm), oder es wird eine Geräteadresse oberhalb von 15 verwendet.

21ILLEGAL DIRECT (unerlaubter Eingabemodus)  Es wird versucht, mit INPUT oder GET im Direktmodus Daten einzulesen.

14ILLEGAL QUANTITY (unerlaubter Wert)  Ein numerisches Argument einer Funktion oder ein numerischer Parameter für einen Befehl oder eine Anweisung liegt außerhalb des zulässigen Bereiches.

29LOAD (Ladefehler)  Beim Laden eines Programms von Kassette oder Diskette ist ein Lesefehler aufgetreten. Ein erneuter Versuch sollte zunächst gemacht werden.

32LOOP NOT FOUND (DO ohne LOOP)  Der Interpreter findet zu einer vorhandenen DO-Anweisung nicht die zugehörige LOOP-Anweisung.

33LOOP WITHOUT DO (LOOP ohne DO)  Der Interpreter findet eine LOOP-Anweisung ohne vorausgegangene DO-Anweisung.

8MISSING FILE NAME (Dateiname fehlt)  In einem Befehl oder einer Anweisung fehlt die vorgeschriebene Dateiangabe.

10NEXT WITHOUT FOR (NEXT ohne FOR)  Der Interpreter findet eine NEXT-Anweisung, zu der keine vorausgegangene FOR-Anweisung existiert.

35NO GRAPHICS AREA (kein Grafikbereich reserviert)  Es wird versucht, eine grafische Anweisung (BOX, CIRCLE, DRAW usw.) auszuführen, ohne daß vorher mit der GRAPHIC-Anweisung Speicherbereich reserviert wurde.

6NOT INPUT FILE (keine Eingabedatei)  Es wird versucht, mit INPUT oder GET aus einer Datei Daten zu lesen, die als Ausgabedatei geöffnet wurde.

7NOT OUTPUT FILE (keine Ausgabedatei)  Es wird versucht, mit PRINT oder CMD Daten in eine Datei auszugeben, die als Eingabedatei geöffnet wurde.

13OUT OF DATA (nicht genug Daten)  Es wird versucht, mit der READ-Anweisung mehr Daten zu lesen, als in DATA-Zeilen deklariert sind.

16OUT OF MEMORY (Speicherüberlauf)  Entweder reicht der Speicher für das Programm nicht aus, oder der Stapelspeicher ist wegen zuvieler aktiver DO-, FOR- oder GOSUB-Anweisungen übergelaufen.

15OVERFLOW (Überlauf)  Das Ergebnis einer Berechnung übersteigt den größten darstellbaren Wert (1.701411833E+38).

19REDIM'D ARRAY (mehrfache Felddimensionierung)  Feldvariablen dürfen in BASIC nur ein einziges Mal dimensioniert werden.

12RETURN WITHOUT GOSUB (RETURN ohne GOSUB)  Der Interpreter findet eine RETURN-Anweisung, zu der keine vorausgegangene GOSUB-Anweisung existiert.

23STRING TOO LONG (zu lange Zeichenkette)  Zeichenketten dürfen beim Commodore-BASIC nur maximal 255 Zeichen lang sein.

11SYNTAX (Syntaxfehler)  Ein BASIC-Befehl, eine BASIC-Anweisung, -Funktion oder -Systemvariable ist falsch geschrieben oder es fehlt eine Klammer, ein Komma o.ä.

1TOO MANY FILES (zu viele offene Dateien)  Im Commodore-BASIC sind maximal 10 gleichzeitig geöffnete Dateien erlaubt.

22TYPE MISMATCH (fehlende Variablentyp-Übereinstimmung)  Es wird eine numerische Variable verwendet, wo nur Zeichenkettenvariablen erlaubt sind oder umgekehrt.

17UNDEF'D STATEMENT (nichtdefinierte Zeilennummer)  Es wird auf eine Zeilennummer Bezug genommen, die in dem laufenden Programm nicht existiert.

27UNDEFINED FUNCTION (nichtdefinierte Funktion)  Eine anwenderspezifische Funktion wird verwendet, die vorher nicht mit DEF FN definiert wurde.

28VERFIY (Programm-Verifizierungsfehler)  Ein mit Hilfe des VERIFY-Befehls ausgeführter Vergleich des Programms im Hauptspeicher mit dem entsprechenden Programm auf Kassette oder Diskette ist nicht erfolgreich.


BASIC-Fehlermeldungen, geordnet nach Fehlercodes

CodeMeldung

CodeMeldung
 1TOO MANY FILES19REDIM'D ARRAY
 2FILE OPEN
20DIVISION BY ZERO
 3FILE NOT OPEN21ILLEGAL DIRECT
 4FILE NOT FOUND22TYPE MISMATCH
 5DEVICE NOT PRESENT 23STRING TOO LONG
 6NOT INPUT FILE24FILE DATA
 7NOT OUTPUT FILE25FORMULA TOO COMPLEX
 8MISSING FILE NAME26CAN'T CONTINUE
 9 ILLEGAL DEVICE NUMBER27UNDEFINED FUNCTION
10NEXT WITHOUT FOR28VERIFY
11SYNTAX29 LOAD
12RETURN WITHOUT GOSUB30 BREAK
13OUT OF DATA31CAN'T RESUME
14ILLEGAL QUANTITY32LOOP NOT FOUND
15OVERFLOW33LOOP WITHOUT DO
16OUT OF MEMORY34DIRECT MODE ONLY
17UNDEF'D STATEMENT35NO GRAPHICS AREA
18BAD SUBSCRIPT36BAD DISK


Auszug aus dem Commodore C128 (D) Bedienungshandbuch: Seite 8-1 bis 8-5


[Seitenanfang] [Infos] [Links] [Lexikon] [Home]
Erstellt von WTE, am 08. Februar 2009; überarbeitet am 08. Februar 2009