OUT (TSB)

Aus C64-Wiki
Zur Navigation springenZur Suche springen
OUT (TSB)
Syntax: OUT [<n>] [ ; ]
Parameter
n: Fehlernummer
Einordnung
Typ: Anweisung
Kontext: Fehlerkontrolle
Aufgabe: Fehlertext ausgeben
Abkürzung: oU
Token: $64 $7f (100 127)
Verwandte Befehle
ON ERROR - RESUME - NO ERROR - ERRN - ERRLN


Dieser Artikel beschreibt das Schlüsselwort OUT (TSB).
Das entsprechende Simons'-Basic-Schlüsselwort lautet ebenfalls OUT.

Typ: Anweisung
Syntax: OUT [<n>] [ ; ]

OUT gibt den Text des letzten vom Interpreter gemeldeten Fehlers aus und setzt den Meldungspuffer zurück auf "kein Fehler". Unter TSB werden alle Fehler abgefangen, auch diejenigen der BASIC-Erweiterung selber (Nummern und Texte siehe unten). Mit OUT <n> kann man gezielt einen bestimmten Fehlertext zur Anzeige bringen. Fehlernummer 31 für <n> ist undefiniert.

Fehlt hinter OUT das Semikolon, wechselt der Cursor nach der Ausgabe des Fehlertextes auf die folgende Bildschirmzeile. Mit Semikolon bleibt der Cursor - wie auch bei PRINT - hinter der Fehlermeldung stehen.

In TSB v2.40424 wurden die Fehlermeldungen gegenüber Simons' Basic verkürzt.

TSB-Fehlernummern und ihre Texte:

Fehlernummer Fehlertext
32 BAD MODE
33 NO PROC
34 INSERT TOO LARGE
35 STRING TOO LARGE
36 BIN CHAR
37 HEX CHAR
38 END PROC W/O EXEC
39 END LOOP W/O LOOP
40 LOOP
41 UNTIL W/O REPEAT
42 NOT YET ACTIVE
43 TOO FEW LINES
44 BAD CHAR
45 NO ARRAY

Beispiel[Bearbeiten | Quelltext bearbeiten]

Ergebnis des Programmbeispiels
10 ON ERROR: GOTO 10000

15 PRIN "?CLR/HOME?": PRINT "OK"
20 FOR I=1 TO 6:READ B:PRINT B:NEXT
30 DATA 1,2,3,4,5
40 END

10000 PRINT: PRINT "FEHLER NR." ERRN "(";: OUT")"
10010 PRINT "BETROFFENE ZEILE:" ERRLN: PRINT
10020 PRINT "BEENDEN (B)? FORTSETZEN (F)? ";: FETCH "FB",1,X$: PRINT
10030 IF X$ = "B" THEN PRINT: PRINT "ABBRUCH NACH FEHLER!": STOP
10040 RESUME

Bei einem Programmlauffehler springt der Interpreter in die BASIC-Zeile 10000, gibt dort Informationen zum Fehler aus - mit OUT den Fehlertext in Klammern - und stellt Handlungsalternativen zur Auswahl.