Floppy-Kommandos

Datei/Diskettenbefehle

Diese Befehle veranlassen das DOS des Laufwerks zu diversen Verwaltungsoperationen. Eine Möglichkeit diese Befehle zu übertragen ist:

OPEN 1,8,15,"Befehl":CLOSE 1

Teilweise gibt es eine Kurz- und eine Langversion des Befehls, beide sind was ihr Ergebnis betrifft identisch. Zahlen werden als normale Zeichen eingetragen.

COPY : Datei kopieren

"COPYdr:d=dr:s"
"Cdr:d=dr:s"

dr : Laufwerksnummer, 0 oder 1, kann bei Einzellaufwerken weggelassen werden
d : Zieldateiname (16 Zeichen max.)
s : Quelldateiname (16 Zeichen max.)

RENAME : Datei umbenennen

"Rdr:d=s"

dr : Laufwerksnummer, 0 oder 1, kann bei Einzellaufwerken weggelassen werden
d : Zieldateiname (16 Zeichen max.)
s : Quelldateiname (16 Zeichen max.)

SCRATCH : Datei löschen

"Sdr:f"

dr : Laufwerksnummer, 0 oder 1, kann bei Einzellaufwerken weggelassen werden
f : Dateiname (16 Zeichen max.)

NEW : Diskette Formatieren

"NEWdr:n,i"
"Ndr:n,i"

dr : Laufwerksnummer, 0 oder 1, kann bei Einzellaufwerken weggelassen werden
n : Name (16 Zeichen max.)
i : Index (2 Zeichen)

Lässt man den Index weg, so wird eine Schnellformatierung durchgeführt.

DUPLICATE : Diskette kopieren

"Dddr:sdr"

sdr : Quellaufwerk
ddr : Ziellaufwerk

VALIDATE : Diskette prüfen

"V"

INITIALIZE : Laufwerk initialisieren

"I"

Kann nach Diskettenwechseln nützlich sein, speziell wenn die Indexnummer der Diskette gleich ist.

Blockbefehle

Die Parameterübertragung an diese Befehle ist etwas anders, statt ASCII-Zahlen werden Binärzahlen übertragen. Die Parameter werden deshalb mit chr$(n) übergeben. Je nach Befehl gibt es verschiedene Parameteranzahlen, als Trenner zwischen den chr$-Befehlen kann ein Semikolon verwendet werden, etwa so:

OPEN 1,8,15:PRINT#1,"Befehl";CHR$(Parameter);...:CLOSE 1

Da die Parameter fast bei jedem Befehl gleich sind, gibt's hier eine komplette Liste, der Übersicht wegen.

sa : Kanalnummer in DOS, identisch mit Sekundäradresse im entsprechenden OPEN Befehl
dr : Laufwerksnummer, 0 oder 1
t : Spurnummer, 1 bis 154 (je nach Modell)
s : Sektornummer, 0 bis 112 (je nach Modell)
p : Zeigerposition des Pufferzeigers

BLOCK-READ : Block lesen

"BLOCK-READ:";sa;dr;t;s
"B-R:";sa;dr;t;s

BLOCK-WRITE : Block schreiben

"BLOCK-WRITE:";sa;dr;t;s
"B-W:";sa;dr;t;s

BLOCK-EXECUTE : Block ausführen

"BLOCK-EXECUTE:";sa;dr;t;s
"B-E:";sa;dr;t;s

BLOCK-ALLOCATE : Block belegen

"BLOCK-ALLOCATE:";dr;t;s
"B-A:";dr;t;s

BLOCK-FREE : Block freigeben

"BLOCK-FREE:";dr;t;s
"B-F:";dr;t;s

BUFFER-POINTER : Pufferzeiger

"BUFFER-POINTER:";sa;p
"B-P:";sa;p

Speicherbefehle

MEMORY-READ : Speicher lesen

"M-R";adl;adh

adl : lowbyte der Adresse
adh : hibyte der Adresse

MEMORY-EXECUTE : Speicher ausführen

"M-E";adl;adh

adl : lowbyte der Adresse
adh : hibyte der Adresse

USER : Benutzerbefehl

"Ux";sa;dr;t;s

x : Index in die Benutzertabelle
sa : Kanalnummer in DOS, identisch mit Sekundäradresse im entsprechenden OPEN Befehl
dr : Laufwerksnummer, 0 oder 1
t : Spurnummer, 1 bis 154 (je nach Modell)
s : Sektornummer, 0 bis 112 (je nach Modell)