Im Magazin „CPC" wurde im Sonderheft 6 1988 der folgende Artikel abgedruckt.
Hier werden Module für Turbo Pascal besprochen, die ein Directory ausgeben.

Directory unter TURBO PASCAL

TURBO-PASCAL Benutzer unter CP/M 80 müssen manche Nachteile gegenüber den MS-DOS Benutzern des Systems in Kauf nehmen. So sucht man beispielsweise vergeblich nach der Funktion DIR, die es unter MS-DOS ermöglicht, das Directory einer Diskette ins Programm einzublenden. Dies hat mit den Modulen DIRMOD1.INC und DIRMOD2.INC ein Ende.

Unter Ausnutzung der BDOS-Routinen 17 und 18 ist es möglich, diesem Mangel abzuhelfen. Von allen bisher bekannten Varianten zur Lösung dieses Problems unterscheiden sich die vorliegenden Module vor allem durch eine möglichst effektive Ausnutzung des ohnehin unter CP/M 80 knappen Speicherplatzes. Dies zeigt sich beispielsweise daran, daß der orginal FCB-Speicherplatz (Adresse 5C) benutzt und bei der Option eines sortierten Directories auf Zeigervariablen zurückgegriffen wird. Beide Module werden mittels des $I-Compilerbefehls in das Programm eingebunden.

Falls Sie auf ein sortiertes Directory verzichten wollen, so genügt die Einbindung des Moduls DIRMOD1.INC. Der Aufruf der Prozeduren ist denkbar einfach. Als Parameter sind lediglich das Laufwerk und ein dem CP/M-Standard entsprechender Dateiname zu übergeben. Auch Wildcards sind erlaubt. So bewirkt z.B. der Aufruf Dir(A,????????,PAS) die Auflistung aller Pascal-Sourcefiles auf dem Laufwerk A, und SDIR(B,????????,COM) listet alle Systemfiles auf dem Laufwerk B sortiert auf. Dateien mit SYS-Attribut werden nicht mit aufgelistet, R/O-Files erhalten wie unter BASIC gewohnt einen Stern am Ende des Namens. Das Ganze funktioniert übrigens nicht nur auf sämtlichen CPC-Rechnern und dem Joyce, sondern grundsätzlich auf allen CP/M-Maschinen.
(B.Ott)
Listing Directory
[Hier das Modul DIRMOD1 und hier das Modul DIRMOD2]

Eingescanned von Werner Cirsovius
September 2002
© CPC