DIR

Aus C64-Wiki
Wechseln zu: Navigation, Suche
DIR
Format: DIR <string>
Parameter
string: Directory-Kommando
Einordnung
Typ: Kommando
Kontext: Peripheriekontrolle
Aufgabe: Anzeige des Inhaltsverzeichnisses eines Diskettenlaufwerks
Abkürzung: keine
Verwandte Befehle
DISK - COPY - HRDCPY - ERROR


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

Typ: Kommando
Syntax: DIR <string>

Mit DIR "$" gibt der Interpreter das Inhaltsverzeichnis der Floppy in Laufwerk mit Geräteadresse 8 aus, ohne dass das aktuelle BASIC-Programm dabei gelöscht wird. Statt der üblichen Angabe "$" als <string>-Parameter können auch alle weiteren Syntaxformen des Directory-Floppy-Befehls angewendet werden. Die optionale (Doppellaufwerk-Drive-Angabe 0 oder 1) nach dem "$" ist erlaubt, allerdings erzeugt bei einem Einfachlaufwerk die Anwahl des Drives 1 die Ausgabe einer mehrstelligen Zahl und im Fehlerkanal findet sich die entsprechende Meldung 74,DRIVE NOT READY,00,00. Das gleiche Verhalten zeigt sich übrigens auch bei Fehlern in der Floppy-Befehl-Syntax, allerdings mit der Meldung 30,SYNTAX ERROR,00,00 im Fehlerkanal.
DIR kann auch innerhalb eines Programms aufgerufen werden. Der Status der Ausführung des Befehls muss bei Bedarf durch Abfrage des Floppy-Fehlerkanals explizit ermittelt werden.

Leider kann Simons' Basic mittels DIR ausschließlich auf das Laufwerk mit Geräteadresse 8 zugreifen. Die Bildschirmausgabe lässt sich dabei nicht via Tastatur anhalten oder abbrechen, lediglich mit Hilfe der Taste CTRL  verzögern.

Ein fehlender Parameter oder zu viel angegebene Parameter führen zu einem ?SYNTAX ERROR (wobei im letzteren Fall der DIR-Befehl entsprechend abgearbeitet wird, bevor es zum Abbruch und Fehlerausgabe kommt). Beginnt der Parameter nicht mit dem "$"-Zeichen, bricht die Ausführung mit ?BAD MODE ab. Handelt es sich beim Parameter nicht um einen Ausdruck, der eine Zeichenkette ergibt, kommt es zur Fehlerausgabe von ?TYPE MISMATCH ERROR.


TSB bietet nicht nur eine erweiterte Tastatursteuerung (RETURN  hält die Ausgabe an und RUN/STOP  bricht sie ab), sondern zusätzlich findet sich bei der Ausgabe ein Doppelpunkt hinter allen angezeigten Dateinamen, damit das einfache Eintippen von LOAD vor dem angezeigten Namen und ein darauffolgendes RETURN  zum Laden einer Datei bereits genügen (TSB braucht keine Laufwerksangabe bei Diskettenbefehlen).

Beispiele[Bearbeiten]

DIR "$"

oder

DIR "$

gibt das Directory von Laufwerk mit Geräteadresse 8 aus, letztere Variante mit Tippersparnis durch Weglassen des abschließenden Anführungszeichens.

DIR "$0:*"
DIR "$:*"
DIR "$*"

sind alles Varianten, die das Gleiche bewirken, nämlich alle Dateien auf Laufwerk 0 (Doppellaufwerk-Drive-Angabe) anzeigen.

DIR "$:*=P"

gibt mit Hilfe des Typselektors "=P" nur PRG-Dateien aus.

DIR "$:???.*"

gibt alle Dateien aus, die an Position 4 im Namen einen Punkt haben.

DIR "$:?B*=S"

zeigt alle sequentiellen Dateien, deren Dateiname als 2. Zeichen "B" ist.

DIR "$?B,H*=P"

zeigt alle PRG-Dateien, deren Dateiname

  • 2. Zeichen lang ist und auf "B" endet oder
  • mit "H" beginnt.

Der Doppelpunkt als Bestandteil der Drive-Angabe ist dabei optional.