RCLR

Aus C64-Wiki
Wechseln zu: Navigation, Suche
RCLR
Format: RCLR(<Farbquelle>)
Parameter
<Farbquelle>: numerischer Ausdruck im Wertebereich 0 bis 4 (BASIC 3.5) bzw. 0 bis 6 (BASIC 7.0)
Einordnung
Typ: Ganzzahl-Funktion
Kontext: Grafik
Aufgabe: Ermittlung der Farbe, die einer Farbquelle zugewiesen ist
Abkürzung: rC
Verwandte Befehle
COLOR, RDOT, RLUM

Anmerkung: Dieser Artikel beschreibt die BASIC-Funktion RCLR ab Commodore BASIC V3.5 oder höher.

Die BASIC-Funktion RCLR() (Abk. für engl. read color) ermittelt die aktuell einer Farbquelle zugewiesene Farbe.

Parameter unter BASIC 3.5[Bearbeiten]

Unter BASIC 3.5 sind für den Parameter <Farbquelle> folgende Werte verwendbar:

Wert für
Farbquelle
Bereich
0 Hintergrund
1 Vordergrund
2 Multicolor-Grafik 1
3 Multicolor-Grafik 2
4 Bildschirmrahmen

Andere Werte verursachen einen ?ILLEGAL QUANTITY ERROR.

Der zurückgegebene Wert im Bereich von 0 bis 15 ist der aktuell eingestellte Farbwert. Aufgrund eines Fehlers wird für die Farbe mit Wert 16 die Zahl 0 retourniert. Die zur Farbe gehörende Helligkeitsstufe kann mit der RLUM-Funktion ermittelt werden. Details zu den Farben finden sich im Artikel COLOR.

Parameter unter BASIC 7.0[Bearbeiten]

Unter BASIC 7.0 sind für den Parameter Farbquelle folgende Werte verwendbar:

Wert für
Farbquelle
Anzeigemodus Beschreibung
0 40-Zeichenmodus (VIC), Text und Grafik Hintergrund
1 40-Zeichenmodus (VIC), Text und Grafik Vordergrund
2 40-Zeichenmodus (VIC), nur Multicolor-Grafik Multicolor-Farbe 1
3 40-Zeichenmodus (VIC), nur Multicolor-Grafik Multicolor-Farbe 2
4 40-Zeichenmodus (VIC) Bildschirmrahmen
5 80-Zeichenmodus (VDC), Text Vordergrund
6 80-Zeichenmodus (VDC), Text Hintergrund

Andere Werte verursachen einen ?ILLEGAL QUANTITY ERROR.

Der zurückgegebene Wert im Bereich von 1 bis 16 entspricht der aktuell eingestellten Farbe. Details zu den Farben finden sich im Artikel COLOR (BASIC 7.0).

Beispiele[Bearbeiten]

PRINT RCLR(0)

Gibt die aktuell eingestellte Hintergrundfarbe aus.

BASIC 3.5 Fehlverhalten:

10 FOR C=1 TO 16
20 COLOR 4,C; PRINT C ":" RCLR(4)
30 NEXT
1 : 1
2 : 2
3 : 3
4 : 4
5 : 5
6 : 6
7 : 7
8 : 8
9 : 9
10 : 10
11 : 11
12 : 12
13 : 13
14 : 14
15 : 15
16 : 0

Bei Farbwert 16 wird statt 16 unerwarteterweise 0 zurück gegeben!