VGA-Simulator V0.7 (c) 1992 by Christoph Zwerschke ================================================== Sinn und Zweck: --------------- Der VGA-Simulator ist ein Hilfsprogramm fr den Atari TT. Er soll die fnf niedrigen TT-Aufl”sungen (VGA-Aufl”sungen) mit der hohen TT-Aufl”sung simulieren. Das Programm ist notwendig, weil ein Monitor fr die hohe TT-Aufl”sung (z.B. TTM 194/195) normalerweise nicht VGA-Aufl”sungen anzeigen kann. Und wer hat schon den Platz und das Geld, sich neben dem Monochrom-Grožbildschirm noch einen VGA-Monitor aufstellen zu k”nnen? Lieferumfang: ------------- Der VGA-Simulator arbeitet rein softwarem„žig. Dazu geh”ren die folgenden vier Dateien: VGA_SIMU.TXT : diese Information VGA_SIMU.PRG : der eigentliche Simulator, geh”rt in den AUTO-Ordner VGA_SIMU.CPX : Kontrollprogramm fr den Simulator, geh”rt in den CPX-Ordner PATCH.PRG : Programm zum Patchen der Voreinstellungen Copyright: ---------- Copyright (c) 1992 by Christoph Zwerschke. Die Versionen 0.xx des VGA-Simulators sind "Public Domain". Sie drfen nach Belieben kopiert werden, auch ber Mailboxen, unter der Voraussetzung, daž dies unentgeltlich geschieht. Ab Version 1.00 wird der VGA-Simulator voraussichtlich "Shareware". Er darf dann weiterhin unentgeltlich kopiert werden, aber bei regelm„žiger Benutzung ist an den Autor eine geringe Gebhr zu zahlen. Hinter dem Programm steckt n„mlich viel Detailarbeit. Voraussetzung zur Weiterentwicklung des VGA-Simulators ist allerdings eine entsprechende Resonanz bei den Anwendern. Verbesserungsvorschl„ge und Honorierungen jedweder Art (Lenin-Orden, Schinkenbrote, ...) werden vom Autor gerne angenommen, und natrlich auf die Shareware-Gebhr angerechnet, falls eine solche entsteht. Haftungsausschluž: ------------------ Natrlich kann die Funktionsf„higkeit des VGA-Simulators nicht garantiert werden und der Autor haftet auch nicht fr irgendwelche Sch„den, die sich aus der Benutzung des Programmes oder der Dokumentation ergeben k”nnen (einschliežlich, aber nicht beschr„nkt auf Explosion oder Implosion des Monitors, Durchschmoren des Shifters und Formatieren der Festplatte). Funktionsprinzip: ----------------- Der VGA-Simulator legt einen zus„tzlichen Bildschirmspeicher an, der vom Monochrom-Monitor angezeigt wird. Das Betriebssystem und die Anwender- programme benutzen nur einen "virtuellen" Bildschirm, der vom VGA-Simulator im VBl-Interrupt, also 71 mal in der Sekunde, in die hohe TT-Aufl”sung umgerechnet wird. Das kostet natrlich erhebliche Rechenzeit, weswegen einige zus„tzliche Mažnahmen getroffen wurden, diese Umrechnung optional auf Kosten der Genauigkeit und/oder des Speicherplatzes abzukrzen. Installation: ------------- Es reicht, das Programm VGA_SIMU.PRG in den AUTO-Ordner zu kopieren. Mit dem Programm PATCH.PRG k”nnen noch bestimmte Voreinstellungen in VGA_SIMU.PRG "gepatcht" werden, momentan sind dies: Die Standard-Aufl”sung: Das ist die Aufl”sung, in die der TT nach dem Booten wechselt. Man kann w„hlen zwischen der Standard-VGA-Aufl”sung, der hohen TT-Aufl”sung und Abfragen der Aufl”sung beim Booten. Warten im Fehlerfall: Gibt an, ob im Fehlerfall (zu wenig Speicher, kein Monochrom-Monitor angeschlossen, usw.) nach der Ausgabe der Fehlermeldung noch auf einen Tastendruck gewartet werden soll. ST-Aufl”sungen zoomen: Hier kann gew„hlt werden, ob die ST-Aufl”sungen vierfach vergr”žert werden sollen, oder unvergr”žert in der Mitte des Bildschirms erscheinen sollen (was natrlich flotter geht). Umrechnungstabellen: Hiermit kann gew„hlt werden, ob 512 kByte Speicher fr Tabellen reserviert werden drfen, die die Umrechnung des Bildschirm- Speichers in die hohe TT-Aufl”sung beschleunigen k”nnen. Prfsummen benutzen: Durch Benutzung von Prfsummen kann die Umrechnung des Bildschirmspeichers vermieden werden, wenn sich dieser nicht oder nur wenig „ndert. Es k”nnen dabei allerdings u.U. Fehler entstehen, die sich als "Dreck" auf dem Bildschirm „užern. Durch leichtes "šberwischen" mit der Maus kann dieser Dreck aber meist leicht wieder entfernt werden. Schliežlich kann noch das Programm VGA_SIMU.CPX in den CPX-Ordner kopiert werden. Damit k”nnen die drei letzten Optionen noch im laufenden Betrieb anders gew„hlt werden, wenn das XCONTROL-Accessory zug„nglich ist. Betrieb: -------- W„hrend des Betriebs k”nnen wie gesagt einige Optionen ber VGA_SIMU.CPX ge„ndert werden. Zu beachten ist, daž der VGA-Simulator auch dann im Speicher installiert ist und bleibt, wenn er in der hohen TT-Aufl”sung gestartet wird, damit man nachtr„glich in die VGA-Aufl”sungen umschalten kann. Der VGA-Simulator untersttzt n„mlich ausdrcklich das Umschalten zwischen der hohen TT-Aufl”sung und den VGA-Aufl”sungen. Leider wird dies allerdings auch bei der aktuellen TOS-Version 3.06 noch vom AES, VDI und vom Desktop "mit allen Mitteln" verhindert. Trotzdem ist der VGA-Simulator auf "unsaubere Hacks" und neue TOS-Versionen vorbereitet. Einschr„nkungen: ---------------- Natrlich kann der VGA-Simulator keine Farben auf den Monochrom- Bildschirm "zaubern". Deswegen (und wegen des Brems-Effekts) ist er natrlich nur als Behelf anzusehen. Die Farben k”nnen wegen des dazu n”tigen Zeitaufwandes nicht in echte Graustufen umgerechnet werden und die Farbpalettenregister werden auch nicht untersttzt. Das Pixelmuster fr einen Farbpixel entspricht einfach dem Bitmuster, den der Index in die Farbpalette darstellt. Trotz seiner Einfachheit ist dieses Umrechnungsverfahren aber erstaunlich brauchbar und hat sich auch schon bei vielen Farb-Simulatoren auf dem Atari ST bew„hrt. Mit hardware-nah programmierten Spielen usw. wird der VGA-Simulator sicher nicht zurechtkommen. Aber nicht alle "Abstrze" sind unbedingt auf den VGA-Simulator zurckzufhren. Der Bildschirmschoner IDLE.ACC strzt z.B. auch ohne den VGA-Simulator beim Aufl”sungswechsel ab. Aužerdem hat die Betriebssystem-Routine EsetShift() noch einen Fehler. Das Programm sollte wesentlich schneller laufen, wenn es selbst und die Umrechnungstabellen im "Fast-RAM" liegen k”nnen. Das setzt natrlich voraus, das selbiges vorhanden ist. Da dies beim TT des Programmautors leider nicht der Fall ist, konnte der Betrieb mit dem "Fast-RAM" noch nicht getestet werden. Geplante Verbesserungen: ------------------------ Bis zur offiziellen Shareware-Version 1.0 ist vieles geplant. Ob alles umgesetzt wird, h„ngt wie gesagt vor allem von der Resonanz unter den Anwendern ab. Verbesserungsvorschl„ge werden jederzeit angenommen. Zun„chst bietet es sich natrlich an, einen Bildschirmschoner zu integrieren. Das Problem mit den Bildschirmschonern fr die hohe Aufl”sung des Atari TT ist ja, daž sie 150 kByte als Bildschirmpuffer ben”tigen, wenn sie auch mit Programmen arbeiten sollen, die kein AES-Redraw untersttzen. Deswegen verzichtet das zum Lieferumfang des TT geh”rende MACCEL3 auch auf das Schonen des Bildschirms in der hohen Aufl”sung. Da der VGA-Simulator aber sowieso einen Bildschirmpuffer anlegt, ist das hier kein Thema. Aužerdem kann das laufende Programm in der "Schonzeit" des Bildschirms mit voller Geschwindigkeit laufen, ohne bremsendes Umrechnen. Der Bild- schirm k”nnte in dieser Zeit "eingefroren" oder schwarz geschaltet werden, Feuerwerk oder fliegende Toaster (wie phantasielos) anzeigen. Eine andere Sache ist das regelm„žige Umkopieren des Bildschirms. Diese Methode war beim Atari ST noch angebracht. Der Atari TT verfgt jedoch mit dem 68030 ber eine integrierte MMU (Memory Management Unit), die zur Untersttzung eines virtuellen Bildschirms geradezu pr„destiniert ist. Leider verfgt der Autor zur Zeit jedoch noch ber keine brauchbare Dokumentation zur MMU des 68030 im allgemeinen und es gibt auch noch keine Richtlinien zur Programmierung der MMU auf dem TT von Atari im besonderen. Es ist zu erwarten, daž durch sinnvollen Einsatz der MMU der VGA-Simulator erheblich beschleunigt werden kann. Ideen und Anregungen zu diesem Thema nimmt der Autor besonders gerne entgegen. Zumindest kann der VGA-Simulator in der derzeitigen Version nicht mit anderen Programmen kollidieren, die ebenfalls die MMU benutzen, z.B. 24BIT.PRG, ROMRAM, usw. Schliežlich sucht der Autor noch eine M”glichkeit, von den VGA-Aufl”sungen in die hohe TT-Aufl”sung zu schalten, und umgekehrt. Wie gesagt wird dies vom VGA-Simulator untersttzt, aber bisher vom GEM erfolgreich behindert. Auch eine Umschaltung fr einzelne Programme w„re hilfreich. Dann k”nnte man st„ndig in der hohen TT-Aufl”sung bleiben, und ein Hilfsprogramm wrde dafr sorgen, daž fr Programme, die nur in einer der VGA-Aufl”sungen arbeiten, automatisch in die die entsprechende Aufl”sung geschaltet wird. In den bisherigen TOS-Versionen ist dies sicher nur mit "illegalen Mitteln" zu erreichen, aber auch mit solchen kaum m”glich, wie der Autor nach vielen frustrierenden Versuchen feststellen mužte. Hoffen wir auf ein neues TOS. Adresse des Autors: ------------------- Der Programmierer vom Dienst, Christoph Zwerschke Bankverbindung: Am Steinfeld 4 Bezirkssparkasse Heidelberg D-4714 Cappenberg BLZ: 67250020 Kto: 4338405 Zur Zeit auch im Maus-Netz (Christoph Zwerschke @ KA) zu erreichen.