Informationen zum Programm PATCHX06.PRG *************************************** PATCHX06.PRG ist ein Fehlerkorrekturprogramm fr die leider sehr reichlich vorkommenden Fehler in den BIOS- Diskettenroutinen des neuen TOS2.06 (TOS-Erstellungsdatum ist der 14.11.91) und TOS3.06. PATCHX06.PRG ist ab dem Erstellungsdatum 18.05.1992 fr die Allgemeinheit freigegeben. Das Erstellungsdatum ist normalerweise das Datum der Datei, wird aber von PATCHX06 beim Starten noch einmal extra ausgegeben. Versionen ab 18.05.1992 drfen von jedermann/frau, aber nur zusammen mit diesem Informationstext PATCHX06.TXT, kopiert und weitergegeben werden. Die Ablage in Mailboxen ist ebenso wie die šbersetzung in andere Sprachen ausdrcklich erwnscht. Der Autor hat das Programm sorgf„ltig auf Korrektheit berprft, haftet aber in keiner Weise fr etwa auftretende Datenverluste oder Sch„digungen bei der Nutzung dieses Programms oder des Infotextes. Der Anwender tr„gt also das volle Risiko der Nutzung oder Nichtbenutzung dieses Patchprogramms selbst. Bitte lesen Sie diese Datei bis zum Ende, sonst entgeht Ihnen m”glicherweise etwas. Bedienung ********* Praktischerweise packt man PATCHX06.PRG (m”glichst als erstes Programm) in den AUTO-Ordner. Es installiert sich nur, wenn es ein TOS2.06 oder 3.06 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. PATCHX06 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 allgemeinverst„ndlich. PATCHX06 kann auch vom Desktop aus gestartet werden. Eine mehrfache Installation schadet ebenfalls nicht, kostet nur jeweils etwas mehr als 1 KByte Speicher. PATCHX06.PRG wurde fr die deutsche Version des TOS2.06 und 3.06 entwickelt. Aus Mangel an Gelegenheit wurde es noch nicht mit anderssprachigen Versionen getestet. Es gibt aber keinen Grund, weshalb sich diese in den ersten $7000 Byte vom deutschen TOS unterscheiden sollten. Nur dann wrde das Programm nicht laufen, also abstrzen. Aus gegebenem Anlaž m”chte ich hier noch einmal darauf hinweisen, das eine einwandfreie Arbeit des Betriebsystems nur gew„hrleistet ist, wenn in mindestens einem AUTO-Ordner- Programm und in mindestens einem Accessory das Fastload-Bit nicht gesetzt ist. Zweckm„žigerweise wird dieses Bit im jeweils ersten Programm nicht gesetzt. In PATCHX06.PRG ist es nicht gesetzt. Wer es unbedingt setzt, darf sich ber die Folgen nicht beschweren (bei TOS1.04 kann es Bomben geben). Interna ******* PATCHX06 h„ngt sich in den hdv_bpb und den hdv_rw Vektor mit der XBRA-Kennung T206 ein und ersetzt die Floppy-Getbpb-Routine des TOS vollst„ndig sowie die Rwabs-Routine teilweise. Die Kennung T206 wird auch beim TOS3.06 verwendet. Obwohl PATCHX06 den XBIOS-Vektor testet, weil es ihn w„hrend der Installation braucht, ver„ndert es ihn nicht. Die (beseitigten) vier Fehler ***************************** TOS2.06/3.06 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 anl„uft um die n„chste Portion Text zu laden, gibt es nur die Meldung -LESEFEHLER- (hier wird ein Diskwechsel erkannt, der nicht stattgefunden hat). TOS2.06/3.06 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. Aužerdem 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, k”nnen eventuell VDI- Informationen ber die Schriftart, Schriftgr”že 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 l”st diesen Fehler aber wohl nie aus. Historie ******** Es existiert ein Programm PATCH206.PRG von mir, das ebenfalls korrekt l„uft. Dies tut es aber ohne Vorwarnung oder šberprfung nur auf Computern, bei denen das TOS2.06 im ROM und nicht im RAM ist. Sollte Ihr PATCHX06.PRG als Erstellungdatum den 17.05.1992 zeigen, dann haben Sie eine Version, die nicht in Umlauf sein sollte. Diese Version strzt mit dem TOS3.06 auf dem TT h”chstwahrscheinlich belst ab. Bitte kopieren Sie diese nicht weiter und besorgen sich eine neue. Neuigkeiten *********** Ab dem Erstellungsdatum 08.08.1992 erm”glicht PATCHX06.PRG nun 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-Gr”žen erfolgt analog zu MSDOS anhand der Anzahl der Datencluster. Bis einschliežlich 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). Alte Versionen des PATCHX06.PRG (vor dem 08.08.1992) sind davon ausgegangen, ab 4096 Sektoren auf der Disk eine 16Bit-FAT vorzufinden. Damit konnten zwar MSDOS-ED-Disks bearbeitet werden, aber keine TOS-ED-Disks, deren Bootsektor von der Funktion Protobt (XBIOS 18) erzeugt wurde, da diese nur eine 12Bit-FAT besitzen. Ausblick ******** Beim Autor gibt es ein Programm, das das TOS2.06/3.06 korrigiert und dann als Datei zum Programmieren auf EPROMs oder zum Relozieren im RAM auf Diskette speichert. Dieses Korrekturprogramm wird h”chstwahrscheinlich ebenfalls auf dem Weg zu erhalten sein, ber den Sie an PATCHX06 gekommen sind. Der Autor ********* Ich bin Student und betreibe die Computerei neben dem Studium. Fr Hinweise auf eventuelle Fehler in meinem Programm oder im TOS2.06 bin ich jederzeit dankbar, wenn sie in brieflicher Form oder als Postkarte bei mir eintreffen. Wenn jemand eine Antwort erwartet, muž er auf jeden Fall einen adressierten und frankierten Rckumschlag bzw. das Porto und 1DM beifgen. Wer keine andere M”glichkeit hat, sich PATCHX06 oder das Korrekturprogramm zu beschaffen, kann sich schriftlich direkt an mich wenden. Bitte eine Diskette, den oben erw„hnten Rckumschlag und noch 2DM als Kopiergebhr beilegen, sonst antworte ich nicht. Die Quelltexte gibt es nicht so leicht, aber sie sind erh„ltlich. Hier gebe ich nur meine Adresse an. Wer unbedingt die Telefonnummer braucht, findet sie im Telefonbuch. Sollte aber jemand aužerhalb der Zeit von 07.00 bis 21.00 Uhr (MEZ bzw. MESZ) anrufen, macht er sich extrem unbeliebt. Ich m”chte mich an dieser Stelle bei allen bedanken, die mit ihren Hinweisen die Weiterentwicklung dieses Patches untersttzen. Berlin, 08.08.1992 Harun Scheutzow Dresdener Straže 83 O-1020 Berlin oder per EMail im Mausnetz: Harun Scheutzow @B im Starnet: PGS12, #1259, Karnigool