Dokumentation zum Programm VIEWXXGA ½ Guido Vollbeding, 01.06.1993 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Da hat man nun seit kurzem seinen nagelneuen Falcon, und schon geht das alte Leid wieder los: Da werden Programme und Bildformate in Umlauf gebracht, die kurzsichtigerweise nur bestimmte Falcon-Aufl”sungen untersttzen. Doch nicht nur das: Das Programm SHOWXGA, welches mir neben einigen XGA-Files in die H„nde fiel, wollte bei mir berhaupt nicht laufen. Kein Wunder: Da werden irgendwelche Manipulationen an omin”sen Hardwareregistern des Videosubsystems vorgenommen, was meinem teuren MultiSync nur flackernde "Abstrze" bescherte. Was blieb mir anderes brig, als selber ein Programm zu schreiben, um wenigstens das XGA-Bildmaterial begutachten zu k”nnen. Also hab ich mich ber die Pfingsttage mal hingesetzt und drauflosgehackt (das Wetter drauáen war eh nicht so doll). Das Ergebnis: Ein Programm, das auf _ALLEN_ Atari-Rechnern, in _ALLEN_ Aufl”sungen und mit _ALLEN_ Grafikkarten l„uft! Bei den XGA-Files handelt es sich um nichts anderes als Screendumps im 16-Bit-"True-Color"-Modus des Falcon. Leider haben es die Ersteller vers„umt, weitere wesentliche Angaben wie die Aufl”sung im File mit abzuspeichern. War dies schon bei den Screenformaten auf dem ST nicht besonders flexibel, so ist dies beim Falcon eigentlich v”llig unsinnig, weil das programmierbare Videosubsystem ja sehr viele verschiedene Aufl”sungen zul„át. Wie sollte man nun also die fr eine korrekte Darstellung n”tige Aufl”sung reproduzieren ? Die XGA-"Sch”pfer" sind dabei auf die "geniale" Idee gekommen, die Aufl”sung aus der Dateigr”áe abzuleiten. Das ist natrlich ziemlich schwachsinnig, weil nicht eindeutig. Um nun fr VIEWXXGA eindeutige Verh„ltnisse herzustellen, liest das Programm aus dem Dateinamen die Bildbreite in Pixeln ab, womit eine korrekte Darstellung m”glich ist (die H”he ergibt sich dann aus Dateigr”áe und angegebener Breite). Die Breitenzahl wird vom Ende des Dateinamens (vor ".XGA") gescannt, bis ein Zeichen auftritt, das keine Dezimalziffer ist. Wenn man XGA-Files erh„lt/ erzeugt, muá man also diese Zahl im Dateinamen erg„nzen und dazu gegebenenfalls den ursprnglichen Namen krzen. Das ist eben der Preis, den man fr das mangelhafte Format zahlen muá. Die Files bleiben so aber zumindest weiterhin fr andere XGA-Programme verwendbar, da die Dateil„nge, aus der m”glicherweise die Aufl”sung abgeleitet wird, unver„ndert bleibt. Im Folgenden einige Beispiele fr die von SHOWXGA angegebenen Zuordnungen: Aufl”sung Dateigr”áe Dateiname -------------------------------------------- 320 * 480 307200 Bytes IMAGE320.XGA 384 * 480 368640 Bytes IMAGE384.XGA 384 * 576 442368 Bytes IMAGE384.XGA 640 * 480 614400 Bytes IMAGE640.XGA 768 * 576 884736 Bytes IMAGE768.XGA Bei abweichenden Werten kann probiert werden. VIEWXXGA fhrt entsprechende Plausibilit„tschecks durch. So muá die Breite ein ganzzahliges Vielfaches von 16 sein, und die halbe Dateigr”áe (= Pixelzahl) muá durch die Breite restlos teilbar sein (Quotient = H”he). Der Aufbau der XGA-Files entspricht, wie schon angedeutet, der Bildschirmorganisation im 16-Bit-"True-Color"-Modus des Falcon: Also eine Aneinanderreihung von 16-Bit-Worten mit folgender Bit-Kodierung: Bit: FEDCBA9876543210 -------------------------------- Farbkomponente: RRRRRGGGGGGBBBBB -------------------------------- Wertigkeit: 4321054321043210 Am besten und schnellsten ist die Darstellung logischerweise in so einem 16-Bit-Bildschirm-Modus. Die Bit-Kodierung kann jedoch beliebig sein, es erfolgt automatisch eine entsprechende Anpassung (Grafikkarten!). Dadurch ist die Ladezeit im entsprechenden Falcon-Modus zwar nicht maximal schnell, aber trotzdem noch relativ schnell. Das Dithering in geringeren Bildschirmmodi kostet natrlich deutlich mehr Rechenzeit, obwohl ich auf die Optimierung der Routinen einige Mhe verschwendet habe. Auch 24- und 32-Bit-True-Color-Modi werden untersttzt, bringen hier aber freilich gegenber 16 Bit keine Vorteile. Leider ist mir auf die Schnelle kein nicht allzu kompliziertes Bildformat eingefallen, in das man die XGA-Dateien einfach und ohne Informationsverlust konvertieren k”nnte (das Targa-16-Bit-Format kennt nach den mir vorliegenden Informationen nur eine 5+5+5-Bit-Organisation mit "Attribut"-Bit, womit ein Grn-Bit verlorenginge). Das hier vorgeschlagene "erweiterte" XGA-Format, nennen wir es ruhig XXGA-Format, kann nicht mehr sein als eine halbwegs brauchbare šbergangsl”sung, bis ein vernnftigeres Format gefunden ist. Wie inzwischen klargeworden sein sollte, erfolgt die Darstellung der Bilder nicht wie bei anderen Programmen durch Umschalten in die entsprechende Aufl”sung, sondern in Fenstern in der aktuellen Aufl”sung (nur GEM/VDI), wobei jeweils erforderliche Anpassungen durchgefhrt werden. Der geneigte Anwender muá gegebenenfalls schon selbst in den entsprechenden Bildschirmmodus umschalten, um eine optimale Darstellung zu erhalten. Es k”nnen soviele XGA-Dateien gleichzeitig geladen werden, wie Fenster und Speicherplatz zur Verfgung stehen. Bedienung und Verhalten des Programms entsprechen aus unerfindlichen Grnden weitgehend den Programmen 1STVIEW und 1STGUIDE ;-). Also Ctrl-O fr neues Fenster, Ctrl-U fr Schlieáen, Ctrl-W Wechseln usw... Accessory-Betrieb ist natrlich auch m”glich. Das Programm hat Freeware-Status, darf also zusammen mit dieser Dokumentation beliebig frei weitergegeben werden, sofern dies unentgeltlich geschieht. Alle Rechte bleiben beim Autor: Guido Vollbeding Turmstraáe 61 O-4020 Halle (ab 1.7.: 06110) (fr Gratulationen, Hinweise, Drohbriefe etc.) Ich wnsche allen Falcon- und (Noch-)Nicht-Falcon-Besitzern viel Spaá beim Betrachten der XGA-Files.