The following article was printed in the special issue 6 1988 of the magazine „CPC".
Discussion of Turbo Pascal modules displaying a directory.
|
|
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
|
[Sources of modules DIRMOD1
and DIRMOD2]
Scanned by
Werner Cirsovius
September 2002
© CPC