SCRSV

Aus C64-Wiki
Zur Navigation springenZur Suche springen
SCRSV
Syntax: SCRSV <fn>,<dr>,<sa>,<name>+",<ft>,w"
Parameter
fn: Dateinummer
dr: Laufwerk
sa: Sekundäradresse (2)
name: Dateiname
ft: Dateityp (u, s, p)
Einordnung
Typ: Anweisung
Kontext: Ein- / Ausgabe
Aufgabe: speichert einen Textbildschirm
Abkürzung: keine
Token: $64 $6d (100 109)
Verwandte Befehle
SCRLD - MERGE - LOAD - SAVE


Dieser Artikel beschreibt das Simons'-Basic-Schlüsselwort SCRSV.

Typ: Anweisung
Syntax: SCRSV <fn>,<dr>,<sa>,<name>+",<ft>,W"

Mit SCRSV kann ein Programmierer Textbildschirme (z. B. Bildschirmmasken) abspeichern, um sie später bei Bedarf schnell und Platz sparend zur Verfügung zu stellen, denn der Code zum Aufbau einer solchen Maske bräuchte im endgültigen Anwendungsprogramm nicht vorzukommen. SCRSV speichert eine 2×1000 Bytes lange Datei, in der byteweise abwechselnd das Video-RAM und das Farb-RAM aufsteigend in einem 250-Byte-Abstand liegen. Die Datei enthält keine Startadresse.

Der Befehl benötigt die gleichen Parameter, die auch der BASIC-Befehl OPEN verwendet:

  • eine logische Dateinummer <fn>, (1 bis 255)
  • eine Laufwerksangabe <dr>, 1 (Datasette) bzw. 8 bis 11 (Diskettenlaufwerke)
  • eine Sekundäradresse <sa>, wobei diese Zahl vom angeschlossenen Gerät abhängt; bei Floppys sind Werte von 2 bis 14 zulässig, eine Datasette benötigt hier 1 oder 2
  • ein Dateiname <name>, mit einer Maximallänge von 16 Zeichen
  • eine Angabe über den gewünschten Dateityp <ft> der Datei, "S" = SEQ, "U" = USR und "P" = PRG
  • die letzte Angabe muss "W" (für "Write") lauten, sonst wird nicht gespeichert

Mögliche Fehlermeldungen sind alle diejenigen, die auch SAVE bzw. OPEN verursachen würden.

Beachten: Gesichert wird immer der Bildschirmspeicher ab $0400. Nach MEM beginnt allerdings der Bildschirmspeicher bei $CC00, so dass in diesem Fall nicht der sichtbare Bildschirm gespeichert wird.


Dieser Befehl wurde in TSB um weitere Funktionen ergänzt, siehe SCRSV (TSB).


Beispiel[Bearbeiten | Quelltext bearbeiten]

Das folgende Beispiel basiert auf dem im Simons' Basic Handbuch enthaltenen Programm:

10 PRINT CHR$(147)
20 FILL 6,10,20,4,160,2
30 FILL 10,10,20,4,160,1
40 FILL 14,10,20,4,160,6
50 WAIT 198,1
60 SCRSV 2,8,2,"TRICOLOR.SRC,S,W"

Zeile 60 speichert den Bildschirm unter dem angegebenen Namen (als sequentielle Datei) auf Diskette.