MiST & Atari-8-Bit-Core
Das wird jetzt fast ein wenig atarilastig, deswegen setze ich mal diese Überschrift.
[...] Beispielsweise zeigt die
Turrican-Demos (oder vielmehr Proof-of-Concept oder Engine-Demo) wieder ein anderes Bild. [...]
Ich bin ja nun nicht in der Atari-Szene aktiv (ganz bewusst nicht, manchmal ist das echt *brrr*), deswegen kannte ich die Demo nicht. Aber ich bin doch so fit auf der Kiste, dass ich dazu noch etwas sagen kann. Das ist höchstwahrscheinlich der HighRes-Modus auf dem Atari (vermutlich »Antic Mode 0«). In diesem Modus gibt es nur zwei Farbe, bzw. eigentlich nur eine Farbe mit zwei Weißabstufungen. Der wird eigentlich als Text-Modus verwendet, aber zum Beispiel auch das erste Ultima verwendet diesen Grafikmodus zur Darstellung der Grafik. Jetzt kommt's: Diese Farben, die Du dort siehst, kommen eigentlich durch Unzulänglichkeiten der Video-Modulation zustande. Wenn man beim Atari im HighRes-Modus horizontal eine hellen, einen dunklen und wieder einen hellen Punkt nebeneinander setzt, dann ist die entstehende Frequenz schon im Bereich der Modulationsfrequenz. Dadurch entstehen aber wieder Farbabstufungen, und zwar je nachdem, in welcher Reihenfolge man die Punkte setzt. Richtig ausnutzen kann man das aber eigentlich nur bei NTSC (dort gibt dass dann purpurne und hellblaue Farben). Bei PAL ist der Effekt schwächer, erinnert aber an das, was man da in dem Video sieht.
[...] Allerdings gibt es hier den Trick, dass der Zeichensatz nur 7 Bit für die Auswahl des darzustellenden Zeichens verwendet. Mit dem achten Bit kann man noch einmal eine Farbe umschalten. Dadurch bekommt man 5 Farben auf den Bildschirm. Allerdings ist diese Farbe für alle Zeichen auf dem Bildschirm gleich.
Wird hierdurch die Auswahl auf 128 Zeichen beeschränkt?
Ganz genau. Einer der vielen Einschränkungen des Atari.
Es gibt beim Atari-Computer dann noch den sogenannten »Display List Interrupt«, mit dem man abhängig von der vertikalen Position auf dem Bildschirm alles mögliche verbiegen kann (was die Hardware eben so hergibt). Und natürlich kann man auch die Farben verändern. Deswegen schaffen es einige Spiele viele Farben auf den Bildschirm zu zaubern. Aber eben nur vertikal, weil diese per DLI umgeschaltet werden.
Ist das wirklich eine Liste? Das klingt ja dann nach einem einfacheren Handling im Vergleich zu den Rasterzeilen-Interrupts. Aber um das beurteilen zu können, müsste ich mich mit der Atari-Hardware befassen.
Das ist eine wirkliche echte richtige Liste, die sogar Sprungbefehle enthält. Nur ist die erst einmal nicht für den Interrupt da, sondern um pro Bildschirmzeile zu bestimmen, welcher Grafikmodus jetzt dargestellt werden soll. Also in etwas wie:
Schwarz [8 Scanlines]
40 Zeichen Textmodus [8 Scanlines] (ANTIC 0)
40 Zeichen Textmodus [8 Scanlines] (ANTIC 0)
40 Zeichen Textmodus [8 Scanlines] (ANTIC 0)
40 Zeichen Farbtextmodus [8 Scanlines] (ANTIC 4)
usw.
Und außerdem kann bei jedem dieser Befehle sagen, dass dieser einen Interrupt auslösen soll, wenn der ANTIC den entsprechenden Befehl abarbeitet. Damit kann wieder abhängig von der vertikalen Position auf dem Bildschirm - eben indem man den passenden Befehl in der Liste wählt - irgend etwas zeitgesteuert unternehmen. Ziemlich geile Sache.