Informationen zum Programm FLOP_FIX.PRG
***************************************

FLOP_FIX.PRG ist ein Fehlerkorrekturprogramm fr die leider 
sehr reichlich vorkommenden Fehler in den BIOS-
Diskettenroutinen des TOS2.06, 3.06, 4.01, 4.02 und 4.04.

!!!Im TOS4.00 sind diese Fehler auch vorhanden, aber diese Version habe ich 
nicht, konnte sie also auch nicht bercksichtigen.!!! Ein TOS4.03 existiert 
wohl nicht.

FLOP_FIX.PRG ist Freeware. Es darf von jedermann/frau, aber nur 
zusammen mit diesem Informationstext FLOP_FIX.TXT, kopiert und 
weitergegeben werden. Die Ablage in Mailboxen ist ebenso wie die 
bersetzung in andere Sprachen ausdrcklich erwnscht.

Der Autor hat das Programm sorgfltig auf Korrektheit 
berprft, haftet aber in keiner Weise fr etwa auftretende 
Datenverluste oder Schdigungen bei der Nutzung dieses 
Programms oder des Infotextes. Der Anwender trgt also das 
volle Risiko der Nutzung oder Nichtbenutzung dieses 
Patchprogramms selbst.

Bitte lesen Sie diese Datei bis zum Ende, sonst entgeht Ihnen 
mglicherweise etwas.


Bedienung
*********

Praktischerweise packt man FLOP_FIX.PRG (mglichst als erstes 
Programm) in den AUTO-Ordner. Es installiert sich nur, wenn es 
eine der im ersten Satz dieser Anleitung genannten TOS-Versionen 
findet und belegt dann etwas mehr als 1 KByte Speicher. Es 
ist dabei egal, ob es sich um ein TOS im ROM oder um ein 
reloziertes TOS im RAM handelt. Sowohl bei Installation als auch 
bei Nichtinstallation wird eine entsprechende Meldung ausgegeben. 
FLOP_FIX mu vor allen Programmen gestartet werden, die den 
XBIOS-Vektor (trap#14) verbiegen. Sonst erfolgt nur ein 
entsprechender Hinweis. Alle Meldungen sind in Englisch gehalten, 
aber allgemeinverstndlich. FLOP_FIX kann auch vom Desktop aus 
gestartet werden. Eine mehrfache Installation schadet ebenfalls 
nicht, kostet nur jeweils etwas mehr als 1 KByte Speicher.

Aus gegebenem Anla mchte ich hier noch einmal darauf 
hinweisen, das eine einwandfreie Arbeit des Betriebsystems nur 
gewhrleistet ist, wenn in mindestens einem AUTO-Ordner-
Programm und in mindestens einem Accessory das Fastload-Bit 
nicht gesetzt ist. Zweckmigerweise wird dieses Bit im jeweils 
ersten Programm nicht gesetzt. In FLOP_FIX.PRG ist es nicht 
gesetzt. Wer es unbedingt setzt, darf sich ber die Folgen 
nicht beschweren (bei TOS1.04 kann es Bomben geben).


Interna
*******

FLOP_FIX hngt sich in den hdv_bpb und den hdv_rw Vektor mit der 
XBRA-Kennung T206 ein und ersetzt die Floppy-Getbpb-Routine des 
TOS vollstndig sowie die Rwabs-Routine teilweise. Obwohl 
FLOP_FIX den XBIOS-Vektor testet, weil es ihn whrend der 
Installation braucht, verndert es ihn nicht.


Die (beseitigten) vier Fehler
*****************************

TOS2.06/3.06/4.0x berechnet von den ersten 6 Sektoren einer 
Diskette eine Prfsumme, um die Diskettenwechselerkennung 
sicherer zu machen. Leider wird dabei an zwei Stellen nicht 
zwischen Laufwerk A und B unterschieden. Dieser Fehler macht sich 
nur bemerkbar, wenn man ein Disklaufwerk B besitzt, z.B. so: eine 
lange Datei von einer schreibgeschtzten Disk in Laufwerk B vom 
Desktop aus anzeigen lassen, wenn die Floppy dann das zweite Mal 
anluft um die nchste Portion Text zu laden, gibt es nur die 
Meldung -LESEFEHLER- (hier wird ein Diskwechsel erkannt, der 
nicht stattgefunden hat).

TOS2.06/3.06/4.0x kann prinzipiell Medien mit nur einer FAT 
bearbeiten (das GEMDOS arbeitet hier korrekt). Dazu mu in den 
Flags (Offset $10) im BiosParameterBlock das Bit 1 auf 1 stehen. 
Die Floppy-Getbpb-Routine setzt zwar dieses Bit, liefert jedoch 
hinsichtlich der Sektoraufteilung der Diskette falsche Werte. 
Dieser Fehler macht sich also nur bemerkbar, wenn man Disketten 
verwendet, die mit nur einer FAT formatiert wurden. Normalerweise 
haben Disks zwei FATs.

Auerdem fehlt in der Rwabs-Routine noch eine Abbruchbedingung 
beim Neuberechnen der Sektorprfsummen fr die Sektoren 0 bis 
5. Wenn man mehr als einen Sektor mit Rwabs bei einem 
Startsektor von 0 bis 5 schreibt, knnen eventuell VDI-
Informationen ber die Schriftart, Schriftgre und den 
Zeichensatz berschrieben werden. Das ergibt ein recht 
merkwrdiges Desktopbild. Aufgrund des erstgenannten Fehlers 
macht sich dieser Fehler nur bei Disketten mit mindestens 13 
Sektoren pro Spur bemerkbar. Das Gemdos selbst lst diesen 
Fehler aber wohl nie aus.


Historie
********

Es existiert ein Programm PATCHX06.PRG von mir, das nur fr 
TOS2.06 und TOS3.06 vorgesehen ist. FLOP_FIX enthlt keine 
funktionalen nderungen, ist nur auf TOS4.0x erweitert.


ED-Disketten
************

FLOP_FIX.PRG ermglicht auch die richtige Verarbeitung von 
ED-Disketten (2.88MByte) sowohl mit 12Bit-FAT (so eine Disk hat 
mindestens 2 Sektoren pro Cluster) als auch mit 16Bit-FAT (diese 
Disks haben 1 Sektor pro Cluster). Die Unterscheidung der beiden 
FAT-Gren erfolgt analog zu MSDOS anhand der Anzahl der 
Datencluster. Bis einschlielich 4078 Datenclustern wird von 
einer 12Bit-FAT ausgegangen. Ab 4079 Datenclustern wird eine 
16Bit-FAT verwendet. Rechenhinweis: Die Umschaltung erfolgt nicht 
erst bei >4096 Clustern, da einige Clusternummern intern fr 
Markierungszwecke verwendet werden ($FF0-$FFF) bzw. nicht nutzbar 
sind ($000, $001).


Der Autor
*********

Ich bin Student und betreibe die Computerei neben dem Studium. 
Ich hoffe, da ich dieses Patchprogramm in Zukunft nicht 
weiterentwickeln mu, da Atari die Fehler im inoffiziellen 
Beta-Test-TOS4.92 beseitigt hat.

Hier gebe ich nur meine Adresse an. Wer unbedingt die 
Telefonnummer braucht, findet sie im Telefonbuch. Sollte aber 
jemand auerhalb der Zeit von 07.00 bis 21.00 Uhr (MEZ bzw. MESZ) 
anrufen, macht er sich extrem unbeliebt. Ich mchte mich an 
dieser Stelle bei allen bedanken, die die Weiterentwicklung 
dieses Patches untersttzten.

Berlin, 28.08.1992

Harun Scheutzow
Dresdener Strae 83
D-10179 Berlin

oder per EMail
im Mausnetz: Harun Scheutzow @B
aus Internet: Harun_Scheutzow@B.maus.de

