Beiträge von chip

    5. Das NEWDOS/80 V2.5 System auf der Festplatte installieren und von dort aus betreiben

    Üblicherweise möchte man die Laufwerke 0 bis 3 als Festplattenlaufwerke eingerichtet haben und dabei noch auf die beiden Floppylaufwerke zugreifen können. Bei einem Betrieb des DOS von einem Festplattenlaufwerk erhält man einen Geschwindigkeitsvorteil durch die kleineren Zugriffszeiten. Um NEWDOS/80 V2.5 von der Festplatte aus zu betreiben, muss eines der Festplattenlaufwerke als Laufwerk 0 eingerichtet werden und sich die Systemdateien darauf befinden.


    1. Das DOS-Kommando PDRIVE und speziell der Festplattenparameter HDS sollte dem Anwender vertraut sein.


    2. Lege eine Kopie der Betriebssystemdiskette mit dem NEWDOS/80 V2.5 in das Floppy-Laufwerk 0 ein. Dies wird die Systemdiskette sein, im Gegensatz zum Festplatten-Systemvolume, welches sich dann auf der Festplatte befinden wird.


    3. Wähle eines der aktiven PDRIVE Slots aus, dessen Nummer größer als 1 ist. Für dieses Beispiel wird das Slot Nr. 2 gewählt (bei der System-Option AL muss dafür mindestens 3 eingetragen sein). Falls Sie eine andere Slot-Nr. wählen, benutzen Sie dann bitte diese anstelle der Nr. 2 in den folgenden Beschreibung.


    4. Nutze PDRIVE,0,2,A,HDS=----- definiere von der Floppy Systemdiskette den PDRIVE Slot Nr. 2 mit den gewünschten Spezifikationen für das Festplatten-Systemvolume.


    5. Gebe folgenden DOS-Befehl ein: COPY 0,2,,FMT,CBF,USD

    und beantworte die Anfragen nach SOURCE und DESTINATION Disketten (auch wenn die Zieldiskette eine Festplatte ist). Ein "GAT OVERFLOW" Fehler kann auftauchen, wenn der SPGL-Wert für das Kopierziel kleiner als für die Kopierquelle ist. In diesem Fall ist der SPGL-Wert zu erhöhen.


    6. Gebe den PDRIVE,2 ein, um die Spezifikationen der Festplatten-Volumes für die 10 Slots zu sehen, wie sie für dieses Volume eingestellt sind. Beachte, daß die Einstellungen für Slot Nr. 2 auch gleichermaßen in Slot Nr. 0 vorhanden sind. Dies ist ganz normal durch unseren COPY-Vorgang passiert. Man sollte nicht die Spezifikationen des PDRIVE,2, welches sich auf die System-Daten des Laufwerks Nr. 2 bezieht, mit den Spezifikationen des PDRIVE,0 verwechseln, welches sich auf die System-Daten des Laufwerks Nr. 0 (die Floppy-Disk System-Diskette) bezieht.


    7. Mit PDRIVE,2 sind die Spezifikationen zu definieren, die später für das Systemlaufwerk (Laufwerk 0) gelten sollen. Da bereits PDRIVE,2,2 als PDRIVE,2,0 dupliziert wurde um später zum Systemlaufwerk 0 zu werden, muss nun der PDRIVE,2,2 Slot für ein anderes Volume definiert werden. Durch setzen des VSCL-Wertes auf 0 gilt der Slot Nr. 2 dann als undefiniert. Die Spezifikationen für PDRIVE,2 Slots Nr. 0 bis 3 sollen nur für Festplatten sein. Slot Definitionen für Floppys müssen in die Slot Nummern 4 bis 7, welches den alten Laufwerken 0 bis 3 entspricht. Falls einer oder mehrere der Slots 4 bis 7 nicht für Floppys genutzt werden, können sie auch für Festplattenvolumes genutzt werden und somit bis zu 8 Festplattenvolumes eingerichtet werden. Vor dem nächsten Schritt sollten alle PDRIVE,2 Slots wunschgemäß eingerichtet werden, auch wenn dies nicht unbedingt für alle Slots außer Slot Nr. 2 erforderlich ist. Slot Nr. 0 sollte nicht verändert werden. Nicht vergessen: der PDRIVE Parameter A kann für PDRIVE,2 nicht benutzt werden, da dieses Volume nicht das System-Volume ist.


    8. Nun durch SYSTEM,2,AL=xxx die Anzahl der aktiven PDRIVE,2 -Slots definieren. Dabei muß xxx zwischen 1 und 8 liegen und mindestens 5 sein, wenn Floppydisk-Laufwerke mit benutzt werden.


    9. Das Festplatten-System-Volume hat nun die richtigen Spezifikationen, aber wir brauchen noch eine Festplatten-Boot-Diskette, um RESET zu ermöglichen (auch BOOT genannt), das mit dem Floppy-Laufwerk 0 starten muß, um zum Festplatten-System-Volume zu wechseln. Diese Diskette muß mindestens die erforderlichen Dateien BOOT/SYS, DIR/SYS und SYS0/SYS enthalten. Außerdem muß das PDRIVE der Diskette exakt für das Festplatten-System-Volume definiert sein. Dies wollen wir jetzt machen.

    BEISPIELE:


    ***** Nicht vergessen: der HDS-Parametersatz muss immer alle 12 Subparameter enthalten und ihre Reihenfolge muss eingehalten werden.


    1. PDRIVE,0,1,HDS=(0,306,0,2,32,0,0,2880,5,8,35,33)

    gibt eine Data Volume an, das aus 5 Sektoren pro Granule und 8 Sektoren pro Granule besteht. Zudem hat es ein Inhaltsverzeichnis mit einer Größe von 33 Sektoren, welches bei Lump 35 anfängt. Die ersten 2880 Sektoren des ersten Bereichs der Festplatte werden davon belegt. Dieser Festplattenbereich erstreckt sich über die ersten beiden Datenoberflächen der Festplatte, welche nur zwei Datenoberflächen haben kann oder aber auch mehr. Jede Datenoberfläche hat 306 Spuren. Jede Spur hat 32 Sektoren und die Spurwechselzeit ist mit 0 die schnellstmögliche Einstellung. Dieses Data Volume ist im NEWDOS/80 als Laufwerk 1 ansprechbar.


    2. PDRIVE,0,2,HDS=(1,153,1,3,32,6,2000,10000,0,8,0,33)

    definiert ein Data Volume auf der Festplatte mit der Nummer 1, welches 153 Spuren pro Datenoberfläche und 32 Sektoren pro Spur enthält. Dieses Data Volume erstreckt sich über die 2., 3. und 4. Datenoberfläche der Festplatte. Das Data Volume besteht aus 10000 Sektoren und fängt beim relativen Sektor 2000 des Festplattenbereichs an. PDRIVE wird die Position des 33 Sektoren großen Inhaltsverzeichnisses innerhalb des Data Volumes berechnen. Benutzer können als Laufwerk 2 auf dieses Data Volume zugreifen.


    3. PDRIVE,0,1,HDS=(0,153,0,4,32,6,0,*,0,8,0,33)

    erzeugt ein Data Volume, welches alle 19584 Sektoren der ersten vier Datenoberflächen der Festplatte mit der Nummer 0 beansprucht. Die Subparameter 'vsc1', 'spg1' und 'ddsl1' werden vom PDRIVE berechnet. Das Data Volume ist für den Nutzer als Laufwerk 1 ansprechbar.


    4. PDRIVE,0,3,HDS=(0,153,0,1,32,6,0,0,5,2,17,33)

    ist die Definition für ein sogenanntes Null-Data Volume (Der Subparameter 'vsc1' ist 0). Alle anderen Subparameter müssen gültig sein. Falls ein Benutzerprogramm versucht, auf dieses Laufwerk zuzugreifen, wird die Fehlermeldung 'DEVICE NOT AVAILABLE' ausgegeben. Das DOS-Kommando 'FREE' und jede andere DOS-Funktion wird allerdings dieses Laufwerk ausblenden.

    10. 'gpl1' bedeutet 'Granules Per Lump' (GPL). Dies ist die maximale Anzahl von zugewiesenen Granules für jedes Byte in der 'Granule Allocation Table' (GAT) des Data Volume Inhaltsverzeichnisses. 'gpl1' ist ein Wert zwischen 2 und 8. Der Standard-Wert der NEWDOS/80 V.2.0 Master Diskette und des Model I TRSDOS 2.3 ist GPL=2. Jedes Data Volume (Festplatte oder Floppy Disk) mit mehr als 1920 Sektoren sollte einen größeren GPL-Wert erhalten, da es optimaler ist, den GPL-Wert zu erhöhen, als den SPG-Wert. Es wird empfohlen, falls ein GPL-Wert von 2 nicht genommen werden soll, dann einen GPL-Wert von 8 zu nehmen. Auch wenn andere GPL-Werte (3-7) gültig sind, ist es nicht empfehlenswert sie zu nehmen, außer der Nutzer möchte eine Kompatibilität mit einem anderen DOS erreichen.


    Ein Lump??? Beim NEWDOS/80 V2.0 hatten wir beabsichtigt, die eins zu eins Übereinstimmung zwischen einem Byte in der GAT Tabelle und einer Spur auf einer Diskette aufzuheben, damit Granules über die Spurgrenzen hinweg existieren können. Der Belegungsstatus eines Granules wird von einem Bit in der GAT geregelt. Wir wollten alle 8 Bits jedes GAT Bytes nutzen, um die Anzahl der Granules, welche durch die GAT verwaltet werden, zu vergrößern. Das TRSDOS 2.3 nutzte nur die zwei rechten Bits eines GAT Bytes, deshalb konnten wir nicht wahllos alle Inhaltsverzeichnisse zwingen, alle 8 Bits zu nutzen. Da wir aber trotzdem alle 8 Bits nutzen wollten, mußten wir einem ganzen Byte (8 Bit) im GAT einen neuen Namen geben. Unter der Voraussetzung, daß eine Anzahl von Sektoren ein Granule genannt wird, haben wir eine Anzahl von Granules nun Lump genannt. Ein Lump ist einfach ein Byte in der GAT im Inhaltsverzeichnis eines Data Volumes. Das ist alles.


    11. 'ddsl1' bedeutet 'Default Directory Starting Lump' und bedeutet die relative Nummer des Lumps, dessen erster Sektor den Anfang des Inhaltverzeichnisses bildet. 'ddsl1' ist eine Zahl zwischen 1 und 191, aber es wird keine Garantie dafür gegeben, daß ein bestimmter Wert auch funktioniert. Der Standard 'ddsl1'-Wert bei Single Sided / Single Density - Disketten mit 35/40 Spuren ist 17 und die NEWDOS/80 Master Diskette nutzt diesen Wert. Wenn ein 'ddsl1'-Wert von 0 angegeben wird, dann wird NEWDOS/80 einen Wert für den Beginn des Inhaltsverzeichnisses berechnen. Dieser berechnete Wert ergibt eine Lage des Inhaltsverzeichnisses irgendwo in der Nähe der Mitte des Data Volumes, wobei der Wert dann nicht größer als 80 ist, da davon ausgegangen wird, daß mehr Daten am Anfang eines Data Volumes vorhanden sind, als an seinem Ende.


    Alle Betriebssysteme für Model I & III setzen das Inhaltsverzeichnis irgendwo in der Mitte des Data Volumes. Da NEWDOS/80 V2.5 mit einer Vielzahl von Disketten- und Festplattenkapazitäten umgehen kann, überlässt NEWDOS/80 dem Nutzer, an welcher Stelle das Inhaltsverzeichnis steht. Der 'ddsl1'-Wert ist die Definition dafür. NEWDOS/80 speichert den 'ddsl1'-Wert im 3. Byte des ersten Sektors vom BOOT/SYS (das ist auch der erste Sektor des Data Volumes) während des Formatierens, damit das DOS (und clevere Nutzer) das Inhaltsverzeichnis finden können. NEWDOS/80 merkt, daß es das Inhaltsverzeichnis verloren hat, wenn es einen Sektor des Inhaltsverzeichnisses liest, der nicht geschützt ist. Dann springt das DOS zum 3. Byte des ersten Sektors des Data Volumes, liest den 'ddsl1'-Wert aus und berechnet den Ort des Inhaltsverzeichnisses. Ein Standard 'ddsl1'-Wert von 17 ist für die im Vergleich zu Standard-Disketten stark vergrößerte Kapazität von modernen doppelseitigen Diskettenlaufwerken oder Festplatten nicht mehr optimal, da er das Inhaltsverzeichnis zu nahe an den Anfang des Data Volumes legt. Für eine doppelseitige 80-Spur Diskette mit doppelter Speicherdichte ist es üblich, das Inhaltsverzeichnis bei Lump 35 anfangen zu lassen.


    Bei Disketten ist DDSL nur beim Formatieren eine Bedeutung. Zu jeder anderen Zeit kann NEWDOS/80 dann das Inhaltsverzeichnis selbst finden, sobald es erforderlich ist. Anders ist es aber bei Festplatten, da dort die Adressmarkierungen bei Sektoren des Inhaltsverzeichnisses und allgemeinen Sektoren nicht unterschiedlich sind. NEWDOS/80 kann deshalb bei Festplatten nicht wissen, wie es zum ersten Sektor des Data Volumes gehen soll, um den 'ddsl1'-Wert zu lesen und die Lage des Inhaltsverzeichnisses berechnen zu können. Deshalb wird der 'ddsl1'-Wert beim NEWDOS/80 ständig genutzt (und nicht nur beim Formatieren) um die Lage des Inhaltsverzeichnisses zu kennen. Falls der Nutzer den 'ddsl1'-Wert nicht zum Zweck der Formatierung ändert, wird NEWDOS/80 die falschen Sektoren als Inhaltsverzeichnis lesen und Datenmüll ausgeben.


    12. 'ddsa1' bedeutet 'Default Directory Sector Allocation' und gibt die Anzahl der Sektoren an, die für das Inhaltsverzeichnis genutzt werden sollen. 'ddsa1' ist ein Wert zwischen 10 und 33. Dieser 'ddsa1'-Wert unterscheidet sich vom DDGA-Wert, der beim PDRIVE für Floppy Disks benutzt wird. Der Unterschied zwischen dem DDGA-Wert und dem 'ddsa1'-Wert wurde erforderlich, da der 'spg1'-Wert für Festplatten nicht mehr auf 5 Sektoren pro Granule festgelegt ist. Ein 'ddsa1'-Wert von 10, 15, 20, 25 und 30 ist kompatibel mit älteren Konfigurationen mit den DDGA-Werten 2, 3, 4, 5 und 6. Ein 'ddsa1'-Wert von 33 erlaubt ein Data Volume mit maximal 246 Nutzer-Dateien. Außer bei einem kleinen Festplatten Data Volume oder um Kompatibilität mit Disketten zu gewährleisten, wird ein 'ddsa1'-Wert von 33 empfohlen.


    Der 'ddsa1'-Wert für Festplatten ist noch wichtiger als der DDGA-Wert für Disketten. Der DDGA-Wert wird nur beim formatieren von Disketten benutzt. Der 'ddsa1'-Wert, zusammen mit dem 'ddsl1'-Wert, ist der einzigste Möglichkeit für die Sektoren-I/O-Routine des NEWDOS/80, um zu wissen, welcher Sektor zum Inhaltsverzeichnis gehört und welcher nicht. Wenn der 'ddsa1'-Wert verändert wird, dann darf er nur zum Formatieren verändert werden.

    Die Sub-Parameter (sie alle sind ganze Zahlen) im Einzelnen:


    1. 'hddn1' bedeutet Festplattennummer (0-3). Das ist die Nummerierung der angeschlossenen physikalischen Festplatten.


    2. 'tps1' bedeutet 'Tracks Per Surface' (Spuren pro Plattenoberfläche). Das ist die Anzahl der Spuren für jede Plattenoberfläche oder anders gesagt, die Anzahl der Zylinder. Jede Plattenoberfläche hat eine 'tps1' Anzahl von Spuren (1-65536). Für Apparat Inc. Festplatten ist dies der Wert 306 und für eine Tandy 5 Megabyte Festplatte ist dies der Wert 153.


    3. 'sfs1' bedeutet 'Section First Surface' (Bereich erste Oberfläche). Dies ist die Nummer der ersten Plattenoberfläche, die für dieses Data Volume herangezogen wird. 'sfs1' ist eine Zahl zwischen 0 und RSC -1. Falls die Festplatte nicht in Sektionen unterteilt wird, ist 'sfs1' immer 0. RSC bedeutet 'Recording Surface Count' und ist die Anzahl der Plattenoberflächen. Ein anderer Ausdruck für die Anzahl der Plattenoberflächen ist TPC (Tracks Per Cylinder). Für Apparat Inc. Festplatten mit 5, 10 und 15 Megabyte ist RSC 2, 4 und 6. Für eine Tandy 5MB Festplatte ist RSC = 4.


    4. 'ssc1' bedeutet 'Section Surface Count' (Bereich Anzahl Oberflächen). Das ist die Anzahl der aufeinanderfolgenden Plattenoberflächen, von dem Festplattenbereich, der das Data Volume enthält. 'ssc1' ist eine Zahl zwischen 1 und RSC, bzw. die Summe aus 'sfs1' und 'ssc1'. Falls die Festplatte nicht unterteilt wird, ist 'ssc1' immer gleich RSC.


    5. 'spt1' bedeutet 'Sectors Per Track' (Sektoren pro Spur) und ist die Anzahl von 256-Byte Sektoren auf jeder Spur der Festplatte, was daraus resultiert, daß diese Sektoren mit dem Formatierungsprogramm, welches mit der Festplatte geliefert wurde (bei Apparat Inc. und Tandy Festplatten ist dies HDFMTAPP), erzeugt wurden. 'spt1' ist eine Zahl zwischen 1 und 255. Normalerweise haben Apparat Inc. und Tandy Festplatten 32 Sektoren pro Spur. Falls während einer Formatierung mit HDFMTAPP eine Spur mit mehr als einem Fehler gefunden wird, ist es notwendig die Festplatte mit weniger als 32 Sektoren pro Spur zu formatieren, es sei denn Sie finden einen Weg, die Data Volumes um die Fehler herum zu konfigurieren. NEWDOS/80 hat ja bekanntlicherweise keine eingebaute Möglichkeit defekte Sektoren auszublenden.


    6. 'tsr1' bedeutet 'Track Stepping Rate' (Spur Schritt Dauer) oder Spurwechselzeit. Dies ist die Zeit, die den Plattenköpfen zur Verfügung gestellt wird, um bei einem Spurwechsel sicher in der Spur zu stehen. 'tsr1' ist eine Zahl zwischen 0 und 255. Apparat Inc. Festplatten benutzen 'tsr1'=0 und Tandy 5 Megabyte Festplatten benötigen 'tsr1' größer als 6.


    7. 'vfs1' bedeutet 'Volume First Sector' (Volume erster Sektor). Dies ist die erste relative Sektorennummer in dem Festplattenbereich in dem sich das Data Volume befindet und ist damit der Sektor 0 des Data Volumes. 'vfs1' ist eine Zahl zwischen 0 und 16777215 und hat ihre Obergrenze bei der Anzahl der Sektoren für diesen Festplattenbereich -1. Ein 'vfs1'-Wert von 0 gibt an, daß der erste Sektor des Data Volumes der gleiche Sektor ist, wie der erste Sektor des Festplattenbereichs. Falls die beiden Werte 'vfs1' und 'sfs1' =0 sind, fängt das Data Volume mit dem ersten Sektor der Festplatte an.


    8. 'vsc1' bedeutet 'Volume Sector Count' ist die Anzahl der aufeinanderfolgenden Sektoren in dem Festplattenbereich (Start mit 'vfs1'), der dem Data Volume zugewiesen ist. 'vsc1' ist eine Zahl zwischen 0 und 65535 oder bei der Zuweisung ein Stern. Die Summe von 'vfs1' und 'vsc1' darf die Anzahl der Sektoren des Festplattenbereichs nicht überschreiten (das Produkt aus 'tps1', 'ssc1' und 'spt1'). Wenn 'vsc1' bei der Zuweisung anstelle einer Zahl mit einem Stern versehen wird, dann wird PDRIVE alle restlichen Sektoren des Festplattenbereichs dem Data Volume zuweisen.


    ***** WICHTIG: PDRIVE akzeptiert auch ein 'vsc1'-Wert von 0. Dies bedeutet ein Null Data Volume, und hat zur Folge, daß dieses Data Volume (falls es keine anderen Fehler beinhaltet) als aktives Laufwerk geführt werden kann, obwohl es keine Daten enthält. Ein Zugriff auf ein derartiges Laufwerk beantwortet NEWDOS/80 mit 'DEVICE NOT AVAILABLE'. Diese Art der 'vsc1'-Definition kann genutzt werden, um PDRIVE Slots aufzufüllen, falls das System von Festplatte aus betrieben wird und nicht alle der Slots 1-3 definiert worden sind, aber auf die Slots 4-7 zugegriffen werden soll.

    Die Sub-Parameter 'hddn1', 'tps1', 'sfs1', 'ssc1', 'spt1', 'vfs1', und 'vsc1' zusammen definieren einen Bereich von Festplattensektoren zu einem Data Volume. Kein Sektor in diesem Bereich darf von einem Data Volume benutzt werden. Andernfalls könnte derselbe Sektor für zwei verschiedene Zwecke benutzt werden. Es liegt in der Verantwortung des Nutzers, dies zu vermeiden.


    9. 'spg1' bedeutet 'Sectors Per Granule' (SPG). Dies ist die Anzahl der Sektoren pro Granule für dieses Data Volume und der Wert kann zwischen 1 und 255 liegen. Wird der Parameter mit 0 definert, dann wird PDRIVE automatisch den niedrigsten 'spg1' über dem Wert 4 einsetzen, der zusammen mit den Subparametern 'gpl1' und 'vsc1' am optimalsten ist.

    Der Speicherplatz einer Datei auf dem Datenträger (Festplatte oder Diskette) ist durch die kleinste Zuordnung im NEWDOS/80 definiert. Es ist dies das Granule, welches im NEWDOS/80 V2.0 aus 5 Sektoren besteht. Im NEWDOS/80 V2.5 kann die Anzahl der Sektoren frei bestimmt werden. Obwohl es wünschenswert ist, einen kleinen 'spg1'-Wert zu nehmen, verringert ein zu kleiner Wert die maximale Größe des Data Volumes. Falls ein komplettes Disketten-COPY (nicht CBF) vom Nutzer gewünscht wird, ist ein 'spg1'-Wert von 5 einzustellen.


    ***** WARNUNG: Falls ein NEWDOS/80 System Volume mit CBF kopiert wird und der 'spg1'-Wert des Kopierziels ist kleiner als der Wert der Kopierquelle, kann ein 'DISKETTE GAT OVERFLOW' Fehler auftreten. Die einzige Alternative in so einem Fall ist, das System von einer Festplatten-Systemdiskette zu kopieren und einen Kopierziel 'spg1'-Wert größer als 4 zu nehmen.

    3. Erweiterungen des PDRIVE für die Festplatteneinrichtung


    Es wurden im NEWDOS/80 V2.5 keine bestehenden PDRIVE-Parameter verändert. Floppy Disks im PDRIVE werden wie gewohnt behandelt. Nur der HDS Parametersatz wurde für die Verwendung von Festplatten hinzugefügt.

    Das TRS-80 TRSDOS Disketten-Inhaltsverzeichnis war ursprünglich für 35 oder 40 Spuren, bei 350 bis 400 Sektoren gedacht. Beim NEWDOS/80 Version 1 und 2 ist das Inhaltsverzeichnis anstelle von 62 Benutzerdateien für maximal 222 Benutzerdateien ausgelegt und die Diskette kann statt nur 192 Granules bis zu 1536 Granules fassen. Um diese große Anzahl von Granules verwalten zu können, wurde die "Granule Lockout Table" aus dem GAT-SEktor entfernt und die Anzahl der Granules Per Lump (GPL) wurde vom alten festen Wert 2 auf einen durch den Benutzer frei wählbaren Wert (Maximum -8-) ersetzt. Bei 5 Sektoren pro Granule erlaubt dies 7680 Sektoren (1.966.080 Bytes) pro Diskette.

    Um unser Ziel -bis zu 65535 Sektoren pro Data Volume- zu erreichen und dabei die Struktur des Inhaltsverzeichnisses zu belassen, mußte der HDS-Parameter 'SPG' vom festen Wert 5 auf einen variablen Wert von bis zu 255 geändert werden. Dieser Wert erlaubt theoretisch 1536 * 255 = 391680 Sektoren. Andere Werte begrenzen jedoch diese Möglichkeit. Es sind dies die NEXT und EOF Felder im FPDE (File Primary Directory Entry) des Inhaltsverzeichnises und der FCB (File Control Block) der betreffenden Datei. Diese Felder erlauben maximal 65535 Sektoren (falls ein Überlappen vermieden werden soll). Normalerweise begrenzt dies die Größe einer Datei, aber tatsächlich wird dadurch die Größe eines Data Volumes begrenzt, da NEWDOS/80 den FCB dazu nutzt, um Datei-Datentransfer direkt zu einem Data Volume zu ermöglichen, anstelle eines Datei orientierten Datentransfers. Aus diesem Grund ist die Größe eines Data Volumes auf 65535 Sektoren (16.776.960 Bytes) begrenzt. Da jedes Data Volume eine BOOT/SYS Datei und eine DIR/SYS Datei enthält, sind maximal etwas weniger wie 65535 Sektoren durch den Nutzer verfügbar.

    Auch wenn eine 5, 10 oder 15MB große Festplatte vom NEWDOS/80 als ein Data Volume angesprochen werden kann, ist es nützlich eine Festplatte in mehr als ein Data Volume zu unterteilen. NEWDOS/80 erlaubt dem Benutzer dahingehend eine große Flexibilität, welche allerdings durch eine gewisse Komplexität (wie bereits schon durch PDRIVE gewohnt, mit dem sich einige Benutzer nicht anfreunden können) erkauft wird. Eine PDRIVE-Platz-Definition definiert tatsächlich ein Data Volume und kein Floppy Disk Laufwerk, keine Festplatte oder einen Festplattenbereich. Die Spezifikationen für das Laufwerk und (optional) den Laufwerksbereich sind einfach Teil der Spezifikation des Data Volumes.

    Ein Festplatten Daten Volume ist komplexer als ein Floppy Disk Daten Volume und damit schwieriger zu konfigurieren. Der Nutzer ist verantwortlich und muß sicherstellen, daß kein Festplattensektor von mehr wie einem Data Volume genutzt wird. Das BASIC Programm EXTPDRIV/BAS unterstützt den Nutzer um mit Hilfe einer Definitionsdatei (das ist eine einfache ASCII-Textdatei) eine Konfiguration mit PDRIVE für ein zu bestimmendes Laufwerk vorzunehmen. Mit SCRIPSIT oder CHAINBLD kann der Nutzer seine eigenen Definitionsdateien (HDS Parametersätze) erstellen. Diese können dann zu einem beliebigen Zeitpunkt mit EXTPDRIV/BAS im DOS aktiviert werden.

    NEWDOS/80 V2.5 unterstützt keine Sektorenausschlussliste für defekte Sektoren. Eine Festplatte mit defekten Sektoren muß entweder mit reduziertem SPT Parameter (Sectors Per Track) betrieben werden, oder die Data Volumes müssen derart auf der Festplatte verteilt werden, daß die defekten Sektoren von ihnen ausgeschlossen sind.

    Da eine Festplatten Data Volume Definition im PDRIVE mehr Werte enthält als ein Floppy Disk Data Volume, aber alle Werte noch in eine Zeile auf dem Bildschirm passen sollten, haben wir alle 12 Werte in einem Parameter (HDS - Hard Disk Specification) kombiniert. Diese 12 Werte werden Sub-Parameter genannt. Alle 12 Sub-Parameter müssen bei jeder PDRIVE-Definition angegeben werden und ihre Reihenfolge muß wie vorgeschrieben eingehalten werden. Die Spezifikation des HDS-Parameters ist:


    HDS=(hddn1, tps1, sfs1, ssc1, spt1, tsr1, vfs1, vsc1, spg1, gpl1, ddsl1, ddsa)

    2. Kommentare und Einschränkungen


    Der Benutzer sollte bereits Kenntnisse über die NEWDOS/80 Version 2 und alle dazugehörigen Informationen, wie z.B. Zaps haben. Die dort enthaltenen Informationen sind als Grundlagen für die weiteren hier enthaltenen Informationen wichtig.

    Dieses Dokument enthält keine Informationen über Ihre Festplatte. Diese Information sollten Sie vom Festplattenhersteller erhalten. Die für NEWDOS/80 V2.5 wichtigen Festplatteninformationen sind:


    (1) Anzahl der Festplattenoberflächen (oder Anzahl der Schreib-/Leseköpfe)

    (2) Anzahl der Spuren pro Festplattenoberfläche (oder die Anzahl der Zylinder)

    (3) Anzahl der 256 Bytes-Sektoren, die sich auf einer formatierten Spur befinden

    (4) Spurwechselzeit


    Die NEWDOS/80 Version 2 war nicht für den Festplattenbetrieb ausgelegt. Alle Erweiterungen im Zusammenhang mit der Version 2.5 wurden durch Änderungen der normalen Version 2 erreicht, außer daß die Systemdatei SYS0/SYS um 5 Sektoren erweitert wurde.

    Eine Arbeitsspeichergröße von 48kB RAM wird für den Betrieb von NEWDOS/80 V2.5 vorausgesetzt. Der Arbeitsspeicher von F900H bis FFFFH wird vom Betriebssystem belegt und ist für den Benutzer nicht verfügbar. HIMEM wird durch das Betriebssystem auf F8FFH gesetzt und Programme, welche diese Grenze beachten, sollten problemlos laufen.

    Die Anzahl der aktiven PDRIVE Plätze (früher 'Laufwerke' genannt) wurde von 4 auf 8 erhöht. Dies erlaubt maximal 4 Floppy Disk Laufwerke oder maximal 8 Festplatten Laufwerke oder eine Kombination der beiden. Die Anzahl der tatsächlichen aktiven PDRIVE Plätze wird noch immer durch den SYSTEM Parameter AL bestimmt. Falls ein aktiver PDRIVE Platz nicht benutzt werden soll, kann er als Festplatte definiert werden und der Subparameter 'vcsl' muss dabei auf 0 gesetzt werden. Dies bewirkt, daß NEWDOS/80 den PDRIVE Platz als aktives Laufwerk erkennt, aber den Zugriff darauf mit der Fehlermeldung 'DEVICE NOT AVAILABLE' abbricht.

    Zwei Floppy Disk Laufwerke sind wünschenswert, aber nur eines ist unbedingt notwendig. Die originale NEWDOS/80 v2.5 Systemdiskette wird auf einer Standard 40 Spur Diskette für das Model III und auf einer Standard 35 Spur Diskette für das Model I ausgeliefert. Da die Kapazität der Model I Diskette für alle benötigten Dateien zu klein ist, fehlen manche Dateien auf dieser Diskette. Diese fehlenden Dateien können von einer regulären NEWDOS/80 v2.0 Systemdiskette kopiert werden.

    Der Benutzer kann wählen, ob er das NEWDOS/80 v2.5 System von einer Systemdiskette (einer Kopie) oder von der Festplatte aus betreibt.

    Falls das System von einer Floppy Disk betrieben wird, können die Floppy Disk Laufwerke die PDRIVE Plätze 0-3 belegen, wie sie auch unter NEWDOS/80 v2.0 belegt sind. Die PDRIVE Plätze 1-7 können aber auch als Festplattenlaufwerke definiert werden.

    Wird das System von einer Festplatte aus betrieben, sind die PDRIVE Plätze 4-7 für die Floppy Disk Laufwerke zu benutzen. Alle PDRIVE Plätze von 0-7 können auch von der Festplatte belegt werden.


    ***** WARNUNG: Falls das System von der Festplatte betrieben wird und die PDRIVE Plätze 4-7 von Floppy Disk Laufwerken belegt sind, müssen alle PDRIVE Plätze zwischen dem System Laufwerk und den Floppy Disk Laufwerken gültige PDRIVE Plätze sein, auch wenn nur ein Festplatten Laufwerk benutzt wird. PDRIVE erlaubt und NEWDOS/80 ignoriert einen PDRIVE Platz der mit einem Null Festplatten Laufwerk belegt ist (Subparameter 'vcsl' auf 0 gesetzt). Dies ermöglicht den Zugriff über die auf Null gesetzten PDRIVE Plätze hinaus auf die darauffolgenden Floppy Disk Laufwerke.

    Das NEWDOS/80 Kommando FORMAT oder der Format Anteil des Kommandos COPY formatieren nicht tatsächlich die Festplatte. Anstelle der Formatierungsmeldung wird 'INITIALIZING SECTORS' angezeigt, während die Sektoren mit einem Standard Formatierungsmuster beschrieben werden.

    Um eine Festplatte von Apparat Inc. und Tandy tatsächlich zu formatieren, wird das Programm HDFMTAPP/CMD zur Verfügung gestellt. Um die Festplatte eines anderen Herstellers zu formatieren, wird ein Programm des Festplattenherstellers benötigt.

    Eine Anzahl von Anwendungsprogrammen greift auf die Inhaltsverzeichnisse der Laufwerke zu. Ein Anwendungsprogramm, welches auf das Inhaltsverzeichnis über die Datei DIS/SYS zugreift und den 'protected sector error code' und den EOF beachtet, wird ohne Probleme funktionieren.

    Ein Programm, welches den DDSL Parameter in dem ersten Sektor des betreffenden Data Volumes nutzt, um die Position des Inhaltsverzeichnisses zu bestimmen, wird nicht funktionieren, außer das Data Volume hat den SPGL Parameter auf 5 gesetzt. Wenn ein Programm die Position *und* die Größe des Inhaltsverzeichnisses auf diese Art bestimmt, wird es mit großer Wahrscheinlichkeit nicht funktionieren.

    Ein Data Volume darf die Anzahl von 65535 Sektoren nicht überschreiten. Neben dem Platzbedarf für die Dateien BOOT/SYS und DIR/SYS auf einem Data Volume kann der verbleibende Speicherplatz auf dem Laufwerk von nur einer Datei belegt werden, die dabei dann etwas über 16 Megabyte groß sein kann. Der Sektorbereich, welcher dem Data Volume zugewiesen ist, darf sich nicht mit dem einem anderen Data Volume überschneiden. Die Folgen für die Daten wären ansonsten katastrophal. Der Benutzer, welcher die PDRIVE Plätze für die Festplatte einrichtet, hat die Verantwortung eine Überlappung zu vermeiden.

    Eine Festplatte kann eine oder mehrere logische Data Volumes enthalten, welche umsichtig mit den PDRIVE HDS Parametern eingerichtet werden sollten. die Größe eines Data Volumes ist auf 65535 Sektoren begrenzt. Dagegen ist die Größe einer Festplatte nur von ihrer tatsächlichen Kapazität und den folgenden Beschränkungen begrenzt: Sektors Per Track (SPT oder spgl) muss kleiner als 256 sein, Tracks Per Cylinder (TPC, oder RSC - Recording Surface Count) muss kleiner als 256 sein, Tracks per Surface (TPS oder tpsl) muss kleiner als 65536 sein und TPS multipliziert mit TPC muss kleiner als 65536 sein.

    Der physikalische Speicherplatz einer Festplatte kann in Festplattenbereiche unterteilt werden. Die normalen NEWDOS/80 V.2.5 Vorgehensweisen erfordern dies nicht. Falls jedoch die Festplatte in Bereiche unterteilt ist, bei der ein Bereich für ein anderes Betriebssystem, wie z.B. LDOS benutzt wird, das die Partitionen aus Festplattenoberflächen zusammenstellt, ist es notwendig die Festplatte unter NEWDOS/80 aufzuteilen. Dies ist durch den PDRIVE HDS Subparameter 'sscl' möglich, bei dem dieser Parameter auf die Anzahl der Plattenoberflächen dieses Festplattenbereichs eingestellt wird und der Subparameter 'sfsl' auf die relative Zahl der ersten Plattenoberfläche dieses Festplattenbereichs eingestellt wird. Eine derart eingerichtete Festplatte darf keine Bereiche haben, welche die gleiche Plattenoberfläche zugewiesen haben. Auch darf kein Data Volume aus mehreren Festplattenbereichen bestehen.

    Beim DOS Kommando COPY ist der '=tc1' Parameter nicht erlaubt, wenn die Kopierquelle eine Festplatte ist. Bei den Kommandos FORMAT und COPY sind die Parameter '=tc2', DDSL und DDGA nicht zulässig, wenn das Kopierziel eine Festplatte ist. Beim Kommando FREE und im Kopfteil der DIR-Ausgabe wird bei einem Data Volume 0 als Spurenanzahl ausgegeben.

    Die SUPERZAP Ausgabe kann etwas seltsam aussehen, da das Programm nicht für eine Sektorenanzahl größer als 9999 Sektoren gedacht war. Das Programm funktioniert zwar, aber die TRK und SOT Werte werden bei einer Festplatte nicht angezeigt. Das DTS Menü darf bei einer Festplatte nicht verwendet werden.

    Das Format 5 COPY Kommando (ganze Diskette kopieren) setzt voraus, daß die Kopierquelle und das Kopierziel die gleichen GPL und SPG Werte haben. Wenn das Kopierziel eine Festplatte ist, dann gilt das Gleiche für die Parameter 'ddsll' und 'ddsal'. Falls dies nicht zutrifft, muß Format 6 COPY (Copy By File) benutzt werden.

    Data Volumes, die mit dem Model III unter NEWDOS/80 eingerichtet wurden, können auch mit dem Model I genutzt werden und umgekehrt. Dateien in diesen Data Volumes sind nicht austauschbar, wenn sie ebenfalls im Diskettenbetrieb nicht austauschbar sind. Falls Sie vorhaben die Festplatte mit dem Model I und Model III zu nutzen (allerdings nicht zur gleichen Zeit) und möchten das DOS-System auf der Festplatte haben, dann sollten Sie zwei DOS-System-Data Volumes für jeweils Model I und Model III einrichten.

    Fehler können bei der Benutzung von DIRCHECK und SUPERZAP auftreten, wenn während der Programmausführung DFG (Mini-DOS) oder 123 (DEBUG) aufgerufen wird und das Ziellaufwerk nicht ausdrücklich bei der Beendigung vom Mini-DOS oder DEBUG spezifiziert wird. Bei der Beendigung von Mini-DOS oder DEBUG im SUPERZAP wird empfohlen, entweder zum Hauptmenü zurückzukehren, oder die "J"-Display Funktion auszuführen. Bei der Beendigung von DIRCHECK, Y oder N für das Menü eingeben.

    NEWDOS/80 Version 2.5 Harddisk Betriebssystem

    -------------------------------------------------------------------


    Einleitung


    Das NEWDOS/80 V2.5 Harddisk Betriebssystem baut auf NEWDOS/80 V2.0 auf und wurde um Harddisk-Routinen erweitert. Diese Dokumentation ist eine Erweiterung der V2.0 Dokumentation und sollte als Appendix C nach Appendix B in das NEWDOS/80 V2.0 Manual eingeheftet werden.

    Wie üblich sollte dieses Dokument vor dem Umgang mit der Version 2.5 aufmerksam gelesen werden.

    Diese NEWDOS/80 Version 2.5 unterstützt Festplatten der Firma Apparat Inc. und der Firma Tandy für die TRS-80 Modelle I und III.


    1. Überblick

    Eine Datei kann bis zu 16 Megabytes groß sein.

    Ein Festplatten Volume kann aus bis zu 65536 Sektoren bestehen und maximal 246 Benutzerdateien enthalten.

    PDRIVE erlaubt ein Maximum von 8 aktiven Laufwerken/Partitionen. Bis zu 4 Floppylaufwerke oder 8 Festplatten-Volumes können gleichzeitig aktiv sein.

    Die Unterstützung von Festplatten mit über 100 Megabytes ist zwar möglich, dennoch werden aktuell nur Apparat und Tandy Festplatten unterstützt.

    Eine Festplatte ist in eine oder mehrere Partitionen unterteilt.

    Eine Partition enthält ein oder mehrere Data Volumes. Ein Data Volume wird mit PDRIVE eingerichtet. Ein Data Volume kann sich nicht über mehrere Festplatten oder Partitionen erstrecken.

    Eine Arbeitsspeichergröße von 48kB RAM wird benötigt. Die Harddisk-Erweiterungen von NEWDOS/80 V2.5 belegen den Arbeitsspeicher von 0F900H-0FFFFH. Programme, die diesen Speicherbereich belegen, können nicht mehr benutzt werden.

    Trotz den oben beschriebenen Arbeitsspeicher-Limitierungen funktionieren unter der Version 2.5 die meisten Programme die schon unter der Version 2.0 funktioniert haben. Programme, die eine bestimmte Volume-Größe voraussetzen (z.B. 350 Sektoren beim Model I oder 720 Sektoren beim Model III), oder eine bestimmte Position und Größe des Disk-Inhaltsverzeichnisses voraussetzen, müssen angepasst werden. Programme, welche nur die Standard Dateioperationen nutzen und HIMEM beachten, sollten einwandfrei funktionieren.

    Das NEWDOS/80 V2.5 kann von einer Diskette aus betrieben werden, oder von der Festplatte. Beim Betrieb des NEWDOS/80 V2.5 von der Festplatte müssen die Diskettenlaufwerke 0-3 in Laufwerke 4-7 umgeändert werden. Im Abschnitt 5 (Betrieb des NEWDOS/80 V2.5 von der Festplatte) ist diese Anpassung beschrieben.

    Das Programm HDFMTAPP/CMD wird zum magnetischen Formatieren (Low Level Format) von Apparat Inc. und Tandy Festplatten benötigt.

    Das Programm EXTPDRIV/BAS kann PDRIVE-Parameter aus einer ASCII-Textdatei in das NEWDOS/80 V2.5 übernehmen und aktivieren. Da PDRIVE-Festplattenparameter komplex sind, wird empfohlen, von den bevorzugten Parametern mittels SCRIPSIT oder CHAINBLD eine Textdatei zu erzeugen und mit EXTPDRIV/BAS zu aktivieren.

    Der Parameter HDS ist zum PDRIVE Kommando hinzugefügt worden, um Festplatten einzubinden.

    Hard Disk Volumes, die unter NEWDOS/80 im Model III definiert wurden, können unter NEWDOS/80 im Model I benutzt werden und umgekehrt. Dateien in diesen Hard Disk Volumes sind nicht austauschbar, wenn sie ebenfalls im Diskettenbetrieb nicht austauschbar sind.

    Hilfreiche Tipps zur Nutzung von NEWDOS/80 Version 2.5

    -----------------------------------------------------------------------------


    Wir empfehlen die Benutzung der folgenden Checkliste um die Software für eine Festplatte einzurichten.


    1. Aufmerksam die gesamte Dokumentation lesen.


    2. Die Installation der Festplatten-Hardware gemäß der mit der Festplatte gelieferten Dokumentation durchführen.


    3. Mit der originalen Master Diskette der NEWDOS/80 Version 2.5 booten und eine oder mehrere Sicherungskopien der Diskette erstellen. Die Erstellung einer Sicherungskopie ist im Kapitel, Abschnitt 1.4 des NEWDOS/80 V2.0 Manuals beschrieben.


    4. Eine der Sicherungskopien als Arbeitskopie nutzen und mit ihr booten. Diese Diskette dann für das weitere Vorgehen gemäß dieser Anleitung nutzen.


    5. Das Programm HDFMTAPP/CMD benutzen. Der Umgang mit diesem Programm ist im NEWDOS/80 V2.5 Manual Appendix C beschrieben.


    6. Die PDRIVE Parameter für die Harddisk Volumes gemäß Abschnitt 3 und 6 des NEWDOS/80 V.2.5 Manuals einrichten.


    7. Mit dem NEWDOS/80 Kommando FORMAT jedes Harddisk Volume formatieren. Anmerkung: Diese Vorgehensweise war nicht allen Benutzern bisher klar bekannt. HDFMTAPP/CMD ist nur ein "Medien-Format-Werkzeug", daß die Festplatte auf den Umgang mit NEWDOS/80 vorbereitet. Das FORMAT Kommando bereitet die Festplatte nicht wie das Programm HDFMTAPP/CMD auf die Benutzung durch das Betriebssystem vor. Allerdings ist das FORMAT Kommando unerlässlich, um das Inhaltsverzeichnis (DIR/SYS) und den Bootsektor (BOOT/SYS) der Harddisk Volumes einzurichten. Falls die Festplatte nicht mit FORMAT formatiert wurde, wird die Festplatte zwar augenscheinlich mit Kommandos wie COPY, OPEN und CLOSE funktionieren, aber HDBACKUP/CMD und DIRCHECK/CMD werden nicht funktionieren.


    8. (Optional) Kopiere den NEWDOS/80 V2.5 Boot-Disketteninhalt auf ein Harddisk Volume. Beachte hierzu Abschnitt 5 des NEWDOS/80 V2.5 Manuals. Nicht vergessen, die PDRIVE Parameter danach den Laufwerken anzupassen. Eine neue Boot-Diskette ist zu erstellen.


    9. Anwendungssoftware und notwendige Dateien installieren.

    In diesem Themenstrang ist die Übersetzung des Appendix C aus dem Handbuch der NEWDOS/80 Version 2.5 der Firma Apparat Inc. aus dem Jahr 1981. Der Appendix C beschreibt das um Festplattenbetrieb erweiterte DOS und ergänzt das Handbuch des NEWDOS/80 V.2.0 dementsprechend. Das Handbuch der V.2.0 ist ja bereits in den 1980ern in Deutsch erschienen und kann als PDF im Internet1 runtergeladen werden.


    Diese Version des NEWDOS/80 kann mit einer echten Tandy-Festplatte oder auch heute vor allem mit modernen Techniken, wie z.B. der FreHD benutzt werden. Bei der Übersetzung des Appendix C wurde darauf geachtet, möglichst wortgetreu zu übersetzen. Manche Passagen mußten allerdings an die deutsche Sprachumgebung angepasst und umformuliert werden. Das Appendix C behandelt ein relativ komplexes Thema innerhalb des schon komplexen NEWDOS/80. Das englischsprachige Original des Appendix C ist aufgrund der Komplexität nicht einfach zu verstehen und auch in manchen Passagen etwas umständlich geschrieben. Diese deutsche Übersetzung macht das Thema leider auch nicht wesentlich einfacher. Das Original des Appendix C enthält manchmal Wiederholungen des gleichen Themenbereichs. Diese Wiederholungen wurden möglichst ausgelassen.


    Mir weniger wichtige Kapitel (wie z.B. Formatierung der Festplatten mit HDFMTAPP und Backup) oder zu komplexe Passagen (LDOS-Kompatibilität) wurden ausgelassen, aber die Übersetzung beinhaltet alles Wichtige, um eine moderne Festplattenemulation z.B. mit einer FreHD einzurichten.


    Nicht übersetzt wurden die Kapitel:

    - 4. Formatting Your Harddisks (Low-Level Formatierung der Festplatten mit HDFMTAPP)

    - 7. Backing Up Harddisks To Diskette (Festplattensicherung auf Disketten)


    Übersetzt wurden (ganz oder teilweise) folgende Kapitel:

    - Hilfreiche Tipps zur Nutzung von NEWDOS/80 Version 2.5

    - Einleitung

    - 1. Überblick

    - 2. Kommentare und Einschränkungen

    - 3. Erweiterungen des PDRIVE für die Festplatteneinrichtung

    - 5. Das NEWDOS/80 V2.5 System auf der Festplatte installieren und von dort aus betreiben

    - 6. PDRIVE-Definitionen mit Hilfe einer Definitionsdatei einrichten


    Viel Spaß mit der Einrichtung und Benutzung einer Festplatte (real oder Emulation) und NEWDOS/80!


    1) NEWDOS V.2.0 Handbuch in deutsch

    7.2.3.2 Aufbau des FXDE

    -----------------------------

    Wenn die Daten einer Datei auf mehr als 4 Datenblocks verteilt sind, reicht der Speicherplatz im FPDE nicht aus und es muß für jeweils 4 weitere Datenblocks ein FXDE angelegt werden.

    Die 32 Bytes innerhalb eines FXDE (File Extended Directory Entry) haben folgende Bedeutung:



    7.2.3.3 Belegung von freien FDEs

    --------------------------------------------


    Wenn ein neuer FDE angelegt werden soll, könnte man ja einfach anhand der HIT (Hash Index Tabelle im HIT-Sector) den ersten freien FDE des Directory ermitteln und benutzen. Aber so einfach macht es sich das DOS auch hier nicht. Während TRSDOS und NEWDOS 2.1 den Interrupt-Zähler 4040h, der bei jedem RTC-Interrupt (Real-Time Clock) um eins erhöht wird, als Zufallsfunktion benutzt haben, um für eine gleichmäßige Auslastung aller FDE-Sectoren zu sorgen, wenden NEWDOS/80 und GDOS eine andere Methode an, um das gleiche Ziel zu erreichen:

    Nachdem der Hash-Code der Datei berechnet worden ist, für die ein FPDE angelegt werden soll, wird anhand der niederwertigsten 5 Bits dieses Hash-Codes (die einen Wert zwischen 0 und 31 ergeben können), wie bei einem Abzählreim derjenige Sektor des Directory bestimmt, in dem zuerst nach einem freien FDE gesucht werden soll (zur schnellen Erkennung von freien FDEs wird selbstverständlich die HIT herangezogen).

    Nur wenn in diesem Sektor und in allen nachfolgenden Sektoren des Directory nichts mehr frei ist, erfolgt anschließend ein zweiter Durchgang, der dann mit dem ersten FDE-Sektor des Directory beginnt.

    Bei der Belegung von FXDEs wird allerdings (wie auch schon in TRSDOS und NEWDOS 2.1) immer zuerst ab dem FDE-Sector nach einem freien FDE gesucht, in dem der FPDE der Datei steht, um zum Lesen aller FDEs einer Datei möglichst nur wenige verschiedene Sektoren des Directory laden zu müssen.

    Die Routine zum Belegen von freien FDEs befindet sich unter NEWDOS/80 und GDOS in SYS2 bei 50CFH-5104H und unter Colour DOS im ROM bei D938h-D96Dh.

    7.2.3.1 Aufbau des FPDE

    -----------------------------

    Die 32 Bytes innerhalb eines FPDE (File Primary Directory Entry) haben folgende Bedeutung:


    Für diejenigen, die noch ein bisschen weiter in den technischen Hintergrund einsteigen möchten, ist hier ein Auszug aus dem DOS-Buch von Hartmut Grosser:

    NEWDOS80 v2.0 - Aufbau des Directory (Das DOS-Buch, H. Grosser)

    =========================================================


    7.2 Der Directory

    -----------------------


    Betriebssysteme: NEWDOS/80 Version 2 für TRS-80 Model I+III, GDOS für Genie I, II, IIs, III, IIIs, Colour DOS

    Der Directory jeder Diskette besteht aus 1 GAT-Sector (GRAN Allocation Tabelle), 1 HIT-Sector (Hash Index Tabelle) und in Abhängigkeit vom PDRIVE-Parameter DDGA (Default Directory GRAN Allocation) dieser Diskette - 8, 13, 18, 23 oder 28 weiteren Sektoren, die jeder bis zu 8 FDEs (File Directory Entry) enthalten können.

    Um die Position des Directory innerhalb der Diskette schnell und sicher finden zu können, ist in dem 3. Byte des 1. Sektors jeder Diskette die LUMP-Nummer eingetragen, in welcher der Directory auf dieser Diskette beginnt. Zur Sicherheit wird zusätzlich der Directory mit einem besonderen Data Adress Mark auf Diskette geschrieben, siehe Kapitel 1.4.5.


    7.2.1 Der GAT-Sektor

    ---------------------------


    Der GAT-Sektor ist der 1. Sektor des Directory und enthält folgende Informationen: die ersten C0h (192d) Bytes bilden die GRAN Allocation Tabelle (GAT), die angibt, welches GRAN der Diskette noch frei ist und welches nicht. In Abhängigkeit vom PDRIVE-Parameter GPL (GRANS pro Lump) werden 2 bis 8 GRANS (aus Organisationsgründen) jeweils zu einem sogenannten LUMP zusammengefasst. Für jedes der max. 192 möglichen Lumps einer Diskette gibt es 1 Byte in der GAT und für jedes GRAN eines Lumps gibt es 1 Bit in diesem Byte (Bit 0 für das 1.GRAN, Bit 1 für das nächste GRAN, usw.), welches gesetzt ist, wenn das GRAN durch eine Datei belegt ist bzw. gelöscht ist, wenn das GRAN frei ist.

    In den relativen Bytes CEh und CFh ist der Code des Master-Passwortes der Diskette gespeichert (entfällt unter Colour DOS).

    In den relativen Bytes D0h-D7h steht der Name der Diskette.

    In den relativen Bytes D8h-DFh steht das Datum der Diskette.

    In den relativen Bytes E0h-FFh kann ein AUTO-Befehl (mit 0Dh als Endemarkierung) zum booten dieser Diskette stehen (entfällt unter Colour DOS).


    7.2.1.1 Belegung von freien GRANS

    -----------------------------------------------


    Bei der Suche nach einem freien GRAN auf einer Diskette könnte man ja einfach anhand der GAT (GRAN Allocation Tabelle im GAT-Sector) das erste freie GRAN auf der Diskette ermitteln und verwenden. Aber so einfach macht es sich das DOS nicht: während TRSDOS und NEWDOS 2.1 mehr zufällig bestimmt haben, welches freie GRAN auf einer Diskette als nächstes für eine Datei belegt werden sollte, um eine möglichst gleichmäßige Be- und Abnutzung der Disketten zu erreichen (die 3 niederwertigsten Bits vom DEC des FPDE dieser Datei ergaben nach der Multiplikation mit 4 eine Track-Nummer im Bereich 0, 4, 8, .., 28, ab der zuerst nach einem freien GRAN gesucht wurde) arbeiten NEWDOS/80 und GDOS nach einer anderen Philosophie: wenn ein neues GRAN für eine Datei belegt werden soll, die bereits einen oder mehrere GRANS belegt, dann wird zuerst versucht, die Datei an ihrem Ende zu erweitern, d. h. als nächstes GRAN genau das zu belegen, welches direkt hinter dem letzten belegten GRAN dieser Datei liegt (dadurch wird vermieden, Dateien auf der Diskette unnötig zu splitten).

    Falls dieses GRAN jedoch nicht mehr frei ist, oder wenn ein neues GRAN für eine Datei belegt werden soll, die noch gar keine GRANS besitzt, dann wird das erste freie GRAN der Diskette (ab Track 0, Sektor 0) genommen und belegt. Durch dieses Verfahren werden die GRANS in den äußeren Tracks einer Diskette bevorzugt, was den Vorteil einer höheren Datensicherheit hat, da in den äußeren Tracks, aufgrund des größeren Umfangs, mehr Platz pro Bit zur Verfügung steht und der Disketten-Betrieb dort weniger störanfällig ist, als in den inneren Tracks.

    Die Routine zum Belegen von freien GRANS befindet sich unter NEWDOS/80 und GDOS in SYS2 bei 4F82h-50C9h und unter Colour DOS im ROM bei D7EFh-D937h.


    7.2.2 Der HIT-Sektor

    ---------------------------


    Der HIT-Sektor ist der 2. Sector des Directory und enthält folgende Informationen: das relative Byte 1Fh gibt die um 10 verminderte Anzahl von Sektoren an, aus denen das Directory insgesamt besteht (inkl. GAT- und HIT-Sector). Alle übrigen Bytes bilden die Hash Index Tabelle (HIT), die angibt, welche FDEs im Directory noch frei sind und welche nicht, und die außerdem dazu dient, eine Datei beim Öffnen (OPEN) möglichst schnell im Directory zu finden.

    Zu jedem FDE des Directory gehört ein ganz bestimmtes Byte in der HIT. Wenn dieses Byte gelöscht ist (00h), dann ist der dazugehörige FDE unbenutzt oder existiert nicht. Wenn dieses Byte nicht gelöscht ist (ungleich 00h), dann wird der dazugehörige FDE von einer Datei benutzt (als FPDE oder FXDE) und der Wert dieses Bytes in der HIT gibt den sogenannten Hash-Code dieser Datei an (gilt sowohl für FPDEs als auch für FXDEs).

    Der Hash-Code einer Datei ist immer ein Wert zwischen 01h und FFh und wird anhand des Dateinamen und des Dateityps nach einer ganz bestimmten Formel berechnet. Um eine Datei beim Öffnen (OPEN) möglichst schnell im Directory zu finden, wird einfach der Hash-Code dieser Datei berechnet und der HIT-Sector geprüft, ob dieser Wert irgendwo steht:

    Wenn nein, kann es die gesuchte Datei auf dieser Diskette nicht geben und die ganzen FDE-Sectoren brauchen überhaupt nicht mehr gelesen zu werden. Wenn der berechnete Hash-Code jedoch einmal oder mehrmals in der HIT gefunden wird, brauchen nur die dazugehörigen FDEs von Diskette gelesen und überprüft zu werden, ob einer von Ihnen die gesuchte Datei enthält.

    Dadurch wird die Anzahl der FDE-Sectoren, die von Diskette gelesen werden müssen, drastisch reduziert. Die Position eines Bytes im HIT-Sector entspricht exakt dem DEC (Directory Entry Code) des dazugehörigen FDEs, so dass zwischen beiden ein einfacher und eindeutiger Zusammenhang besteht.


    7.2.3 Die FDE-Sectoren

    ------------------------------


    Jeder Sektor des Directory, mit Ausnahme des GAT-Sectors und des HIT-Sectors, kann 8 FDEs (File Directory Entry) enthalten. Während unter TRSDOS und NEWDOS 2.1 die ersten beiden FDEs jedes FDE-Sektors für SYS-Files reserviert waren, stehen unter NEWDOS/80, GDOS und Colour DOS alle 8 FDEs eines FDE-Sektors dem Anwender zur freien Verfügung.

    Ein FDE besteht aus 32 Bytes und enthält wichtige Informationen über eine Datei (z.B. den Namen der Datei, wo sie auf Diskette steht, usw.). Manchmal reicht jedoch ein FDE nicht aus, um alle Informationen über eine Datei aufzunehmen. In so einem Fall werden dann mehrere FDEs für eine Datei angelegt.

    Der erste FDE einer Datei wird als FPDE (File Primary Directory Entry) bezeichnet und alle weiteren FDEs -sofern es welche gibt- als FXDE (File Extended Directory Entry).

    Aus Organisationsgründen besitzen alle FDEs innerhalb des Directory eine Art Nummer, den sogenannten Directory Entry Code (DEC), der aus 8 Bits mit dem Format rrrsssss besteht:

    sssss+2 gibt an, im wievielten Sektor des Directory der FDE steht (der GAT-Sector hat die Nummer 0)

    rrr gibt an, um den wievielten FDE in diesem Sektor es sich handelt

    Hier noch etwas zur Verbesserung der Zugriffsgeschwindigkeit.


    TSR - Track Stepping Rate

    -----------------------------------


    Der Parameter TSR bestimmt die Verzögerungszeit für die Schreib-/Lesekopfpositionierung. Manche ältere Floppy-Laufwerke sind etwas träge und brauchen mehr Zeit, um Spurwechsel auszuführen. Für diese langsameren Laufwerke mußte das NEWDOS gebremst werden, da ansonsten z.B. schon ein nächster Schreibbefehl an das Laufwerk gesendet wird, obwohl es noch gar nicht richtig in der Spur angekommen ist. Dies würde zu Zugriffsfehlern führen.

    TSR kann einen Wert von 0 bis 3 annehmen und bedeutet eine Verzögerungszeit von:

    0=5ms

    1=10ms

    2=20ms

    3=40ms

    Je kürzer die Verzögerungszeit, um so kürzer die Zugriffszeit.

    Moderne 3,5" Laufwerke (z.B. SONY MPF 920 E oder TEAC 235HF) und 5,25" Laufwerke (z.B. TEAC FD-55GR u.ä.) sollten auch mit 5ms gut funktionieren. Falls es zu Fehlermeldungen kommt (dies merkt man meist schon beim Formatieren), kann man diesen Wert schrittweise erhöhen. Man kann diesen Parameter im PDRIVE auf der Systemdiskette auch verändern, ohne die Diskette neu formatieren zu müssen. Ein erneutes Formatieren nach Änderung hat aber den Vorteil, daß ein ungünstiger Wert meist schon beim Formatieren erkannt werden kann.

    DDGA - Default Directory Gran Allocation

    -------------------------------------------------------


    Der Parameter für die Verwaltungskapazität ist DDGA. Er bestimmt die Größe des Inhaltsverzeichnisses und damit Anzahl der (noch) möglichen Einträge (Dateien) im Inhaltsverzeichnis (wird z.B. bei DIR oder FREE angezeigt) und kann Werte zwischen 2 und 6 annehmen:

    2=64 FDES

    3=104 FDES

    4=144 FDES

    5=184 FDES

    6=224 FDES

    (FDES=Free Directory Entries)

    Von diesen theoretischen FDES-Werten müssen immer noch zwei schon auf den frisch formatierten Disketten versteckt vorhandene Dateien (BOOT/SYS und DIR/SYS) abgezogen werden, so daß dann nach dem Formatieren folgende Werte (mit DIR oder FREE) angezeigt weren:

    2=62 FDES

    3=102 FDES

    4=142 FDES

    5=182 FDES

    6=222 FDES

    Eine Diskette mit 720kB Kapazität kann z.B. 45 Dateien (z.B. Programme) mit jeweils 16kB aufnehmen. Dafür sind die 62 FDES ausreichend. Wenn diese 720kB-Diskette als Datendiskette genutzt wird und viele kleine Dateien mit jeweils 4kB enthält, werden für eine gefüllte Diskette 180 Einträge benötigt. Dafür wäre dann der DDGA-Parameter 5 oder 6 geeignet. Dies muss man aber schon bei der Formatierung wissen. Eine nachträgliche Änderung dieses Parameters geht nicht ohne Neuformatierung, da das Directory neu geschrieben werden muss.

    Auch belegt ein größeres Inhaltsverzeichnis mehr Platz auf der Diskette. Zu den zwei Standard-Verwaltungs-Sektoren im Inhaltsverzeichnis (GAT und HIT zusammen 512 Bytes) im Directory kommt dann noch jeweils die Anzahl der Directory Erweiterungs-Sektoren für die FXDE (File Extended Directory Entry):

    DDGA=2 = 62 FDES = 8 Sektoren = 2048 Bytes + 512 Bytes (für GAT/HIT) = 2560 Bytes = insg. 2,50kB für das Inhaltsverzeichnis

    DDGA=3 = 102 FDES = 13 Sektoren = 3328 Bytes + 512 Bytes (für GAT/HIT) = 3840 Bytes = insg. 3,75kB für das Inhaltsverzeichnis

    DDGA=4 = 142 FDES = 18 Sektoren = 4608 Bytes + 512 Bytes (für GAT/HIT) = 5120 Bytes = insg. 5,00kB für das Inhaltsverzeichnis

    DDGA=5 = 182 FDES = 23 Sektoren = 5888 Bytes + 512 Bytes (für GAT/HIT) = 6400 Bytes = insg. 6,25kB für das Inhaltsverzeichnis

    DDGA=6 = 222 FDES = 28 Sektoren = 7168 Bytes + 512 Bytes (für GAT/HIT) = 7680 Bytes = insg. 7,50kB für das Inhaltsverzeichnis

    Mit jeder Vergrößerung der FDES um 5 Sektoren ist ein Granule (1280 Bytes) weniger Diskettenkapazität verfügbar. Dieser Speicherplatzbedarf ist aber in Bezug auf die Gesamtkapazität von 720kB zu verschmerzen. So kann eigentlich immer der größte sinnvolle Wert genommen werden, um auf Nummer sicher zu gehen.

    DDSL - Default Directory Starting Lump

    ----------------------------------------------------


    Hier nochmals näheres zu den Lumps und dem damit zusammenhängenden Parameter DDSL. So fängt das Inhaltsverzeichnis (Directory) der Diskette nicht bei einer bestimmten Spur, sondern bei einem definierten Lump an. Dies regelt der Parameter DDSL. Ein z.B. häufig benutzter DDSL-Parameter ist 17. Mit GPL=2 vorausgesetzt, bilden 10 Sektoren ein Lump (2 Granules * 5 Sektoren = 10 Sektoren pro Lump). Das Inhaltsverzeichnis startet dann bei Sektor 170 (17 Lumps * 10 Sektoren). Wenn jede Spur 18 Sektoren hat (SPT=18), dann fängt das Inhaltsverzeichnis mitten in einer Spur, nämlich bei Spur 9, Sektor 8 an (siehe auch Formeln zur Berechnung unten).


    Formeln für die Berechnung von Inhaltsverzeichnis-Startspur/Startsektor:

    DDSL * GPL * 5Sek = Startsektor-Summe des Inhaltsverzeichnisses (SSdI)

    SSdI div SPT = Startspur des Inhaltsverzeichnisses (SspI)

    (SsdI mod SPT) * SPT = Startsektor des Inhaltsverzeichnisses innerhalb der Startspur des Inhaltsverzeichnisses (SsISsp)

    Berechnungsbeispiel mit den Werten von oben:

    DDSL=17

    GPL=2

    SPT=18

    DDSL * GPL * 5Sek = Startsektor-Summe des Inhaltsverzeichnisses (SSdI)

    17 * 2 * 5Sek = 170

    SsdI div SPT = Startspur des Inhaltsverzeichnisses (SspI)

    170 div 18 = 9

    (SsdI mod SPT) * SPT = Startsektor des Inhaltsverzeichnisses innerhalb der Startspur des Inhaltsverzeichnisses (SsISsp)

    (170 mod 18) * 18 = 8

    Ergebnis:

    SspI, SsISsp = Spur 9, Sektor 8



    Mit Hilfe der o.g. Formeln kann also der Startsektor und damit der Ort des Inhaltsverzeichnisses auf der Diskette durch den Benutzer selbst festgelegt und optimiert werden. Wofür sollte das nützlich sein?

    Das Inhaltsverzeichnis einer Diskette ist ein häufig benutzter Bereich auf der Diskette. Bei jedem Lese- und Schreibzugriff wird zuerst das Inhaltsverzeichnis über die Lage einer vorhandenen Datei abgefragt oder für eine neue Datei noch freier Platz gesucht.

    Das Inhaltsverzeichnis ist also die Verwaltungszentrale einer Diskette. Sie sollte deshalb auch zentral gelegen sein, damit der Schreib-/Lesekopf sie von jeder anderen Spur aus möglichst schnell erreichen kann. Die Entwicker von NEWDOS sind davon ausgegangen, daß eine Diskette oft nur zur Hälfte mit Dateien gefüllt ist. Der Schreib-/Lesekopf wird deshalb fast immer irgendwo in der ersten Hälfte (die ersten Spuren sind im Außenbereich) der Diskette verweilen und auf das nächste Kommando warten. Deshalb wurde als DDSL-Standardparameter oft 17 gewählt, da bei 40 Spuren und 18 Sektoren/Spur in Verbindung mit GPL=2 das Inhaltsverzeichnis in die Spur 9 fällt. Wenn man -wie die Entwickler- davon ausgeht, daß oft nur 20 Spuren mit Dateien belegt sind, liegt Spur 9 also ungefähr in der günstigen Mitte.

    GPL - Granules pro 'Lump'

    -----------------------------------


    Nun ist erstmal die Frage berechtigt, "was ist überhaupt ein Lump?" Lump heißt auf Deutsch soviel wie Klumpen oder Stück. Damit ist beim NEWDOS einfach eine Ansammlung (oder Klumpen) von Granules gemeint. Granules (Englisch für Körnchen) sind wiederum unterteilt in Sektoren.

    Schematisch kann das so aussehen (5 Sektoren pro Granule, 2 Granules pro Lump):


    <.................Lump.................>

    <.....Granule1.....><.....Granule2.....>

    <S1><S2><S3><S4><S5><S1><S2><S3><S4><S5>


    oder beispielsweise auch so (5 Sektoren pro Granule, 4 Granules pro Lump):


    <.....................................Lump.....................................>

    <.....Granule1.....><.....Granule2.....><.....Granule3.....><.....Granule4.....>

    <S1><S2><S3><S4><S5><S1><S2><S3><S4><S5><S1><S2><S3><S4><S5><S1><S2><S3><S4><S5>


    Gemäß NEWDOS/80-Manual (v.2.0) bilden immer 5 Sektoren (jeder 256 Bytes) ein Granule (=1280 Bytes), die für Nutzerdaten bereitstehen. Die Anzahl von 5 Sektoren kann im NEWDOS/80 v.2.0 nicht verändert werden, anders in der Version 2.5, wo dies -zumindest für Festplatten- möglich ist, aber das ist ein extra Thema wert.

    Ein Granule ist die kleinste durch Benutzerdaten belegbare Einheit auf der Diskette. Egal, wie klein eine Datei ist, sie belegt immer mindestens ein Granule. Mit GPL kann man einstellen, wieviel Granules ein Lump bilden. Dieser Wert darf zwischen 2 und 8 liegen. Ein Lump ist ein spurübergreifender Datenblock. Der Benutzer hat auf die Lumps keinen direkten Zugriff. NEWDOS kann mit Hilfe von Lumps seine Datenverwaltung besser (d.h. mit weniger Aufwand) steuern, so die Idee der Entwickler. Ein Lump kann in einer Spur anfangen und in einer anderen Spur aufhören. Diskettenspuren spielen also bei der internen Disketten-Speicherverwaltung von NEWDOS nur eine untergeordnete Rolle. Zu den Lumps später noch mehr.

    Aber nun zurück zum GPL-Parameter, welcher auch einen Einfluss auf den Umfang der zu verwaltenden Daten im Inhaltsverzeichnis hat. Auf einer Diskette sind 192 Lumps (mit variabler Größe von GPL=2 bis GPL=8) technisch maximal möglich. Diese Limitierung ist im GAT (Gran Allocation Table) begründet, da dort genau 192 Bytes für die Lump-Verwaltung zur Verfügung stehen. Jedes dieser 192 Bytes kann ein Lump verwalten.

    Bei GPL=2 kann das Inhaltsverzeichnis 192 Lumps * 5 Sektoren/Granule * 2 Granule/Lump * 256 Bytes/Sektor = 491520 Bytes verwalten.

    Eine einseitige Double Density Diskette (80 Spuren * 18 Sektoren * 256 Bytes/Sektor) fasst 368640 Bytes (360kB). Dafür ist ein GPL=2 ausreichend.

    Dies trifft ebenso auf eine zweiseitige Double Density Diskette mit 40 Spuren zu (40 Spuren * 36 Sektoren * 256 Bytes/Sektor). Im Ergebnis das Gleiche; auch hier ist ein GPL=2 ausreichend.

    Dagegen hat eine doppelseitige Double Density Diskette (80 Spuren * 36 Sektoren * 256 Bytes/Sektor) = 737280 Bytes (720kB) an Kapazität.

    Ein Inhaltsverzeichnis mit dem Parameter GPL=2 kann mit dieser großen Datenmenge nicht mehr umgehen. Für eine solche Diskette muß mindestens GPL=4 eingestellt werden: 192 Lumps * 5 Sektoren/Granule * 4 Granule/Lump * 256 Bytes/Sektor = 983040 Bytes. Ein größerer GPL-Parameter würde hier auch funktionieren, bringt aber keine Vorteile.

    Hier ein Parameter-Beispiel mit GPL=4 für eine 80-Spuren Diskette (incl. einem optimierten DDSL-Wert, bedeutet Directory-Start in Spur 30):

    PDRIVE: TI=A,TD=G,TC=80,SPT=36,TSR=0,GPL=4,DDSL=54,DDGA=6

    Beispiele für PDRIVE:

    1.)

    PDRIVE,dn1,dn2,TI=A,TD=A,TC=35,SPT=10,TSR=3,GPL=2,DDSL=17,DDGA=2

    Dies ist die Standardeingabe für Disketten beim Modell I, die eine Größe von 5" haben, 35 Spuren, einfache Schreibdichte und für den Austausch mit NEWDOS/80 Version 1 und anderen DOS-Versionen wie TRSDOS geeignet sind. Diese Angabe kann ebenfalls beim Modell III benutzt werden. Für Disketten mit TRSDOS 2.3B im Modell I ist TI=AM zu benutzen (siehe Änderung Zap #030).

    2.)

    PDRIVE,dn1,dn2,TI=A,TD=E,TC=40,SPT=18,TSR=3,GPL=2,DDSL=17,DDGA=2

    Dies ist die Standardeingabe für Disketten, die ein Größe von 5" haben, 40 Spuren, doppelte Schreibdichte und einseitig, also im Modell III eingesetzt werden. Beim Modell I gibt man anstelle von TI=A den Wert TI=C an. Mit dieser PDRIVE-Angabe kann man die Diskette ebenfalls im Modell I mit Laufwerken doppelter Schreibdichte verarbeiten.

    3.)

    PDRIVE,dn1,dn2,TI=AM,TD=E,TC=40,SPT=18,TSR=3,GPL=6,DDSL=17,DDGA=2

    Diese Eingabe kann beim Modell III gemacht werden (Modell I muss TI=CM oder TI=EM haben), um Disketten mit TRSDOS zu lesen oder zu schreiben. Die Diskette hat 40Spuren, doppelte Schreibdichte und ist 5" einseitig. Dies ist das einzige TRSDOS-Format, das auch mit NEWDOS/80 zu verarbeiten ist. Da diese Disketten vom Modell III im NEWDOS nicht formatiert werden können, ist die Angabe von DDSL und DDGA ohne Bedeutung. GPL=6 muss angegeben werden. Im NEWDOS/80 kann nur das COPY-Kommando mit TRSDOS-Disketten vom Modell III benutzt werden, außerdem SUPERZAP mit den Funktionen DD, DM, DTS, VDS, CDS, CDD usw., nicht aber Funktionen, die sich auf einen File (Datei) beziehen (z.B. DFS darf nicht benutzt werden).

    4.)

    PDRIVE,dn1,dn2,TI=A,TD=C,TC=80,SPT=20,TSR=2,GPL=8,DDSL=20,DDGA=6

    Diese Eingabe behandelt eine 5"-Floppy mit 80 Spuren, einfacher Schreibdichte, zweiseitig, mit einer Wartezeit von 20ms, 8 Granules pro 'Lump' und grösstmöglichem Directory in der Mitte der Floppy. Beim Modell III ist diese Eingabe nicht erlaubt, da keine Floopies mit einfacher Schreibdichte in Laufwerk 0 sein dürfen.

    5.)

    PDRIVE,dn1,dn2,TI=A,TD=G,TC=80,SPT=20,TSR=2,GPL=8,DDSL=35,DDGA=6

    Diese Eingabe behandelt eine 5"-Floppy mit 80 Spuren für Modell III (bei Modell I TI=C oder TI=E benutzen) mit doppelter Schreibdichte, zweiseitig, mit 20ms Wartezeit von Spur zu Spur, 8 Granules pro 'Lump' und größtmöglichem Directory in der Mitte der Floppy. Beim Modell I ist diese Eingabe nicht erlaubt, da keine Floppies mit doppelter Schreibdichte in Laufwerk 0 sein dürfen.

    6.)

    PDRIVE,dn1,dn2,TI=CK,TD=E,TC=39,SPT=18,TSR=3,GPL=2,DDSL=17,DDGA=2

    Diese Eingabe behandelt eine 5"-Floppy mit 40 Spuren für das Model I (beim Modell III TI=AK benutzen) mit doppelter Schreibdichte und einseitig beschrieben. Bei dieser Floppy ist die Spur 0 mit einfacher Schreibdichte formatiert, folglich sind nur 39 Spuren für den normalen Gebrauch zugelassen. Mit dieser Angabe können Disketten verarbeitet werden, die mit dem PERCOM-Doubler unter NEWDOS/80 Version 1 und TRSDOS erzeugt wurden. Ebenfalls kann diese Angabe benutzt werden, wenn eine Diskette mit doppelter Schreibdichte im Modell I auf dem Laufwerk 0 benutzt wird. Bei Benutzung des LNW-Interface beim Modell I benutzt man die Angabe TI=EK.

    7.)

    PDRIVE,dn1,dn2,TI=CK,TD=G,TC=79,SPT=36,TSR=3,GPL=8,DDSL=35,DDGA=6

    Diese Eingaben können beim Modell I gemacht werden (beim Modell III TI=AK benutzen) für eine 5"-Diskette mit 80 Spuren, doppelter Schreibdichte und zweiseitig, deren erste Spur mit einfacher Dichte beschrieben ist. Mit einem LNW-Interface setzt man beim Modell I TI=EK ein. Achtung: zweiseitige Disketten mit doppelter Schreibdichte, die unter der geänderten Version 1 von NEWDOS/80 beschrieben wurden, können nicht in der Version 2 laufen.

    8.)

    PDRIVE,dn1,dn2,TI=AL,TD=A,TC=35,SPT=10,TSR=3,GPL=2,DDSL=17,DDGA=2

    Diese Eingaben können bei 5"-Floppies gemacht werden mit 35Spuren, einseitig mit einfacher Schreibdichte um sie mit einem Laufwerk mit 80 Spuren lesen zu können. Das Laufwerk mit 80 Spuren hat nur die halbe Schrittweite von Spur zu Spur. Mit der Angabe TI=AL bewirkt man, daß von Spur zu Spur zwei Schritte zur Kopfpositionierung gemacht werden.

    9.)

    PDRIVE,dn1,dn2,TI=BH,TD=B,TC=77,SPT=17,TSR=3,GPL=3,DDSL=17,DDGA=6

    Mit dieser Eingabe für das Modell I kann man 8"-Floppies mit 77 Spuren, einseitig und mit einfacher Schreibdichte verarbeiten. Dabei ist zu beachten, daß in der NEWDOS/80 Version 1 bei solchen Disketten SPT=15 und GPL=3 vorgegeben war, so daß diese Disketten in der Version 2 nur mit diesen Parametern zu verarbeiten sind. Es sollte von derartigen Disketten ein COPY auf andere Disketten mit DDGA=17 erfolgen, da darauf 12% mehr Speicherplatz ist. Mit dem Flag TI=BH wird bewirkt, daß eine Verzögerungszeit bei der Kopfpositionierung eingehalten wird. Dies muss bei den meisten 8”-Floppies beachtet werden.

    10.)

    PDRIVE,dn1,dn2,TI=BH,TD=D,TC=77,SPT=34,TSR=3,GPL=8,DDSL=17,DDGA=6

    Mit dieser Eingabe für das Modell I kann man 8"-Floppies mit 77Spuren, zweiseitig und mit einfacher Schreibdichte verarbeiten, eine Verzögerungszeit von 25ms bei der Kopfpositionierung wird eingehalten.

    11.)

    PDRIVE,dn1,dn2=dn3

    Mit dieser Eingabe werden die Parameter von Drive 2 für Drive 3 übernommen.

    12.)

    PDRIVE,dn1,dn2=dn3,TC=40,TSR=2

    Mit dieser Eingabe werden die Parameter von Drive 2 für Drive 3 übernommen. Zusätzlich werden die Parameter 'TC und 'TSR' für Drive 3 verändert.

    13.)

    PDRIVE,0,A

    Mit dieser Eingabe werden die Parameter für 'AL' (siehe "SYSTEM" auf Seite 46) Floppies in den Speicher übernommen.

    14.)

    PDRIVE,0,dn2=dn3,A

    Mit dieser Eingabe werden die Parameter für das Laufwerk 'dn2' von den Parametern von 'dn3' überschrieben und ebenso wie beim letzten Beispiel in den Speicher übernommen und somit sofort aktiviert.

    *1

    Eine Parameterüberprüfung findet teilweise dennoch statt. Bei fehlerhaft erkannten Werten wird nach dem betreffenden Parameterblock dann '*** ERROR ***' angezeigt.

    Wenn eine CPU-Taktfrequenzerhöhung installiert ist, und diese Beschleunigung während der Ein- und Ausgabe auf die Floppy aufgehoben wird, muss darauf geachtet werden, daß die Ein-/Ausgabegeschwindigkeit nicht niedriger wird als die Geschwindigkeit der nicht umgebauten CPU.

    Die Disk Ein- und Ausgabeloops im NEWDOS/80 können keine unterschiedliche Geschwindigkeit tolerieren. Dies gilt besonders für die Optionen B, D, E und G. Mit der SYSTEM-Option 'BJ' kann die CPU jedoch mit der schnelleren Geschwindigkeit laufen, auch bei Disk Ein- und Ausgabe. Diese SYSTEM-Option wurde von Apparat jedoch noch nicht genügend ausgetestet, eine Garantie für das Funktionieren kann also nicht gegeben werden.

    Die Optionen 'TD=F' oder 'TD=H' verlangen jedoch den Umbau der CPU auf eine höhere Geschwindigkeit; sie muss bei der Ein- und Ausgabe von der Floppy mindestens doppelt so hoch sein.

    Bei Laufwerken vom Typ C, D, G und H behandelt das NEWD0S/80 beim normalen Interface (TI=A, B, C, D oder E) eine zweiseitig beschriebene Floppy als eine gesamte Floppy. Die niedrigen Sektoren einer Spur liegen auf der ersten Seite, die höheren Sektoren auf der Rückseite. Eine solche Floppy hat auch nur ein Directory. Der Pin 32 der Floppy wird für den Seitenwechsel angesteuert (Spezialkabel). Doppeltseitige Floppies mit 5" und 8" können mit dem NEWD0S/80 v.2 beim Modell I und III benutzt werden.

    Apparat hat in der Version 1 des NEWDOS/80 Floppies mit doppelter Schreibdichte nicht unterstützt. Einer der Hauptgründe war, daß Laufwerke mit doppelter Schreibdichte bei weitem nicht die Datensicherheit erreichen, wie mit einfacher Schreibdichte. Einer der Gründe hierfür war der Data-Separator. Obwohl sich das im letzten Jahr etwas gebessert hat, ist die Datensicherheit dieser Floppies noch wesentlich geringer.

    TC=tc1

    Gibt die Anzahl der Spuren für die Diskette in Drive 'dn2' an (ausschliesslich Spur 0 bei der Option 'K'). Wenn das Flag 'K' nicht gesetzt ist, gilt TC=35 für ein Laufwerk mit 35 Spuren, TC=40 für 40 Spuren. Wenn 'K' gesetzt ist, gilt TC=34 für Floppies mit 35 Spuren und TC=39 für 40 Spuren.

    SPT=sc1

    Gibt die Anzahl der Sektoren je Spur an. 'sc1' muss bei doppeltseitigen Laufwerken (TD=C, D, G oder H) doppelt so hoch sein wie bei gleichen Laufwerken, die nur einseitig sind, 'sc1' kann jeden Wert zwischen 1 und der maximalen Anzahl von 256 Byte langen Sektoren einer Spur sein. Hier noch die Maximalwerte für die verschiedenen Laufwerkstypen: A=10, B=17, C=20, D=34, E=18, F=26, G=36 und H=52.

    TSR=rc1

    Gibt die Zeit der Impulse für die Kopfpositionierung an. 'rc1' kann einen Wert von 0 bis 3 haben. Er wird benutzt bei den Kontroller-Kommandos SEEK, STEP und RESTORE. Beim Standard-Kontroller des Modell I und III ergibt TSR=0 eine Wartezeit von 5ms, TSR=1 ergibt 10ms, mit TSR=2 werden 20ms gewartet und bei TSR=4 40ms. Beim Modell I ist TSR=3 der Standardwert. Benutzt werden kann, je nach Fabrikat des Laufwerks, auch TSR=2 oder TSR=1. Beim Modell III wird TSR=0 benutzt. Bei Problemen mit der Floppy ist TSR=3 der sicherste Wert.

    GPL=gc2

    Gibt die Anzahl der Granules pro 'Lump' an. 'gc2' darf zwischen 2 und 8 liegen. Beim TRSDOS für das Modell I und III, sowie bei den älteren NEWDOS-Versionen wurde die Unterteilung der Floppy über Granules (5 Sektoren pro Granule beim Modell I und 3 Sektoren pro Granule beim Modell III) und Spuren (2 Granules pro Spur beim Modell I, 6 Granules pro Spur beim Modell III) vorgenommen. Beim NEWDOS/80 v.2 für beide Modelle werden noch immer 5 Sektoren pro Granule erzeugt, und 2 bis 8 Granules pro 'Lump' (nicht Spur). Wenn eine Spurnummer im Directory steht (im GAT-Sektor oder im FXDE) wird diese ersetzt durch eine 'Lump'-Nummer. Auf diese Art kann ein Granule in einer Spur anfangen und in der nächsten Spur aufhören. So kann bei einer 8"-Diskette mit doppelter Schreibdichte unter Beibehaltung des bisherigen Formats des Directorys die Anzahl der Sektoren maximiert werden. Bei 'GPL=2' ist das Directory genau so aufgebaut, wie beim TRSDOS und allen anderen NEWDOS/80 Versionen. Floppies und einzelne Files können dann zwischen den einzelnen Betriebssystemen hin- und her transferiert werden. Bei 'GPL=8' kann das Directory jetzt 192*8*5=7680 Sektoren oder 1966000 Bytes behandeln.

    DDSL=ln1

    entspricht in seiner Funktion dem DDST-Parameter von NEWDOS/80 Version 1. 'ln1' gibt die 'Lump'-Nummer an, in welcher der erste Sektor des Directorys steht. Dieser Wert wird beim FORMAT im 3.Byte des BOOT-Sektors abgespeichert. In den älteren Betriebssystemen enthielt dieses 3.Byte die Spurnummer, in der das Directory anfängt. Da aber bei NEWDOS/80 v.2 nur noch der Ausdruck 'Lump' anstelle von Spur benutzt wird, steht hier eben die 'Lump’-Nummer. Um die relative Sektornummer des ersten Sektors (GAT-Sektor) des Directory zu erhalten, greift das System auf das 3.Byte des BOOT-Sektors zu und multipliziert es mit 5*GPL. DDSL=17 ergibt die gleiche Startadresse bei der einseitigen, mit einfacher Dichte beschriebenen Floppy, wie bei älteren Betriebssystemen. DDSL sollte auf den gleichen Wert gesetzt werden, wie der Parameter DDST bei der Version1.

    DDGA=gc1

    (Wert zwischen 2 und 6) gibt bei FORMAT oder COPY die Anzahl der Granules an, die für das Directory reserviert werden, falls der Parameter 'DDGA' bei diesen Kommandos nicht mit eingegeben wird. Der Standardwert von 'DDGA' ist für die Verwendung mit anderen Betriebssystemen außer NEWDOS/80 immer 2. Wenn dieser Wert ungleich 2 ist, enthält das 32.Byte im HIT-Sektor die Anzahl der zusätzlichen Sektoren für das Directory (5, 10, 15 oder 20). Jeder dieser zusätzlichen Sektoren enthält 8 zusätzliche Einträge. So kann das Directory bei den Werten DDGA=2, 3, 4, 5 oder 6 entsprechend 64, 104, 144, 184 oder 224 Einträge enthalten. Es können alle Einträge außer zwei, nämlich den beiden für BOOT/SYS und DIR/SYS benutzt werden.

    A

    gibt an, daß die Eingaben von PDRIVE (allerdings nur, wenn sie fehlerfrei sind) sofort auf dasjenige Laufwerk geladen und aktiv werden, welches im SYSTEM-Parameter 'AL' angegeben ist. Dadurch entfällt nach der Eingabe das Reset. Wenn 'A' angegeben wird, muss 'dn1' gleich 0 sein.

    NEWDOS/80 v2.0 Handbuch

    =======================

    2.37 PDRIVE

    --------------

    Standardwerte für die Floppy-Laufwerke eingeben

    PDRIVE,<passwort1:>dn1,<dn2(=dn3)><,TI=typ1><,TD=typ2><,TC=Tc1><,SPT=sc1><,TSR=rc1><,GPL=gc2><,DDSL=ln1><,DDGA=gc1><,A>

    PDRIVE kann nicht im MINI-DOS aufgerufen werden.

    NEWDOS/80 hat eine begrenzte Anzahl von Möglichkeiten, verschiedene 5-Zoll Floppies und 8-Zoll Floppies anzusprechen. Über das Kommando PDRIVE können für jede Floppy die physikalischen Eigenschaften angegeben werden.

    Jedes PDRIVE-Komnando listet die Angaben für max. 10 Laufwerke, obwohl die Anzahl der angeschlossenen Laufwerke und die beim SYSTEM-Parameter AL angegebene Anzahl der Laufwerke auf keinen Fall 4 überschreiten darf. Die Laufwerke innerhalb des Bereichs von AL werden beim Kommando PDRIVE mit einem Stern nach der Laufwerksnummer angezeigt. Die Angaben über die 10 Laufwerke werden vom System von der Diskette in Laufwerk 0 übernommen. Aus Gründen der Zeitersparnis werden die Laufwerksangaben von den unter 'AL' angegebenen Laufwerken von Diskette 0 im Arbeitsspeicher (RAM) gehalten und bei jedem Reset neu in den Speicher geholt. Ist jedoch eine der 10 möglichen Angaben falsch, kann auch die Übernahme der 4 gültigen Angaben nicht erfolgen und das System bleibt beim nächsten Reset hängen. Die Tabelle der Laufwerksangaben wird ebenfalls beim PDRIVE-Kommando mit dem Parameter ',A' in den Arbeitsspeicher übernommen.

    Die Angabe 'dn1' bezieht sich auf das Floppy-Laufwerk, in dem sich die Floppy mit dem Betriebssystem befindet. Im 3.Sektor von BOOT/SYS dieser Floppy werden die Angaben über die einzelnen Laufwerke abgespeichert und mit dem Kommando PDRIVE verändert.

    Wird beispielsweise das Kommando 'PDRIVE,1,4,TC=80' eingegeben, so erhält die Diskette in Laufwerk 1 die Kontrollinformation für Laufwerk 5 mit 80 Spuren. Da 'dn' einen Wert von 0 bis 9 annehmen kann, bedeutet 4 das Laufwerk 5. Die Laufwerksparameter der anderen Laufwerke werden nicht beeinflusst.

    Wenn die Passwörter aktiv sind, muss das Haupt-Passwort für die Diskette eingegeben werden, auf der die Parameter verändert werden (dn1), andernfalls kann das Passwort weggelassen werden.

    Es werden nur die Parameter eines Laufwerks verändert, die auch mit dem Kommando angegeben werden. Da das System die eingegebenen Parameter nicht überprüft (*1), muss bei diesem Kommando besonders auf die Richtigkeit der Eingaben geachtet werden.

    Mit dem Kommando PDRIVE,dn1 werden die 10 Laufwerksparameter gelistet, die auf der Diskette in Laufwerk 'dn1' gespeichert sind.

    TI=typ1

    Gibt die Art der Verbindung (Interface) zwischen Z80-CPU und der Floppy an. typ1 muss ein einzelner Buchstabe sein und zwar bei Modell I nur A, B, C oder E. Beim Modell III darf es nur A oder D sein. Die anderen Angaben sind optional, abhängig von der Art des Interfaces zu den Floppies. Manche Angaben dürfen nicht im Zusammenhang mit anderen Angaben weiterer Laufwerke stehen. Wird also beispielsweise für Laufwerk 1 eine bestimmte Anschaltung eingegeben, darf Laufwerk 2 nicht eine andere Anschaltungsart enthalten. Im Moment sind für das Modell I die Angaben B, C und E entweder für alle oder für kein Laufwerk anzugeben.

    A

    bedeutet, daß das Standard-Interface für Diskettenoperationen installiert ist. Beim Modell I kann dieses Interface die Optionen A und C unterstützen, beim Modell III die Optionen A, C, E und G.

    B

    (nur Modell I) Omikron 8-Zoll Floppy-Interface. Dieses Interface unterstützt die Optionen A, B, C und D auch wenn es sich um ein Omikron-Interface handelt.

    C

    (nur Modell I) PERCOM Doubler-Interface ist installiert und wird für Floppy Ein- und Ausgaben benutzt. Mit diesem Interface können die Optionen A, C, E und G benutzt werden.

    D

    (nur Modell III) bedeutet, daß der Disk-Controller von Apparat installiert ist und für Floppy Ein- und Ausgabe benutzt wird. Die Optionen A bis H können benutzt werden.

    E

    (nur Modell I) bedeutet, daß der LNW-Disk-Controller installiert ist und für Floppy Ein- und Ausgabe benutzt wird. Die Optionen A bis H können benutzt werden.

    H

    bedeutet, daß beim Wechsel von einer Diskette auf diese mit H angegebene Diskette eine Zeitverzögerung für die Kopfpositiomerung eingehalten wird. Bei 5"-Floppies für Modell I und III wird der Kopf mit dem Motorstart neu positioniert, eine Zeitverzögerung ist also nicht nötig. Sie ist nur für 8"-Floppies.

    I

    bedeutet, daß der niedrigste Sektor die Nummer 1 hat. Dies ist der Standard für Disketten von Modell III TRSDOS. Wenn I nicht angegeben ist, ist der 1.Sektor einer Spur Sektor 0. Dies ist Standard beim Modell I und beim NEWDOS/80 im Modell III.

    J

    bedeutet, daß der niedrigste Sektor die Nummer 0 hat. Dies ist der Standard für Disketten von Modell I und III im NEWDOS/80.

    K

    bedeutet, daß die Spur 0 formatiert wird (oder ist) mit einer anderen Schreibdichte als die anderen Spuren. Dadurch wird die Spur 0 für normale Disk Ein- und Ausgabe unbrauchbar. Es kann nur entweder J oder K gesetzt werden. Der Zweck für die unterschiedliche Formatierung liegt darin, daß ein System von einer derartigen Diskette geladen werden kann (Spur 0 einfache Schreibdichte bei Modell I, alle anderen Spuren doppelte Schreibdichte, bei Modell III die erste Spur doppelte Schreibdichte, alle anderen Spuren einfache). Mit dem Flag K teilt man den Befehlen FORMAT und COPY mit, die Spur 0 in umgekehrter Schreibdichte wie die anderen Spuren zu formatieren oder zu kopieren. Flag K darf nicht für Modell III-Disketten angegeben werden, außer der Benutzer möchte unbedingt die Standard-Diskette von Modell III auf Modell I ohne NEWDOS/80 v.2 laufen lassen. Wenn K dann angegeben wird, muss bei TC eine Spur weniger als eigentlich vorhanden angegeben werden.

    L

    bedeutet, daß von einer Spur zur nächsten zwei Schritt-Impulse an den Schreibkopf gegeben werden. Damit können Disketten mit 35 oder 40 Spuren auf einem Laufwerk mit 80 Spuren gelesen werden. Es kann zwar auch damit geschrieben werden, dies kann aber beim Lesen zu Problemen führen und sollte deshalb vermieden werden.

    M

    bedeutet, daß die Floppy im Standard Modell III TRSDOS beschrieben ist. Nur das DOS-Kommando COPY wird aber berücksichtigen, daß die Floppy in diesem Format beschrieben ist und sich darin von der NEWDOS/8O-Diskette unterscheidet.

    Wurde mit Änderung (Zap) #030 erweitert auf Modell I TRSDOS 2.3B.

    Die Optionen F und G sowie N bis Z werden nicht gebraucht und sind für spätere Anwendungen reserviert.

    TD=typ2

    Gibt den Typ der Floppy an. typ2 muss ein einzelner Buchstabe nach folgendem Schema sein:

    1. A = 5" Floppy, einfache Dichte, einseitig

    2. B = 8" Floppy, einfache Dichte, einseitig

    3. C = 5" Floppy, einfache Dichte, zweiseitig

    4. D = 8" Floppy, einfache Dichte, zweiseitig

    5. E = 5" Floppy, doppelte Dichte, einseitig

    6. F = 8" Floppy, doppelte Dichte, einseitig

    7. G = 5" Floppy, doppelte Dichte, zweiseitig

    8. H = 8" Floppy, doppelte Dichte, zweiseitig

    NEWDOS/80 ist ein vielfältig konfigurierbares Betriebssystem. Mit den angebotenen Möglichkeiten steigt aber auch die Komplexität und damit die Gefahr von suboptimalen oder fehlerhaften Konfigurationen. Dies betrifft vor allem die PDRIVE-Parameter, mit denen die Floppy-Disk-Laufwerke und die Disketten konfiguriert werden können.

    Beim NEWDOS/80 ist es durch die PDRIVE-Parameter möglich,

    - die Anzahl der Spuren

    - einseitige oder zweiseitige Disketten

    - single Density, double Density

    - 5" oder 8" Laufwerke

    - Lage und Größe des Inhaltsverzeichnisses auf der Diskette

    und andere Vorgaben zu bestimmen.

    Dabei ist es möglich, daß jedes angeschlossene Diskettenlaufwerk andere Parameter enthalten kann. 10 verschiedene Parametersätze werden im NEWDOS vorgehalten und bei Bedarf kann zwischen ihnen umgeschaltet werden.

    Viele Benutzer machen verständlicherweise einen großen Bogen um die PDRIVE-Parameter, weil sie nicht alle auf den ersten Blick leicht verständlich sind. In diesem Thema hier wird auf die Besonderheiten des PDRIVE eingegangen und versucht, die größten Unklarheiten auszuräumen.

    Den Anfang macht hier zur Einführung ein Auszug aus dem NEWDOS/80 v2.0 Manual, welches 1982 in der deutschen Übersetzung erschienen ist.

    Viel Spaß mit PDRIVE!

    Example: PDRIVE,0,1,HDS=(0,615,0,4,32,0,5760,2880,5,8,0,32) whereas the parameters stands for:

    HDS=(hddn1,tps1,sfs1,ssc1,spt1,tsr1,vfs1,vsc1,spg1,gpl1,ddsl1,ddsa)


    (*1) RSC=Recording Surface Count

    (*2) sum of ssc1 + sfs1 not greater than RSC

    (*3) sum of vsc1 + vfs1 not greater than tps1 * ssc1 * spt1

    (*4) a 0 (zero) hands over the calculation of the directory's starting lump to NEWDOS and is placed near the middle of the data volume but not greater than 80, as it is assumed more files will exist near the beginning of the volume than at the end

    (*5) an * (asterisk character) instead of an integer, PDRIVE will assign all of the drive section's remaining sectors to the data volume

    (*6) a 0 (zero) let PDRIVE calculate the lowest spg1 above 4 that will suffice for the gpl1 value specified and the number of sectors assigned to the data volume (vsc1)


    Editor:

    Magical Snap - 2021.02.07 13.50 - 003.png

    Code Test

    Byte Bedeutung im FPDE

    ------------------------------------------------------------------

    00h Bit 7: gelöscht, da FPDE und kein FXDE

    Bit 6: gesetzt wenn es sich um eine SYS-Datei handelt

    Bit 5: ./.

    Bit 4: gesetzt wenn der FPDE zu einer Datei gehört, gelöscht wenn der FPDE unbenutzt (frei) ist

    Bit 3: gesetzt wenn die Datei unsichtbar (INV) ist

    Bits 2-0: Zugriffs-Level (0-7) aufgrund eines Passwortes



    GPL - Granules pro 'Lump'

    -----------------------------------

    Nun ist erstmal die Frage berechtigt, "was ist überhaupt ein Lump?" Lump heißt auf Deutsch soviel wie Klumpen oder Stück. Damit ist beim NEWDOS einfach eine Ansammlung (oder Klumpen) von Granules gemeint. Granules (Englisch für Körnchen) sind wiederum unterteilt in Sektoren.

    Schematisch kann das so aussehen (5 Sektoren pro Granule, 2 Granules pro Lump):


    <.................Lump.................>

    <.....Granule1.....><.....Granule2.....>

    <S1><S2><S3><S4><S5><S1><S2><S3><S4><S5>


    oder beispielsweise auch so (5 Sektoren pro Granule, 4 Granules pro Lump):


    <.....................................Lump.....................................>

    <.....Granule1.....><.....Granule2.....><.....Granule3.....><.....Granule4.....>

    <S1><S2><S3><S4><S5><S1><S2><S3><S4><S5><S1><S2><S3><S4><S5><S1><S2><S3><S4><S5>