HD-Format V2.20 von Thomas Muthmann, Duisburger Str. 153, 4330 Mlheim/Ruhr Dieses Programm ist freeware und darf von jedem kopiert und weitergegeben werden. Voraussetzung ist die Weitergabe im Originalzustand, d.h. alle unten aufgelisteten Dateien drfen nicht ver„ndert werden. Aužerdem darf dieses Programm nicht gewerblich genutzt werden, ausgenommen ist die Verbreitung ber PD-Versand. Fr Sch„den die durch die Benutzung dieses Programmes entstehen, bernehme ich keine Haftung. Erreichbar bin ich unter fogenden Netzen: MagicNet IMABOX:Thomas_M Zerberus Thomas_Muthmann@HOT.ZER Fido Thomas Muthmann - 2:245/8.5923@FidoNet (Apolonia Point #23) Zum Programm geh”rende Files: - HDFORMAT.PRG Programm und Resource (auch als ACC zu verwenden) - HDFORMAT.RSC - HDFORMAT.TXT Dieser Text - HDFORMAT.BOO Ausfhrbarer Bootsektor (FORMAT und FORMAT2 bersetzt) - HDFORMAT.S Programmierrahmen fr ausfhrbare Bootsektoren - HDFORMT1.S Kleines Demo - HDFORMT2.S Noch ein Demo Erl„uterungen: ============== - Formatierung von 9,10,15,16,18 oder 20 Sektor-Disketten, wobei die Formatierung ab 15 Sektoren nur mit einem HD-Laufwerk, HD-Disketten und dem Umbau aus ST-Computer 1/90 m”glich ist. - einfach in der Bedienung. - Erzeugung von "schnellen" Disketten, durch geeignete Wahl von Spiral- und Interleavefaktoren (siehe auch ST-Computer 12/89): 9 Sektoren : Interleavefaktor 11, keine Spiralisierung 10 Sektoren : Interleavefaktor 1, Spiralfaktor 2 15 Sektoren : Interleavefaktor 18, keine Spiralisierung 16 Sektoren : Interleavefaktor 1, Spiralfaktor 3 18 Sektoren : Interleavefaktor 21, keine Spiralisierung 20 Sektoren : Interleavefaktor 1, Spiralfaktor 4 - 9 Sektoren sind schneller als 10 und 18 Sekt sind schneller als 20, da das Timing bei 9 und 18 Sektoren das gleiche wie bei deaktiviertem Track-Verify (siehe diverse TOS-Patches) ist. Daraus folgt, daž 9 und 18 Sektor Disketten schon die maximale Geschwindigkeit erreicht haben, w„hrend 10 und 20 Sektor Disketten nur mit Hardwareumbau schneller werden k”nnen. - Da die Formatierung mit Hilfe der normalen XBIOS-Routine Flopfmt geschieht, ist die Datensicherheit hoch, da hier auf spezielle Quickformat-Tricks verzichtet wird und aužerdem ein Verify durchgefhrt wird. - Daraus folgt, daž mit diesem Programm keine Sonderformate wie 11-Sektor Disketten erzeugt werden k”nnen. - 10 Sektor-Disketten sind eine legale M”glichkeit, mehr Platz auf Disketten zu bekommen, da vom Atari-Betriebssystem bei der Formatierung auf 9 Sektoren einfach viele Fllbytes anstatt des 10ten Sektors auf die Spur geschrieben wird. Da die ganzen Controller- spezifischen Bytes nicht ver„ndert werden, leidet auch die Datensicherheit nicht darunter, was nach eigenen Versuchen bei 11 Sektor Disketten des ”fteren der Fall ist. Da bei HD-Disketten einfach die Schreibdichte verdoppelt wird, sind bei entsprechender Beschaltung anstatt 9,10 Sektoren 18,20 Sektoren auf einer Spur unterzubringen. Da diese gr”žere Anzahl von Sektoren auch mit der normalen Formatierroutine (bei Wahl eines gr”žeren Buffers) erzeugt werden kann, ist auch hier die Datensicherheit gew„hrleistet. - Ein paar Worte zu den 15/16 Sektor-Formaten: Diese sind eigentlich nur fr 5 1/4 Zoll HD-Laufwerke gedacht, da diese mit 360 U/min statt mit 300 U/min wie alle anderen Laufwerke laufen. Daraus folgt, daž bei gleicher Datendichten (500 KB/sec) weniger Bytes auf eine Spur passen. Da diese Laufwerke auch 360 KB Disketten verwenden k”nnen, liegt der Schluž nahe, das der Antriebsmotor mit 300 und mit 360 U/min laufen kann. Bei HD-Disketten passen auf jeden Fall maximal 16 Sektoren auf eine Spur, wobei MSDOS bei seinem 1.2 MB Format wieder 1 Sektor weniger als m”glich verwendet. Ansonsten verh„lt sich das 15/16 Sektor-Format genauso wie das 18/20 Sektor-Format. - Programm l„uft auch als Accessory (einfach umbenennen). - Da die Kn”pfe erst beim Programmlauf ausgewertet werden, kann sich jeder (der mit einem RCS umgehen kann) seine eigene Standarteinstellung herstellen und muž dann nur noch Return drcken zum Formatieren. Aber bitte nicht die Objektstruktur durcheinanderbringen!!! - Erzeugung voll MSDOS-tauglicher Formate bei 9,15 oder 18 Sektoren. Falls der Knopf "MSDOS" aktiviert wurde, versucht HD-FORMAT eine MSDOS Kompatible Diskette zu erstellen. Da MSDOS jedoch sehr sparsam in der Auswertung der Bootsektor-Daten ist, kann es auch nur einige (wenige) Formate mit Sicherheit erkennen. Dies ist auch der Hauptgrund, warum so viele MSDOS-Kompatible TOS-Disketten doch nicht kompatibel sind. MSDOS erkennt n„mlich nur 40/9/1, 40/9/2, 80/9/1, 80/9/2, 80/15/2 und 80/18/2, wobei jedoch von festen Parametern ausgegangen wird, die in HD-FORMAT in einer Tabelle festgehalten sind. Falls die eingestellte Konfiguration nicht in der Tabelle gefunden wurde, werden Standardwerte verwendet, wonach die Diskette natrlich nicht MSDOS-Kompatibel ist. Im Bootsektor wird sowohl das Mediabyte richtig, als auch der 80x86-Branch eingetragen. Aužerdem wird das Mediabyte in den Anfang der FATs kopiert. Die Standardwerte fr Nicht-MSDOS-Disketten sind 112 Directory-Eintr„ge, 2 Sektoren pro Cluster und Mediabyte $F0. - in Medium- und Hires lauff„hig. Dies hat den enormen Vorteil, daž nach dem Accessory-Boot die Seekrate fr beide Laufwerke direkt richtig steht (auch wenn das ACC noch nicht aufgerufen wurde). Dies ist ja bei HD-Disketten wichtig, da hier die Seekrate auf 6 ms stehen muž. - Das Programm versucht beim Starten einen ausfhrbaren Bootsektor mit genau 512 Bytes L„nge einzuladen, der nach dem Formatieren oder bei Softformat auf die Diskette geschrieben wird. Wie das Ganze funktioniert, ist in den beiliegenden Assembler-Sourcen beschrieben. In diesen Bootsektor kann man so sch”ne Sachen wie 50/60 Hz Umschaltung oder eine Stepratenverstellung (siehe Beispielprogramm) vornehmen. - gesonderte Stepraten-Einstellung fr Laufwerke A und B. Nach dem Start werden in Akt die aktuellen Stepraten ausgegeben. Durch Bet„tigung der nebenstehenden Tasten, k”nnen diese beliebig ge„ndert werden. Die gerade Aktuellen Werte k”nnen mit der Stellung der restlichen Tasten in eine Datei "HDFORMAT.INF", die beim Programmstart automatisch geladen wird, abgespeichert werden. Das Ganze bernimmt die Taste "SPEICHERN". Falls HD_FORMAT als Accessory verwendet wird, kann nun beim Bootvorgang direkt ohne Aufruf von HD-FORMAT die Steprate richtig eingestellt werden. Diese automatische Umstellung erfogt jedoch nur bei aktivierter Taste "SET SEEK". - Da es „lteren Versionen immer Schwierigkeiten mit der Steprate gegeben hat, wird beim Formatieren automatisch auf 12 ms Seekrate umgeschaltet. Aužerdem fhrt eine kleine Maschinenroutine den Befehl "RESTORE" aus, der den Kopf garantiert auf Spur 0 setzt. - Die Steprate wird bei allen offiziellen TOS-Versionen richtig gesetzt. - Die INF bzw BOO-Datei wird immer im gleichen Ordner wie das Resource gesucht. D.h. sowohl das RSC als auch die Hilfsdateien k”nnen auf der Hauptebene der Partition oder auf C:\ liegen, obwohl das Programm wo anders liegt. Da aber leider bei TOS 1.4 die shelfind Routine nicht richtig funktioniert, muž der Atari-Patch verwendet werden. - Bei FORMAT und SOFTFORMAT werden nun in der Alert-Box die freien Bytes der Diskette angezeigt. Dies gilt jedoch nur bei TOS-Formatierung. Probleme: ========= - Die Erzeugung von schnellen Disketten ist unter TOS 1.0 nicht m”glich, da keine M”glichkeit zur Spiralisierung besteht, also wird unter diesem Betriebssystem normal formatiert. Der schwerwiegendere Punkt ist die Tatsache, daž das Betriebssystem beim 18-Sektor (HD) Format nicht genug Fllbytes ans Ende einer Spur speichert. Das hat zur Folge, daž bei nicht gel”schtem Spur-Buffer Datenmll mit auf die Spur gespeichert wird. Die sicherste M”glichkeit w„re sicherlich ein Patch im Betriebsystem, aber da im HD-Format der Buffer vorher mit den entsprechenden Lckenbytes aufgefllt wird, ist damit das Problem gel”st. - Die Erzeugung des Diskettennames geschieht mit normalen Fcreate, damit ergeben sich Probleme beim RAMTOS 1.4 (nicht offiziell) Anleitung: ========== Da sich das Programm eigentlich von selbst erkl„rt, nur noch ein paar Worte. Die Formatierung kann jederzeit mit ALTERNATE abgebrochen werden. Softformat sagt nicht anderes, daž nicht physikalisch alle Tracks formatiert werden, sondern nur der Bootsektor, die FATs und das Directory neu aufgebaut werden. Die Diskette wird somit gel”scht. Hierbei ist natrlich zu beachten, daž die Parameter fr Sektoren, Seiten und Spuren mit der alten Formatierung bereinstimmen mssen, sonst gibt es Datenmll. Es ist jedoch z.B. m”glich eine 10 Sektor formatierte Disk mit 9 Sektoren soft- zu formatieren. Ist aber nicht empfehlenswert, da dann nicht mehr die optimalen Interleave und Spiralisierungsfaktoren gegeben sind. Und noch was: Wie w„rs, wenn sich die User vom HD-FORMAT mal kurz melden, damit ich weiž, daž ich das Programm nicht fr mich alleine geschrieben habe...