SCRLD (TSB)

Aus C64-Wiki
Zur Navigation springenZur Suche springen
SCRLD (TSB)
Format: SCRLD <fn>,<dr>,<sa>,<name> [+",<ft>,r"]
Parameter
fn: Filenummer
dr: Laufwerk
sa: Sekundäradresse (2 oder 3)
name: Filename
ft: Filetype (u, s, p)
Einordnung
Typ: Anweisung
Kontext: Ein- / Ausgabe
Aufgabe: speichert einen Textbildschirm oder eine Grafik-Bitmap
Abkürzung: keine
Verwandte Befehle
SCRSV - MERGE - LIN - LOAD - SAVE


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

Typ: Anweisung
Syntax: SCRLD <fn>,<dr>,<sa>,<name> [+",<ft>,r"]

1. Alternative

Siehe den gleichlautenden Simons'-Basic-Befehl SCRLD. Diese Alternative lädt einen Textbildschirm inklusive seiner Farben.

2. Alternative

Der TSB-Befehl SCRLD ist zusätzlich in der Lage, die Bitmap eines Grafikbildes zu laden. Dazu ist nur eine winzige Änderung in der Parameterangabe erforderlich: Die Sekundäradresse <sa> muss "3" lauten. TSB lädt 8192 Bytes, d.h. den kompletten Grafikpuffer (unter TSB ab $e000), erwartet also eine 33 Blöcke große Datei.

Hinweis: Die Bildfarben lädt TSB nicht, es gibt aber eine einfache Möglichkeit, auch diesen Nachteil zu umgehen. Wenn man mit POKE $b21c, $c0: SCRSV 1,dr,2,"name,p,w": POKE $b21c,4 die Grafikfarben in einer zweiten Datei abgespeichert hat, kann man sie mit den gleichen POKEs auch wieder laden. Bei Bildern im Multicolor-Modus muss man sich irgendwie die Hintergrundfarbe merken, am besten im Filenamen der Farbendatei, damit die Farbnummer nicht in Vergessenheit gerät.

Beachten: Entgegen der TSB-Eigenschaft, bei Befehlen, die die Floppy-Laufwerke ansprechen, die Gerätenummer wegfallen lassen zu können, muss sie bei SCRLD ausdrücklich mit angegeben werden, sonst greift TSB auf die falsche Diskette zu oder produziert einen Floppy-Error (s. auch USE).


Beispiel:

1550 PROC tsbload
1560 HIRES 1,0: MULTI 11,12,15
1565 SCRLD 1,i8,3,"image *"
1570 POKE $b21c,$c0
1575 SCRLD 1,i8,2,"imagecols"
1580 COLOUR bg
1585 POKE $b21c,4
1595 END PROC

Lädt eine Grafik samt Farben unter dem angegebenen Namen in zwei Dateien von Disk auf Gerät gemäß Variable i8. Die Variable bg enthält die Nummer der Hintergrundfarbe aus dem Dateinamen "image"+STR$(bg). Die Werte bei HIRES und MULTI sind beliebig, da sie von den Dateien überschrieben werden.