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-Auflsungen  untersttzen.  Doch  nicht nur das:
Das  Programm  SHOWXGA, welches mir neben einigen XGA-Files in die
Hnde  fiel,  wollte  bei mir berhaupt nicht laufen. Kein Wunder:
Da     werden     irgendwelche     Manipulationen    an   ominsen
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
knnen.  Also hab ich mich ber die Pfingsttage mal hingesetzt und
drauflosgehackt  (das  Wetter  drauen  war eh nicht so doll). Das
Ergebnis:   Ein  Programm,  das  auf  _ALLEN_  Atari-Rechnern,  in
_ALLEN_ Auflsungen und mit _ALLEN_ Grafikkarten luft!

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  versumt,  weitere wesentliche Angaben wie die
Auflsung  im  File  mit  abzuspeichern.  War  dies  schon bei den
Screenformaten  auf  dem  ST nicht besonders flexibel, so ist dies
beim  Falcon  eigentlich vllig unsinnig, weil das programmierbare
Videosubsystem  ja sehr viele verschiedene Auflsungen zult. Wie
sollte  man  nun  also  die  fr  eine korrekte Darstellung ntige
Auflsung  reproduzieren  ?  Die XGA-"Schpfer" sind dabei auf die
"geniale"   Idee   gekommen,  die  Auflsung  aus  der  Dateigre
abzuleiten.  Das  ist natrlich ziemlich schwachsinnig, weil nicht
eindeutig.

Um  nun  fr  VIEWXXGA eindeutige Verhltnisse herzustellen, liest
das  Programm  aus  dem  Dateinamen  die  Bildbreite in Pixeln ab,
womit  eine korrekte Darstellung mglich ist (die Hhe ergibt sich
dann  aus Dateigre 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 erhlt/
erzeugt,  mu  man also diese Zahl im Dateinamen ergnzen 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  Dateilnge,  aus  der  mglicherweise  die
Auflsung abgeleitet wird, unverndert bleibt.

Im  Folgenden  einige  Beispiele  fr  die von SHOWXGA angegebenen
Zuordnungen:

        Auflsung       Dateigre      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  Plausibilittschecks  durch.  So mu die Breite ein
ganzzahliges  Vielfaches  von 16 sein, und die halbe Dateigre (=
Pixelzahl)  mu  durch die Breite restlos teilbar sein (Quotient =
Hhe).

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     knnte     (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   bergangslsung,   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 Auflsung, sondern in Fenstern in der aktuellen
Auflsung  (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  knnen  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   Schlieen,   Ctrl-W   Wechseln   usw...
Accessory-Betrieb ist natrlich auch mglich.

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
        Turmstrae 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. 

