Die Zukunft beginnt mit "Z" - Teil 1

von Jörg Linder

Einleitung

Wer meine Vorliebe für das Z-System kennt und auf unserem '96er Clubtreffen war, ahnt sicherlich schon, was ihn hier erwartet. Doch in dieser Artikelreihe soll es nicht nur um den ZCPR gehen, sondern auch um das zukünftige CP/M-kompatible System für den KC. Auf dem Treffen konnte uns Mario Leubner schon einiges zeigen. In dieser Reihe will ich zeigen, was "dahinter" steckt.

In seinem Artikel zum neuen System hat Mario bereits geschildert, welch unschätzbare Mühe er sich mit der Entwicklung gemacht hat. Dank Helmut Jungkunz sind wir auf ein wunderbares Betriebssystem namens ZSDOS gestoßen. Mario ist die Anpassung des ZSDOS für unser D004 gelungen, wobei ein nagelneues (und vor allem CP/M-konformes) System herauskam.

Bemerkenswert ist dabei die Verwendung von rein Z80-codierten Segmenten. Normale CP/M-Systeme sind nämlich für i8080-Prozessoren geschrieben. Der Z80-Befehlssatz ist zwar voll kompatibel, wird aber nicht ausgenutzt. Programme für Z80-Rechner sind daher oftmals kleiner und trotzdem leistungsfähiger als i8080-Programme. Bevor wir uns jedoch vollends ins Vergnügen stürzen, sollten zunächst die verwendeten Begriffe erläutert werden.

Begriffe

Die Abkürzung ZCPR bedeutet "Z80 Command Processor Replacement" - zu deutsch: Z80-Ersatz des Kommandoprozessors. Was voerst recht nüchtern klingt, enthält vielfältige und fantastische Möglichkeiten. Der Kommandoprozessor stellt die Schnittstelle des Systems zum Anwender dar. Jede Veränderung dieses Segments hat also direkte Auswirkungen auf das Erscheinungsbild des Systems. Die inzwischen aktuelle Version 3.4 ist so komfortabel und flexibel, daß individuelle Anpassungen in Sekundenschnelle vorgenommen werden können und dabei kaum noch Wünsche offen bleiben.

ZSDOS steht für "Z-System Disk Operating System" - Diskettenbetriebssystem für Z-Systeme. Das ZSDOS ist eines der wenigen kommerziellen Ersatzsysteme für das BDOS des CP/M 2.2 und wahrscheinlich auch das beste. Es arbeitet "eine Schicht tiefer" im CP/M-System und stellt die Schnittstelle für alle Anwendungsprogramme dar. Veränderungen des BDOS-Segmentes offenbaren sich dem Nutzer nur spärlich, sind jedoch gravierend, wenn es um die Stabilität und die Geschwindigkeit des Systems geht. In ZSDOS können viele Einstellungen vorgenommen werden, die das Verhalten des Systems bestimmen.

Ein "Z-System" ist sozusagen das beste, was einem CP/M-Anwender passieren kann. Mit diesem Begriff werden CP/M-Systeme bezeichnet, deren Segmente vollständig in Z80 codiert sind. Das neue Betriebssystem für das D004 wird ein derartiges System sein; daher beginnt für uns die Zukunft mit einem "Z".

Artikelreihe

Dieser Beitrag ist der Auftakt einer Artikelreihe, die in den nächsten Ausgaben der KC-News weitergeführt wird. Ich habe mich aus zwei Gründen für eine Serie entschieden. Zum einen wäre der Gesamtumfang für eine Ausgabe zu groß. Zum anderen denke ich, daß eine Beschäftigung mit den Komponenten eines Z-Systems über einen längeren Zeitraum das Wissen festigt. Somit hat man eine bessere Grundlage beim "Erstkontakt" mit dem neuen System.

Einen Ersatz für das Handbuch wird diese Serie nicht darstellen. Dafür werde ich aber versuchen, auf Fragen zu reagieren und eventuell auftretende Probleme zu lösen. Ergebnisse werden innerhalb dieser Reihe veröffentlicht, wodurch diese gewissermaßen interaktiv wird (bzw. werden soll).

Nach dem derzeitigen Planungsstand wird hier folgendes zu lesen sein:

Teil 1 - Einleitung, ZSDOS
Teil 2 - ZCPR, Zusammenspiel der Komponenten
Teil 3 - Anwendungsbeispiele, Problemlösungen

ZSDOS

Die Entwicklung des ZSDOS war eine Gemeinschaftsarbeit von Harold F. Bower, Cameron W. Cotrill und Carson Wilson. Anhand der Namen kann man schon erkennen: made in U.S.A. Während der Programmierung sind die unterschiedlichsten Anregungen und Vorschläge in die Arbeit eingeflossen. Das ZSDOS ist einer der mächtigsten (das mächtigste?) und flexibelsten BDOS-Ersatzsysteme, die je für das CP/M-System geschrieben wurden. Es ist unmöglich, alle Funktionen und Verbesserungen in diesem Artikel aufzuzählen. Die wichtigsten möchte ich jedoch vorstellen.

Alle Fehlermeldungen des BDOS werden in (englischem) Klartext ausgegeben. Anstelle unverständlicher Zahlen für Sektoren und Spuren erscheinen nun Funktionsnummer und Dateiname, bei denen der Fehler aufgetreten ist. Darüberhinaus kann (wie bei MicroDOS, jedoch fehlerfrei) die Fehlerbehandlung vom Programm übernommen werden. In diesem Modus werden keine Fehlermeldungen auf den Bildschirm ausgegeben.

ZSDOS unterstützt nicht nur die beiden bekannten Dateiattribute "schreibgeschützt" (R/O) und "System", sondern auch sechs weitere. Unter anderem auch das Archivbit, mit dessen Hilfe Sicherheitskopien schneller und unkomplizierter erstellt werden können.

Die zulässige Größe für Laufwerke beträgt 1 Gigabyte (1.084.576 kByte). Dateien können bis zu 32 Megabyte (32.768 kByte) groß sein und im wahlfreien Zugriff bis zu 262.144 logische Records umfassen. Darüberhinaus gibt es die Möglichkeit, Laufwerke als "fest" zu definieren. Das Verzeichnis dieser Laufwerke wird dann nicht nach jedem Warmstart erneut eingelesen, was die Arbeit wesentlich beschleunigt.

Zu den interessantesten Eigenschaften gehören auf jeden Fall die unterschiedlichen Zugriffsarten. Normalerweise werden von CP/M nur Dateien gefunden, die sich im eingeloggten Verzeichnis befinden. Alle Dateien, die auf einem anderen Laufwerk und/oder in einem anderen Nutzerbereich vorliegen, kann CP/M nicht finden und demzufolge auch nicht laden. Unter ZSDOS gibt es diverse Möglichkeiten, diese Beschränkung zu überwinden - öffentliche Dateien und den DOS-Pfad. Beide Zugriffsarten können sogar kombiniert werden. Erfahrene Anwender können dadurch nahezu jede Datei von allen Verzeichnissen erreichen.

Beim Zugriff auf andere Nutzerbereiche wird die Nummer des Bereichs im FCB gespeichert und automatisch vom System verwaltet. Ein Programm kann nun auf die Datei im anderen Nutzerbereich zugreifen, ohne vorher über die entsprechende BDOS-Funktion den Nutzerbereich zu setzen.

Mit der Echtzeituhr des GIDE-Interfaces steht im neuen System auch eine "richtige" Uhr zur Verfügung. Von ZSDOS bzw. ZDDOS werden Datumsstempel für Dateien unterstützt. Zu jeder Datei können der Zeitpunkt der Erstellung, der Änderung und des letzten Zugriffs gespeichert werden. Dadurch wird die Verwaltung wesentlich transparenter, insbesondere bei mehreren Versionen einer Datei.

Außerdem lassen sich viele Eigenschaften von ZSDOS während der Laufzeit über ein spezielles Utility einstellen. Somit kann das System für spezielle Anwendungen angepaßt werden. Nach Abarbeitung kann man einfach wieder die alten Parameter einstellen.

So, das soll es für heute gewesen sein. In der nächsten Ausgabe folgt wie versprochen der Artikel zu ZCPR...