Atarium: TOS-Probleme: Fix as fix can

Angefacht vom langen Hin und Her um TOS 1.4 und unzähligen Artikeln über tatsächliche und angebliche Fehler im Betriebssystem hat die Unsicherheit bei technisch weniger versierten Benutzern stark zugenommen. In diesem Artikel erkläre ich die Unterschiede zwischen den verschiedenen TOS-Versionen und Sinn und Zweck der verschiedenen Patch-Programme.

Fangen wir mit den unterschiedlichen TOS-Versionen an:
Die allerersten STs wurden mit TOS auf Diskette ausgeliefert. Dieses sog. RAM-TOS 1.0 wird von Atari nicht mehr »supported«, das heißt, Atari übernimmt in diesem Fall keine Garantie für das Funktionieren der eigenen Programme. Eigentlich sollten alle damals gekauften Rechner von Atari kostenlos mit TOSROMs nachgerüstet werden. Sollten Sie noch immer kein TOS im ROM haben: Gehen Sie schnurstracks zu Ihrem Händler, legen 198 Mark auf den Tisch und lassen sich TOS 1.4 in den Rechner einbauen.

Das erste TOS im ROM hat ebenfalls die Versionsnummer 1.0. Sie erkennen es am Datum »1985« in der Dialogbox, die sie auf dem Desktop unter »DESKTOP INFO« erreichen.

Mit den MEGA-STs erschien 1987 TOS 1.2 (Blitter-TOS), das sich von der alten Version nur in wenigen Punkten unterschied (Unterstützung des Blitter-Chips, Unterstützung der Hardware-Uhr). Seit etwa Ende 1987 wird dieses TOS auch in allen anderen STs ausgeliefert. Wenn Sie Ihren ST mit einer Mega-ST-kompatiblen Uhr aufrüsten (gibt es bei vielen Händlern für knapp 100 Mark), erkennt diese TOS-Version die Uhr selbständig und nutzt sie auch. »Blitter-TOS« erkennen Sie am Copyrightdatum »1987« in der DESKTOP INFO-Dialogbox.

Echte Verbesserungen gibt es erst im TOS 1.4, das Atari Mitte 1988 zum ersten Mal für Software-Entwickler zum Testen freigab, und das seit April 1989 fertig ist. Die wichtigsten Änderungen betreffen das vollständig überarbeitete GEMDOS, das vernünftiges Arbeiten mit Festplatten eigentlich erst richtig möglich macht, eine verbesserte Dateiauswahlbox, einige Änderungen am Desktop und enorm viele Detailverbesserungen, auf die hier im einzelnen nicht, eingegangen werden soll. TOS 1.4 wird mit dem Atari-Großbildschirm SM 194 und eingebaut im Stacy ausgeliefert. Seit Mai 1990 sind auch die ersten »normalen« Megas mit diesem TOS auf dem Markt. Man erkennt es am Datum »1989« in der DESKTOP INFO-Dialogbox. Wenn man einen Farbbildschirm angeschlossen hat, wird das Atari-Zeichen in dieser Dialogbox von Regenbogenfarben durchlaufen, deshalb nennt man es bei Atari auch »Rainbow-TOS«.

Seit Winter 1989 wird der 1040 STE ausgeliefert, in dem 64 KByte mehr ROM Platz finden. Atari hat diesen Platz genutzt, um Teile von GEM zu beschleunigen (für Insider: Die Line-F-Traps sind weggefallen). Außerdem wurden XBIOS und VDI auf die größere Farbpalette des Geräts angepaßt. Unterstützung für die zusätzlichen Joystickports oder den Stereo-Sound gibt es entgegen anderslautender Berichte nicht. Dieses TOS haben Sie genau dann, wenn Ihr Rechner ein STE ist.

Zukunftsmusik ist (noch) das TOS 3.0, das mit dem TT ausgeliefert werden soll. In dieser Betriebssystem-Version sind Erweiterungen für die zusätzlichen Schnittstellen (serielle, SCSI) und einiges mehr enthalten. Ausschließlich diese TOSVersionen werden offiziell von Atari unterstützt.

So weit, so gut. Solange es Betriebssysteme gibt, hat es auch Fehler gegeben. Das hat ganz und gar nichts mit der Befähigung der Programmierer bei Atari zu tun, sondern liegt einfach in der Natur der Sache (Mac-Besitzer wissen beispielsweise auch ein Lied davon zu singen).

Um Mißverständnissen vorzubeugen: Manche Probleme beim TOS sind eigentlich gar keine, sondern sind eher auf Schlampereien und schlechte Koordination zurückzuführen. Nun gibt es einige TOS-Bugs, die so berühmt sind, daß sie schon eigene Namen haben. Hier eine Übersicht darüber, auf welchen TOS-Versionen sie auftreten, und wie man sie unter Kontrolle bekommt.

Übersicht aller offiziell unterstützten TOS-Versionen
Version Name GEMDOS Datum
TOS 1.0 altes 0.19 06.02.1986
TOS 1.2 Blitter-TOS 0.19 22.04.1987
TOS 1. 4 Rainbow-TOS 0.21 06.04.1989
TOS 1.6 STE-TOS 0.21 29.07.1989
Fixprogramme und welches TOS sie brauchen
Version FOLDRxxx TOSI4FIX STEFIX VDIFIX POOLFIX3
TOS 1.0 ja! nein nein ja nein
TOS 1.2 ja! nein nein nein nein
TOS 1.4 teils ja nein ja ja
TOS 1.6 teils nein ja ja ja

Der sog. 40-Ordner-Fehler ist nach dem Effekt benannt, den er unter GEMDOS 0.19 hervorzurufen pflegt: Nach Öffnen von mehr als etwa 40 Ordnern (oder 100 beim Blitter-TOS) erscheinen plötzlich leere Verzeichnisse und das System beginnt auch ansonsten, sich merkwürdig zu benehmen. Abhilfe schafft das Programm FOLDR100, das mit den Atari-Festplatten ausgeliefert wird, und das auch jeder Händler zur Hand haben sollte.

Technischer Hintergrund: GEMDOS organisiert seinen eigenen Speicherbedarf über einen in seiner Größe zunächst festgelegten Speicherbereich, den sog. GEMDOSPool. Beim GEMDOS 0.19 kommen mehrere Probleme zusammen: Jedesmal, wenn ein Ordner geöffnet wird, verbraucht GEMDOS einen Eintrag in diesem Pool, ohne ihn beim Schließen des Ordners wieder freizugeben. Nach einiger Zeit ist aller Speicher verbraucht und Ordner werden nicht mehr korrekt geöffnet (auch einige Probleme mit der Funktion »Malloc()« sind darauf zurückzuführen). Beim Blitter-TOS hat man versucht, das Problem einfach durch einen größeren Pool in den Griff zu bekommen. Das hat den Effekt jedoch lediglich verzögert und außerdem dazu geführt, daß das freie RAM empfindlich verkleinert wurde. FOLDR100 lindert das Problem, indem es nachträglich den Pool um 100 ‘Einträge‘ erweitert (die Anzahl der zusätzlichen Einträge legt man mit dem Dateinamen fest).

Was bleibt, ist die Begrenzung der Maximalzahl von Malloc()-Aufrufen. Wenn man ein Programm benutzt, das hier Probleme bereitet (mir ist eigentlich nur der Linker von Turbo C 1.1 bekannt), sollte man ebenfalls FOLDR100 benutzen - ungeachtet der TOS-Version.

So traurig es ist: Auch TOS 1.4 hat Fehler. Zwei davon hat Atari schon sehr früh bemerkt, so daß es bereits seit der Atari-Messe 1989 das Programm TOS14FIX gibt, das diese Fehler beseitigt. Einer der beiden Fehler betrifft die Behandlung von Pfadnamen durch das AES und tritt nur unter außergewöhnlichen Bedingungen auf. Das andere Problem betrifft den nicht mehr funktionierenden RTS/CTS-Modus der seriellen Schnittstelle.

Beide Fehler sind für die meisten Anwender weniger ernster Natur. Nachdem keiner der weltweit testenden Entwickler einen der Fehler rechtzeitig gefunden hatte, wurde der Fehler durch Atari prompt beseitigt (sogar noch vor der eigentlichen Auslieferung!). Wer Atari dafür Unfähigkeit vorwirft, sollte vielleicht noch einmal überdenken, wie schwierig es ist, ein Betriebssystem zu warten und weiterzuentwickeln. TOS14 FIX brauchen Sie nur dann, wenn Sie TOS 1.4 verwenden.

Fehler im TOS 1.6 - keine Sicherheit

Im TOS 1.6 des STE sind die beiden oben genannten Fehler von TOS 1.4 natürlich beseitigt. Dummerweise hat sich dafür ein neues Manko eingeschlichen, das dazu führt, daß der Desktop sich bei ‚Arbeit sichern‘ nicht richtig merkt, ob nun in geringer oder in mittlerer Auflösung gearbeitet werden soll. Dieser Fehler (den es nur im TOS 1.6 des STE gibt) wird durch das Programm STEFIX behoben.

Dieser Schnitzer wurde erst im letzten Herbst entdeckt (siehe [2]) und tritt pikanterweise in allen TOS-Versionen bis auf das Blitter-TOS auf. Er führt dazu, daß das VDI mit seinen Workstation-Attributen durcheinanderkommt und sich die Programme gegenseitig ihre Parameter verstellen. Man erkennt das meistens daran, daß plötzlich völlig unmotiviert Zeichen im falschen Zeichensatz oder falsch positioniert ausgegeben werden. Wenn dieses Problem bei Ihnen auftritt, sollten Sie sich das Programm VDIFIX von Karsten Isakovic besorgen (es handelt sich also NICHT um ein offizielles Atari-Programm!).

Verwaltung des GEMDOS-Pools

Dieses Problem ist eng mit dem »40-Ordner-Problem« verbunden. TOS 1.4 und TOS 1.6 verwalten den GEMDOS-Pool intelligenter; dazu gehört unter anderem die automatische Reorganisation dieses Speichers. Letztere geht dummerweise unter sehr selten auftretenden Umständen in die Hose: TOS meldet sich dann mit ‚OUT OF INTERNAL MEMORY, USE FOLDR100 TO GET MORE, SYSTEM HALTED‘. Dieser Fehler wird durch das Programm POOLFIX3 beseitigt (das im übrigen selbst feststellt, ob man es braucht oder nicht).

Fazit: TOS 1.4 bzw. TOS 1.6 sind zwar weder perfekt noch fehlerfrei, stellen aber riesige Fortschritte dar und machen den ST in manchen Bereichen (Performance der Festplatte) erst richtig brauchbar. Die kleinen Fehler in den aktuellen TOS-Versionen sind mit den vorhandenen Fix-Programmen leicht auszubügeln. Wer unbedingt Wert darauf legt, kann die Fehler natürlich direkt im TOS beseitigen und EPROMS in seinem Rechner installieren.

Atari weigert sich jedoch, offiziell irgendwelche anderen als die ursprünglichen TOS-Versionen zu unterstützen. Das heißt: Wer selbst Änderungen am Betriebssystem vornimmt, muß damit rechnen, bei auftretenden Problemen ohne Hilfe dazustehen. (mb) Quellennachweis:
[1] Julian F. Reschke, »Vorhang auf für die Keksdose«, ST-Magazin 3/1990, Seite 62
[2] Julian F. Reschke, »Zum 25. Mal: unser Atarium«, ST-Magazin 1/1990, Seite 56
[3] Atari Corporation, »STE TOS Release Notes«, 12.01.1990

Berichtigung zum Heft 3/1990, Seite 62 ([1])
Atari hat in den STE-Release Notes ([3]) vom 12. Januar 1990 die Dokumentation des _MCH-Cookies geändert. Die einzelnen Werte (des oberen Wortes) haben jetzt die folgende Bedeutung:
0: 260ST, 520ST, 1040ST, Mega ST (oder ähnliche Geräte)
1: STE
2: TT


Julian F. Reschke
Aus: ST-Magazin 07 / 1990, Seite 107

Links

Copyright-Bestimmungen: siehe Über diese Seite