PicassoMode The Next Generation (pmtng) ======================================= 1. Zielsetzung Die Benutzer der Picasso96-Software sollen eine Möglichkeit erhalten, die Darstellungsmodi der PicassoIV auf ihre Bedürfnisse zuzuschneiden. Diese Arbeit soll kein Fachwissen erfordern und für den Benutzer auch ohne schriftliche Anleitung begreifbar sein. Mit geringem Aufwand soll man schnell zu Ergebnissen kommen und die Möglichkeiten, Fehler zu machen, sollen sich in Grenzen halten. 2. Gestaltung der Benutzeroberfläche Die Oberfläche ist als Folge von drei Einstellungs-"Seiten" gedacht, wobei jede einzelne direkten Einfluß auf alle nachfolgenden "Seiten" hat. Der Benutzer beginnt damit, die Eigenschaften seines Monitors anzugeben, oder wählt ein seinem Monitor ähnliches Modell aus einer Liste von Vorgaben aus. Die Wahl, die er hier trifft, entscheidet darüber, welche Darstellungsmodi er auf der nächsten Seite für die Nutzung mit der Grafikkarte zusammenstellen kann. Auf der zweiten Seite werden dem Benutzer in einer Liste die Darstellungsmodi angeboten, die mit seiner Wahl des Monitortyps verträglich sind. Welche Modi er aus dieser Liste auswählt, bestimmt, welche Grafikauflösungen durch den PicassoIV-Treiber zur Verfügung gestellt werden. Die ausgewählten Auflösungen können schließlich auf der letzten "Seite" verändert werden. Der Benutzer geht bei der Bedienung des Programmes in zwei Schritten von den allgemeineren zu den spezielleren Einstellungen über. Mit den Tasten "< Go Back" und "Continue >" läßt sich zwischen den einzelnen Seiten hin- und herschalten. 2.1. Monitoreinstellungen (Seite 1) Dem Benutzer wird eine Liste von Monitortypen angeboten, aus denen er ein Modell heraussuchen kann, das seinem Monitor am ähnlichsten ist. Ständig vorhanden sind fünf Modelle ("Generic 31 kHz Monitor" - "Generic 64 kHz Monitor"), deren Eigenschaften fest vorgegeben sind. Die Einträge können nicht gelöscht oder verändert werden. In der Liste erscheinen sie in weißer Schrift, bzw. fettgedruckt. Um die Eigenschaften eines Monitortyps verändern zu können, muß der Eintrag in schwarzer Schrift erscheinen. Dies kann man bei den Vorgabemonitoren durch Kopieren des Eintrages erreichen. Veränderbar sind Modellname, die Grenzen innerhalb derer der Monitor einen Darstellungsmodus anzeigen kann und die Minimalzeiten für die Bildsynchronisation, die der Monitor unterstützt. Wichtig von diesen Daten sind aber eigentlich nur die Grenzen für Zeilenfrequenz und Bildwiederholrate. Diese Werte bestimmen direkt, welche Darstellungsmodi dem Benutzer angeboten werden und ob zugelassen wird, daß dessen Eigenschaften in die für den PicassoIV-Treiber gedachte Datenbank übernommen werden kann. Werden die angegebenen Grenzen überschritten, ist eine Beschädigung des Monitors und der Grafikkarte die Folge. Die Dauer der Bildsynchronisationssignale ist zweitrangig; im Normalfall (siehe Menüpunkt "Settings/Respect sync constraints") beachtet das Programm diese Daten nicht. Die wenigsten Darstellungsmodi gehorchen den vorgegebenen Signalzeiten, obwohl Monitore keine Schwierigkeiten haben, die Auflösungen darzustellen. Die Liste der Monitore kann geladen, ergänzt und gespeichert werden (im Menü "Project" bei "Open/Monitor types", "Add/Monitor types" und "Save/Monitor types"). Die fünf Vorgabemonitore bleiben von diesen Aktionen unberührt. Sie werden nie gespeichert oder durch andere Listeneinträge ersetzt. Da die Wahl des Monitors über die angebotenen Darstellungsmodi entscheidet, muß ein Modell gewählt werden, bevor zur nächsten Seite weitergeschaltet werden kann. Wurde beim letzten Start des Programmes die Modusdatenbank gespeichert, wird in der Liste der Monitore der Eintrag markiert, der zuletzt gespeichert wurde. 2.2. Auswahl der Darstellungsmodi (Seite 2) Der ausgewählte Monitortyp wird als "Filter" verwendet, um die Liste der angebotenen Grafikauflösungen vorzusortieren. Auflösungen, die sich nicht mit dem Monitortyp vertragen, erscheinen gar nicht erst in der Liste auf der linken Hälfte der zweiten Seite. Auch hier gilt wieder, daß fest vorgegebene Einträge nicht lösch- oder veränderbar sind. Man kann sie allenfalls kopieren. Sie sind hervorgehoben durch weiße Schrift oder Fettdruck. Die Liste in der rechten Hälfte der Seite enthält die "Modusdatenbank", die der PicassoIV- Treiber zur Verfügung stellt. Bei jedem Eintrag dieser Liste kann auf dieser Seite jeweils nur der Name geändert werden. Die Eigenschaften der Einträge lassen sich erst auf der Folgeseite bearbeiten. In beiden Listen lassen sich Einträge kopieren und wieder entfernen. Die Listen sind gestaffelt sortiert: - geringe Auflösungen erscheinen vor hohen Auflösungen - Modi mit weniger darstellbaren Farben werden vor denen aufgeführt, die mehr Farben erlauben - Einträge mit niedriger Bildwiederholfrequenz erscheinen vor Einträgen mit hoher Bildwiederholfrequenz - Auflösungen mit geringer Zeilenfrequenz werden vor denen mit hoher Zeilenfrequenz aufgeführt Vor allen anderen Einträgen stehen immer die Auflösungen, mit denen der integrierte Flickerfixer der PicassoIV arbeitet. Zwischen beiden Listen können Einträge hin- und hergeschoben werden, diesem Zweck dienen die nach rechts und nach links zeigenden Pfeiltasten zwischen den Listen. Verschieben bedeutet hier, daß ein Eintrag aus der einen Liste entfernt und in die andere Liste einsortiert wird. Soll ein fest vorgegebener Eintrag aus der linken Liste nach rechts verschoben werden, wird er nicht aus der einen Liste entfernt, sondern in die rechte Liste kopiert. Der Inhalt der beiden Listen kann geladen, gespeichert und ergänzt werden. Mit "Project/Open/Default configuration" wird die rechte Liste durch die gespeicherte Modusdatenbank ersetzt, mit "Project/Save/Default configuration" wird die rechte Liste gespeichert und vermerkt, welcher Monitortyp gewählt wurde. Die anderen Menüpunkte "Project/Open/Display modes", "Project/Add/Display modes" und "Project/Save/Display modes" beziehen sich ausschließlich auf die linke Liste. Drei Menüpunkte entscheiden, wie die beiden Listen vorbereitet werden. "Settings/Respect sync constraints" legt fest, ob die Monitoreinstellungen für die Bildsynchronisationszeiten beachtet werden sollen. Wird dieser Filter aktiviert, ist das angelegte Raster feinmaschiger und läßt weit weniger Moduseinträge zu. Mit "Settings/Filter duplicate display modes" wird eingestellt, ob identische Einträge in der vorgegebenen Modusliste gezeigt werden sollen. Anders als die linke Liste, deren Inhalt sich sofort ändert, sobald die Voraussetzungen für die Übernahme von Daten in diese Liste wechseln, wird kein Filter automatisch auf die rechte Liste angewandt. Man kann so an einzelnen Parametern des Monitors feilen oder einen anderen Monitortyp auswählen, ohne danach vor einer leeren Liste zu stehen. Um die Filterkriterien auch auf die rechte Liste anzuwenden, muß ausdrücklich der Menüpunkt "Edit/Apply monitor filter" aufgerufen werden. Ab der zweiten Seite können alle Einstellungen gespeichert werden. Bevor diese Seite erreichst ist, sind die dafür vorgesehenen Menüpunkte alle gesperrt. Erst nach der Auswahl der Darstellungsmodi, auf die der PicassoIV-Treiber Zugriff haben soll, ist es schließlich erst sinnvoll, die getroffenen Einstellungen permanent zu speichern. Hinter den Namen der Modi steht immer eine Angabe über die Farbauflösung und die Bildwiederholfrequenz und die Zeilenfrequenz. Wird der Modusname zu lang, können diese Informationen unter Umständen nicht mehr vollständig sichtbar sein. Damit man dennoch einen Überblick über die Daten behält, finden sich unter den Listen zwei Felder, in denen die Eigenschaften des markierten Darstellungsmodus angezeigt werden. 2.3. Ändern der Eigenschaften eines Modus (Seite 3) Die einzelnen Einträge der auf Seite 2 zusammengestellten Liste können hier verändert werden. Die Liste kann man über das Pop-Up-Menü am oberen Rand der Seite durchlaufen, Drücken der Tab-Taste schaltet jeweils zum nächsten Eintrag weiter. Wird ein Eintrag gewählt, erscheinen seine Eigenschaften im mittleren Bereich des Fensters: links können diese Eigenschaften eingestellt werden, in der rechten Seitenhälfte wird angezeigt, was sich nach einer Prüfung und einem Abgleich der Daten links mit den Fähigkeiten der verwendeten Hardware ergibt. Die einstellbaren Parameter sind: - Anzahl Farben ("Colours") 256, 65.536 oder 16 Millionen darstellbare Farben pro Bildschirm - Pixeltakt ("Pixel clock") Dies ist die Geschwindigkeit, mit der der Grafikprozessor die Bildpunkte des Grafikspeichers in ein Signal umwandelt, das der Monitor umsetzen kann. Dieser Wert wirkt sich direkt auf Zeilenfrequenz und Bildwiederholfrequenz aus. Begrenzt wird er durch die Leistung der Grafikkarte und die Größe des Grafikauflösung. - Zeilenfrequenz ("Line freq.") Dieser Wert gibt an, wie schnell die Grafikkarte eine Zeile des Bildschirmspeichers auf dem Monitor ausgeben kann. Der Wert wirkt sich direkt auf Pixeltakt und Bildwiederholfrequenz aus. Begrenzt wird dieser Wert durch Größe des Bildes. - Bildwiederholfrequenz ("Scan rate") Je höher dieser Wert ist, desto ruhiger und stabiler wird das erzeugte Bild erscheinen und desto weniger wird es flimmern. Direkt wirkt sich dieser Wert auf Pixeltakt und Zeilenfrequenz aus. Auch er wird begrenzt durch die Größe des Bildes. - Bildbreite ("Width") Hier wird direkt die Breite des Bildes eingestellt. Sie ist abhängig von der Höhe des Bildes und der Größe des Grafikspeichers. - Bildhöhe ("Height") Hier wird direkt die Höhe des Bildes eingestellt. Sie ist abhängig von der Breite des Bildes und der Größe des Grafikspeichers. - Dauer des horizontalen/vertikalen Synchronisationssignales Die Dauer dieses Signales bestimmt, ob das Bild gestaucht oder gestreckt wird. Große Werte können zu einer Stauchung führen, kleine zu einer Streckung. Normalerweise wird diese Dauer aus allen anderen Eigenschaften des Modus abgeleitet und muß nicht gesondert eingestellt werden. - Polarität des horizontalen/vertikalen Synchronisationssignales Bestimmte ältere Monitore werten die "Richtung" des Synchronisationssignales aus und orientieren sich daran, wie und wann sie auf das Signal zu reagieren haben. Ändern der Polarität des Signales kann sich günstig auf die Bilddarstellung auswirken. - Bilddarstellung ("Scan mode") Unter bestimmten Bedingungen sind besondere Maßnahmen nötig, um das gewünschte Bild auf dem Monitor darstellen zu können. Sinkt die Bildwiederholfrequenz unter das verträgliche Minimum des Monitors, wird sie durch das Zeilensprungverfahren ("Interlaced") effektiv verdoppelt. Steigt die Frequenz über das verträgliche Maximum, kann sie durch effektive Verdopplung des Taktes ("Doublescan") halbiert werden. Das Programm aktiviert diese Maßnahmen, sobald ein Modus die Grenzen der Verträglichkeit des Monitors überschreitet. Dies kann zum Erfolg führen, aber auch zu Werten, die erst recht oder nicht mehr ganz im zulässigen Bereich des Monitors liegen. Die Eigenschaften des Modus, wie sie in der linken Hälfte verändert wurden, ergeben einen Satz Daten, der sich nicht immer sofort mit den Eigenschaften der Grafikhardware vereinbaren läßt. Die Daten werden deshalb den Erfordernissen der Hardware angepaßt und gegebenenfalls neu berechnet. Das Ergebnis dieser Arbeit sieht man in der rechten Hälfte der Seite. Im Idealfall sind die links und rechts angezeigten Daten identisch und für die Grafikhardware annehmbar. Sind die Daten verträglich, kann ein Testbildschirm geöffnet werden, der die eingestellten Moduseigenschaften verwendet. Sind die Daten jedoch nicht verträglich, bleibt der zum Öffnen des Bildschirms vorgesehene Knopf "Test computed display settings" gesperrt. Wurden verträgliche Änderungen an den Daten vorgenommen, können die Änderungen mit der Taste "Keep computed display settings" in die Datenbank im Speicher übernommen werden. Am Testbildschirm kann interaktiv getestet werden, wie sich Stauchen, Strecken und Ändern der Zentrierung des Bildes auswirken. Mit den Pfeiltasten ("Cursortasten") wird das Bild positioniert; wird zusätzlich eine der Umschalttasten für Groß- und Kleinschreibung gedrückt, wird das Bild gestaucht und gestreckt. Die Tasten für rechts und links beeinflussen die horizontalen Parameter, die Tasten für oben und unten die vertikalen Parameter. Gestreckt wird mit den Tasten für rechts und oben, gestaucht mit den Tasten für links und unten. Drückt man eine beliebige Taste, wird ein Informationsfenster ein- und ausgeschaltet, das die aktuellen Eigenschaften des Bildschirmes anzeigt. Stauchen und Strecken des Bildes wirken sich direkt auf Zeilenfrequenz und Bildwiederholfrequenz aus. Drückt man die "Esc"-Taste, werden die Änderungen an Position und Skalierung des Bildes nicht übernommen. Drücken der "Return"-Taste übernimmt die Änderungen in den aktuellen Modusdatensatz. Keine Änderung in der linken Hälfte der Seite ist dauerhaft gültig: wechselt man zu einem anderen Modus, vergißt das Programm die aktuellen Änderungen, wenn man sie nicht vorher in die Datenbank im Speicher übernommen hat. Mit dem Menüpunkt "Edit/Undo" können die ursprünglichen Werte der Datenbank wiederhergestellt werden. Die Datenbank im Speicher entspricht nicht der auf Festplatte, bis sie nicht ausdrücklich dort gespeichert wurde. Hierzu dient der Menüpunkt "Project/Save/Default configuration". Wer mit den Änderungen zufrieden ist, sollte sie jetzt alle auf Festplatte speichern (siehe Menüpunkt "Project/Save/Default configuration") und das Programm beenden. Vor dem Verlassen wird auf jeden Fall angeboten, den Rechner neu zu starten, da die Änderungen erst nach dem Neustart aktiv werden. Die Menüpunkte "Project/Save/Display modes" und "Project/Save/Monitor types" dienen einem anderen Zweck. Mit ihnen werden die aktuellen Datenbestände in einem speziellen Exportformat gespeichert. In diesem Format können Datenbestände leicht zu größeren Einheiten zusammengefaßt werden. Das Ziel ist es, den Benutzern einmal eine umfangreiche Datenbank mit Monitordaten und Bildschirmmodi anbieten zu können. Bei Verwendung der Picasso IV werden die aktuellen Einstellungen des eingebauten Flicker-Fixers ausgelesen und können wie die anderen Bildschirmmodi geändert werden. Beim Speichern der Modusdatenbank werden die Einstellungen des Flicker-Fixers in den Piktogramm-Merkmalen des Treibers "P4_Flickerfixer" in der Schublade "Devs:Monitors" untergebracht. Nach dem nächsten Systemstart werden die neuen Flicker-Fixer-Einstellungen übernommen und bis zum Ausschalten des Rechners im Speicher verankert. Der Flicker-Fixer liefert damit auch beim Aufruf des Bootmenüs oder dem Starten von Programmen von Diskette ein verbessertes Bild. Diese Einstellungen gehen nach dem Ausschalten des Rechners aber leider verloren. Um sie wieder zu verwenden muß zuerst wieder der P4_Flickerfixer-Treiber gestartet werden. Es gibt getrennte Einstellungen für den PAL- und den NTSC-Modus des Flicker-Fixers. Höhe und Breite dieser Bildschirmmodi können nicht verändert werden, aber Bildposition, Bildwiederholfrequenz, und Skalierung sind veränderbar. PicassoModeTNG erlaubt das Erzeugen von mehreren Bildschirmmodus-Einstellungen, die für den Flickerfixer passend wären. Gespeichert wird jedoch nur jeweils der erste PAL-Eintrag und der jeweils erste NTSC-Eintrag. Alle folgenden für den Flicker-Fixer passenden Modi gehen beim Verlassen des Programmes verloren. Wird für den Flicker-Fixer kein Eintrag gespeichert, so werden die Einstellungen des P4_Flickerfixer-Treibers gelöscht und beim nächsten Systemstart wird der Flicker-Fixer wieder mit den vom Hersteller vorgegebenen Einstellungen betrieben. Fehlt jeweils einer der PAL- oder NTSC-Einträge, so werden die Einstellungen dieses Eintrages aus der Konfiguration des P4_Flickerfixer-Treibers entfernt. Beim folgenden Systemstart werden dann die vom Hersteller vorgegebenen Einstellungen für diesen Darstellungsmodus benutzt. 3. Besonderheiten Die bereits beschriebenen Funktionen werden durch eine Reihe besonderer Eigenschaften des Programmes unterstützt, die die Benutzung einfacher machen sollen: - Es ist geplant, die Eigenschaften des angeschlossenen Monitors über das DDC2-Protokoll durch die Grafikkarte ermitteln zu lassen. Derzeit fehlt diese Funktionalität in der Picasso96-Software leider noch. Sobald sie funktioniert, wird die manuelle Eingabe der Monitorparameter nicht mehr nötig sein, sofern der angeschlossene Monitor das Protokoll unterstützt. - Die Modusdatenbanken anderer Programme wie CVMode und das alte PicassoMode können direkt eingelesen werden. Man kann seine Daten ohne Änderung und Aufwand von seiner alten Grafikkarte übernehmen. - Das Programm verwendet zum Exportieren von Modus- und Monitordaten ein eigenes Format, in dem alle Daten in Textform gespeichert werden. Diese Daten können mit nur wenigen Änderungen direkt für NetBSD/Amiga-Unix/X-Windows weiterverwendet werden. - Die Picasso96-Software muß nicht notwendigerweise installiert und in Betrieb sein, um mit dem Programm zu experimentieren. Es kann dann nur kein Testbildschirm geöffnet werden und das Ändern von Moduseigenschaften ist gesperrt.