Reise zum Mittelpunkt des TT


Man hätte die Überschrift dieses Artikels übrigens auch ohne Probleme “Die Abenteuer einer langen, schlaflosen Nacht mit einem Maschinenmonitor und TOS030” nennen können, doch das erschien mir zu lang, so entschied ich mich für einen leicht verfremdeten Romantitel Jules Vernes. Aber bevor ich nun tiefer in die Geheimnisse des TT eindringe, noch ein paar Worte zur Einleitung.

Der ATARI TT wurde Ende August gleichzeitig auf der ATARI-Messe in Düsseldorf und auf einer Pressekonferenz in den USA der Fachwelt präsentiert. Dies zeigt eigentlich schon, welche Bedeutung ATARI Europa und speziell diesem unserem Land entgegenbringt. Blickt man in die Vergangenheit zurück, kann man feststellen, daß auch der 260 ST schon vor seiner Markteinführung erst einmal in Deutschland vorgetestet wurde. Doch wir schweifen ab. Der TT wurde am 24. August auf der ATARI-Pressekonferenz zum erstenmal in seinem neuen Design vorgestellt und am nächsten Tag den gespannten Messebesuchern präsentiert. Er sorgte dort für einiges Aufsehen (auch wenn böse Stimmen behaupten, das läge eigentlich nur am eigenwilligen Design).

Während ich mich nun so durch die Menge zwängte, stieß ich geradewegs mit zwei nicht ganz unbekannten Herren zusammen, Leonard Tramiel, seines Zeichens Sohn von Jack Tramiel und bei ATARI USA für die Software zuständig, und Richard Miller (Entwicklung bei ATARI USA, vormals maßgeblich an der Entwicklung des ATWs beteiligt). Die beiden waren so freundlich, mir einige Fragen zu beantworten. Das zweite Mal sah ich den TT einen Monat später auf der Personal Computer Show (PCS) in London. Diesmal war aber kein höherer ATARI-Repräsentant aus den USA aufzutreiben. Interessant ist auch, daß beidesmal, in Düsseldorf wie in London, der TT erst einen Tag vor der Messeeröffnung ankam, was doch auf einen gewissen Mangel an Geräten schließen läßt und leider auch noch zur Folge hatte, daß die örtlichen ATARI-Angestellten nicht gerade mit Informationen über den TT glänzten.

Ein Blick in die Innereien

Aber genug geplaudert, werfen wir mal einen Blick in den TT. Das Herz des TTs ist ein Motorola 68030-Prozessor, der mit 16 MHz getaktet wird. Man könnte daraus schließen, daß der TT zweimal so schnell wie ein gewöhnlicher ST ist. Doch man darf nicht außer acht lassen, daß der 68030 dank seiner beiden integrierten 256 Byte-Caches wesentlich effizienter als der 68000 arbeitet und daß das Betriebssystem des TTs (TOS030) auch noch einiges bringt. Für Freunde arithmetischer Berechnungen bietet der TT zusätzlich noch einen Steckplatz für einen optionalen 68881- oder 68882-Coprozessor.

Standardmäßig wird der TT mit zwei Megabyte geliefert, kann aber intern auf vier oder maximal acht Megabyte aufgerüstet werden. Sollten 4-Megabit-Chips in Mode kommen, kann man ihn sogar auf 26 Megabyte erweitern, für Grafikanwendungen geradezu ein Traum, aber sicherlich nicht ganz billig!

Die Sound-Möglichkeiten des TTs entsprechen denen des STEs, also der altvertraute Yamaha-Soundchip und ein PCM-Generator, mit dem man digitalisierte Sounds parallel zu Programmen Stereo abspielen kann. Auf der Rückseite des TTs findet man zwei Buchsen, an denen das Stereosignal herausgeführt ist. Zusätzlich verfügt der TT über diverse Filter und digitale Effekte. Der Lautsprecher ist nicht mehr im Monitor untergebracht, sondern findet seinen Platz jetzt im Gehäuse des TT.

Andere Ausgänge des TTs sind eine zusätzliche serielle Schnittstelle, ein SCSI-Port und ein neuer Netzwerkanschluß. Der SCSI-Port dürfte von vielen Anwender begrüßt werden, da hier endlich einmal die Möglichkeit gegeben ist, ganz gewöhnliche Festplatten (z.B. von PCs) ohne zusätzliches Interface anzuschließen. Doch auch Besitzer einer ATARI-Festplatte (deren ACSI-Schnittstelle ist ein abgespeckter SCSI-Port) haben weiterhin die Möglichkeit, ihre gewohnten Festplatten über einen DMA-Port anzuschließen.

TOS030

Das neue TT-TOS (nein, ich stottere nicht!) ist jetzt 256 kByte groß und liegt genau wie das STE-TOS bei $E00000. Es hat sich also im Gegensatz zu den übrigen STs verschoben. Weiterhin sind die 256 kByte noch einmal bei $E40000 zu finden, was auf eine einfache Erweiterungsmöglichkeit auf ein 512 kByte-Betriebssystem schließen läßt (von der Hardware her gesehen).

Zusätzlich zu den drei gewohnten ST-Auflösungen (hoch, mittel und niedrig) gibt es drei neue Modi. ATARI nennt sie einfach: 640480, 1280960 und 320*480. Aber ich denke, sie werden sich viel eher als TT-mittlere, TT-hohe und TT-niedrige Auflösung etablieren.

In der niedrigen Auflösung des TTs lassen sich auf einem 320480 Pixel-Bildschirm 256 Farben aus einer Palette von 4096 Farben darstellen. Die mittlere Auflösung (640480) verfügt dann nur noch über 16 aus 4096 Farben, was dem STE entspricht. Zuletzt bleibt noch die hohe Auflösung (1280*960), die genau wie beim ST monochrom ist.

Alle Auflösungen mit Ausnahme der hohen kann man auf dem neuen ATARI-Farbmonitor darstellen. Für den Monochrommodus ist ein zusätzlicher Monitor erforderlich. Allerdings war der TT auf beiden Messen nur mit einem Farbmonitor zu sehen.

Wenn man sich den letzten Absatz noch einmal genau vergegenwärtigt, wird einem auffallen, daß sich die bisherige hohe Auflösung des STs (640*400) auf dem neuen Farbmonitor darstellen läßt. Das hat zur Folge, daß fortan ST-Programme auf dem TT nicht mehr nur in Schwarzweiß, sondern auch z.B. in Grüngelb an-sehen kann, da zwei beliebige Farben aus der Palette des TTs genommen werden können. Will also jemand in altgewohnter PC-Manier einen Grün- oder Bernstein-Monitor haben, nur zu.

ATARI selbst nennt diesen Modus im Gegensatz zu dem bisherigen monochromen duochrom, also zweifarbig. Ich bin eigentlich der Meinung, man sollte ihn lieber stereochrom (Stereo <-> mono) nennen oder alternativ den ST-Modus in unichrom (uni <-> duo) umbenennen. Allerdings könnte man dies noch weiterspinnen und bei mehr als zwei Farben von einem polychromen Modus sprechen...

Zu den bisherigen ST-Fähigkeiten kommt beim TT ein Hardware-Scrolling in vertikaler und horizontaler Richtung. Dies wurde durch ein neues Register erreicht. Ein Bildschirm ist jetzt aufgrund der neuen Auflösungen 153600 Bytes groß (bisher 32000 Bytes). Die relevanten Register liegen bei:

$FF8201 - Highbyte der Bildschirmadresse (wie beim ST)
$FF8203 - Mediumbyte der Bildschirmadresse (wie beim ST)
$FF820D - Lowbyte der Bildschirmadresse (neues TT-Register)

Das alleine ergibt noch kein Hardware-Scrolling, aber bewirkt, daß die Bildschirmadresse nicht auf eine $100-Byte-Grenze festgelegt ist.

Das Auflösungsregister hat sich ebenfalls verändert und verschoben. Es liegt beim TT bei $FF8262 - W. Das erste byte-große Register, das an obiger Adresse liegt, beinhaltet in den drei Lowbits (im Gegensatz zu zwei Bits beim ST) zum Einschalten der neuen Auflösungsmodi:

0 - ST niedrig, 320200, 4 Planes, 16 Farben
1 - ST mittel, 640
200, 2 Planes, 4 Farben
2 - ST hoch, 640400, 1 Plane, zwei Farben
4 - TT mittel, 640
480, 4 Planes, 16 Farben
6 - TT hoch, 1280960, 1 Plane, 2 Farben
7 - TT niedrig, 320
480, 8 Planes, 256 Farben

Wenn wir gerade über Farben sprechen, sei erwähnt, daß das Handling der Farben auf dem TT anders als auf dem ST ist. Zuerst einmal hat sich, wie sollte es auch anders sein, die Adresse der Farbpalette geändert, die natürlich kräftig expandierte. Irgendwomit müssen 256 Farben ja verwaltet werden. Die Adresse liegt bei:

	$FF8400 - 256 W

Die RGB (Rot-Grün-Blau)-Farbkomponenten lassen sich wie beim STE zwischen 0 und 15 einstellen. Auch die Farbpalette wurde wie beim STE um ein viertes Bit für jede Farbe erweitert, wodurch unsauber programmierte ST-Programme Schwierigkeiten bekommen können.


Bild 2: Der Prozessor-Cache des 68030 läßt sich im Option-Menü abschalten.

Weiche Waren

Was die Software anbelangt, ähnelt TOS030 in manchen Dingen dem TOS 1.6, das seinen Platz im ATARI STE findet und auch nur auf diesem läuft (also nicht gleich versuchen, TOS 1.6 in einen normalen ST einzubauen).

ATARI behauptet, der TT sei software-kompatibel zum ST. Ob das hunderprozentig zutrifft, sei noch dahingestellt. Ein sauber programmiertes GEM-Programm, das ich gerade fertiggestellt habe, hatte zumindest Probleme mit Line-A-Zugriffen. Andererseits hat ein Maschinensprachenmonitor, der wirklich unsauber programmiert ist (undokumentierte Adressen usw.), überhaupt keine Probleme gezeigt. Man muß allerdings auch fair sein und erwähnen, daß die Version des TOS030, die auf den Messen zu sehen war, mit Sicherheit nicht die endgültige war.

Das TT-TOS ist, wie bereits oben gesagt, 256 kByte groß, aber über 32 kByte sind derzeit noch unbenutzt. Der Speicherbereich $E262DC bis $E3FFFF ist noch jungfräuliches ROM und wartet auf zusätzliche neue TOS-Routinen. Man könnte ja z.B. GDOS gleich im ROM installieren, anstatt es von Diskette laden zu müssen. Das wurde bis jetzt immer wegen Platzmangel im ROM abgelehnt.

Im Option-Menü des Desktops kann man beim TT bestimmen, ob der Cache-Speicher (256 Bytes) des 68030-Prozessors genutzt werden soll (s. Bild 2), da wohl nicht alle ST-Programme mit diesem Cache laufen werden. Mit Cache erlangt der TT natürlich einen enormen Geschwindigkeitszuwachs. Auch die Preferences-Box zeigt sich mit neuen zusätzlichen Buttons, mit denen die Auflösungen umgeschaltet werden können (s. Bild 3). Der Bildschirmaufbau und das Zeichnen der Fenster sind auch deutlich schneller geworden. Das wurde zum einen durch den schnelleren Prozessor, zum anderen aber auch durch TOS030 erreicht. Genau wie die Versionen ab TOS 1.4 verfügt das TT-TOS über einen software-mäßigen Cache für Laufwerkszugriffe.

Unter der hohen TT -Auflösung steht übrigens neben den vier gewohnten Systemzeichensätzen eine neue vierte Größe zur Verfügung. Dieser Zeichensatz hat eine Matrix von 1632 und ist wie gesagt nur unter der Auflösung 1280960 auf einem geeigneten Monitor darzustellen.

Viele der “neuen” Features des Desktops (Verschieben von Programmen. MS-DOS-Disketten-Kompatibilität usw.) stehen einem bereits ab TOS 1.4 auf dem ST zur Verfügung und sollen deshalb hier nicht weiter besprochen werden. Ich will nur auf das Starten von GEM-Programmen aus dem Auto-Ordner eingehen, da das zwar auch TOS 1.4 schon kann, es aber in der ST-Computer noch nicht näher besprochen wurde.

Dazu begeben wir uns in das Menü Anwendung anmelden (Install Application, s, Bild 4). Hier finden sich zwei Buttons: Normal und Auto. Der Normal-Button dient wie bisher zum Anmelden einer bestimmten Extension für Programme (z.B. DOC für Wordplus). Der Auto-Button ist ab TOS 1.4 neu. Er dient zum Autostart von GEM-Programmen. Dazu muß in der DESKTOP.INF-Datei ein neuer Eintrag vorgenommen werden. Am einfachsten geht dies nach der Anmeldung der Anwendung über den Menüeintrag Arbeit sichern. Das sieht dann z.B. folgendermaßen aus:

	Z 01 A:/NAME.PRG

Nach einem Reset wird das Programm dann automatisch gestartet. Die Parameter hinter dem ‘Z’ besagen folgendes:

Z 00 - Autostart eines TOS- oder TTP-Programmes
Z 01 - Autostart eines PRG- oder APP-Programmes

Dahinter folgt der vollständige Pfadname.

Interna


Bild 3: Die Preferences-Dialogbox mit den neuen Auflösungen des TT

Damit genug fürs Auge und die Maus, wenden wir uns den Geheimnissen des TOS zu. Die meisten Änderungen in den ROM-Routinen haben mit den neuen Bildschirmmodi zu tun. Das gesamte Betriebssystem macht auf den ersten Blick einen besseren Eindruck. Alle Tabellen und der Großteil der Daten und Konstanten liegen jetzt am Ende des TOS.

Auf meiner Reise mit dem Maschinensprachemonitor mußte ich feststellen, daß das BIOS im großen und ganzen dasselbe geblieben ist, das XBIOS dagegen wurde erweitert. Es sind jetzt maximal 96 Routinen (bisher 39) vorgesehen, die aber noch nicht alle implementiert sind. Wirklich neu sind 11 Routinen, alle anderen sind nur für die Zukunft bereits eingebaut.

XBIOS 66
DMA/SCSl-Kommunikation**

Eingabe:
$A(A7)- W, DMA-/SCSI-Gerätenr.
$6(A7)- L, Pufferadresse
$4(A7) - W,???
$0(A7) - L, ???

Details zu dieser Routine sind im Moment noch nicht zu bekommen, aber es scheint, als ließe sich der DMA-Zugriff darüber steuern, ohne eigene Routinen dafür benutzen zu müssen.

XBIOS 80
Set Screen Mode/Resolution

Eingabe: $0(A7) - W, neuer Bildschirmmodus (inkl. Auflösung)
Rückgabe: DO - W, alter Bildschirmmodus

Diese Funktion wechselt den aktuellen Bildschirmmodus. Im Gegensatz zur bisherigen Routine werden alle relevanten GEM-Variablen mitinitialisiert, ohne daß wie bisher ein Reset erfolgen muß.

XBIOS 81
Get Current Screen Mode and Resolution

Rückgabe: DO - W, akt. Bildschirmmodus und Auflösung

Die Auflösungen auf dem TT benötigen die beiden neuen, byte-großen Register ab der Adresse $FF8262. Das erste Byte enthält in den ersten drei Bits die Auflösung und in den Bits 4-7 einige Extrainformationen. Das zweite Byte ist ein zusätzliches Register. Die Routine gibt beide Werte zurück.

XBIOS 82 Get/Set Screen Mode only (Auflösung bleibt)

Eingabe: $0(A7) - W, neuer Bildschirmmodus im Lownibble
Rückgabe: DO - W, alter Bildschirmmodus (Lownibble)

Diese Routine erlaubt die Abfrage und das Wechseln des Bildschirmmodus im Lownibble des Screen-Mode-Worts. Die aktuelle Auflösung bleibt bestehen.

XBIOS 83 Get/Set Color

Eingabe: $2(A7) - W, neuer Farbwert ($FFFF = alte Farbe)
$0(A7)- W, Farbregisternummer
Rückgabe: DO - W, alter Farbwert des angeg. Registers

Diese Routine ermöglicht die Abfrage und das Wechseln von individuellen Farben im neuen Farbregister bei Adresse $FF8400.

XBIOS 84 Set Range of Colors from Palette

Eingabe: $4(A7)- L, Farbpalettenadresse
$2(A7) - W, Anzahl der zu wechselnden Register
$0(A7) - W, Nummer des Farbregister, bei dem begonnen werden soll.

Mit dieser Routine lassen sich eine Reihe von Farbregistem wechseln. Die maximale Anzahl beträgt 256 Farben. Bedingung dafür ist aber, daß die Farben aufeinander folgen. Die Routine stoppt automatisch nach dem letzten Register.

XBIOS 85 Get Range of Colors into Palette

Eingabe: $4(A7) - L, Adresse der Palette
$2(A7) - W, Anzahl der aufeinanderfolgenden Farben, die zurückgegeben werden sollen.
$0(A7) - W, Nummer des Farbregisters, mit dem begonnen werden soll.

Hier handelt es sich um die genaue Umkehrung der Routine XBIOS 84. Man erhält eine Palette mit Farbwerten zurück, die in einer Anzahl von Farbregistern gefunden wurde.

XBIOS 86
Get/Set Bit 4 of Resolution Register

Eingabe: $0(A7) - W, Flag
negativ = aktueller Wert Bit 4
null = lösche Bit 4
positiv = setze Bit 4

Rückgabe: DO - W, Flag
null = Bit 4 war gelöscht
eins = Bit 4 war gesetzt

Mit dieser Routine läßt sich das vierte Bit des Auflösungsregisters holen und setzen. Allerdings ist mir derzeit noch nicht die Bedeutung dieses Bits klar.


Bild 4: Wie ab TOS 1.4 lassen sieh auch GEM-Programme aus dem Auto-Ordner starten.


Aus: ST-Computer 12 / 1989, Seite 37

Links

Copyright-Bestimmungen: siehe Über diese Seite