\chapter{\dvi-Bildschirmtreiber} Der Bildschirmtreiber \dvi\ ist momentan auf dem Atari~ST f"ur Standard-{\sc Gem}-Fenster (auch Gro"sbildschirme), auf Workstations unter X11/Motif, auf Apollo Workstations unter {\tt GPR}, auf dem Commodore {\sc Amiga} ab {\sc Amiga OS~2.04}, sowie auf dem IBM~PC mit g"angiger Grafikkarte implementiert. F"ur alle Systeme werden Zeichens"atze der Auf\/l"osung $101\times 101$ dpi empfohlen, jedoch sind nat"urlich auch andere Auf\/l"osungen problemlos m"oglich. \section{DVI {\sc Gem}-Version, Atari}\label{lagemvers} Die {\sc Gem}-Version von \dvi\ ist fast durchg"angig per Maus bequem zu bedienen. Die ge\-w"unsch\-ten Optionen werden mit den {\sc Gem}-typischen Drop-Down-Menus mit Hilfe der Maus eingestellt und k"onnen auch in einer Parameterdatei gespeichert werden. Der Aufruf von {\tt DVI.PRG} ist wie folgt: \begin{compout} dvi [-o] [dvifile] [optionfile] \end{compout} Alle Parameter sind optional, da auch interaktiv "uber Men"us einstellbar. Falls jedoch Parameter angegeben werden, ist die Reihenfolge zwingend vorgeschrieben. Wenn erw"unscht, m"ussen Optionen --- durch ein \cstok{-}-Zeichen eingeleitet --- zuerst angegeben werden. Danach k"onnen ein oder zwei Dateinamen folgen, wobei der erste immer als Name der zu bearbeitenden {\tt .DVI}-Datei angesehen wird. Ein zweiter Dateiname wird als Name einer Optionsdatei interpretiert. Bei Dateinamen werden fehlende Extensionen {\tt .DVI} bzw.\ {\tt .DVO} automatisch erg"anzt. Als Option steht momentan nur {\it -o\/} zur Verf"ugung. Danach mu"s ein Dateiname einer Optionsdatei angegeben werden, der nicht durch ein Leerzeichen von der Option getrennt sein darf. Alle anderen Optionen werden ignoriert! Falls eine Optionsdatei sowohl "uber {\it -o\/} als auch dem {\tt .DVI}-Dateinamen folgend angegeben wird, hat letztere Datei den Vorrang. Die Einstellungen der mit {\it -o\/} angegebenen Datei werden nicht "ubernommen. Der Arbeitsbildschirm von \dvi\ ist in Bild~\ref{ldvi} zu sehen. \begin{figure}[htbp]\centering \centerline{\includegraphic{dviscr}} \caption{Der Arbeitsbildschirm von \dvi}\label{ldvi} \end{figure} Der Bildschirm enth"alt die Men"uleiste zum Einstellen der Optionen und ein Fenster zum Anzeigen von Meldungen. Die einzelnen Eintr"age der Men"uleiste werden nachfolgend erkl"art, auch wenn eigentlich alle Eintr"age noch bei der Kommandozeilenversion in Abschnitt~\ref{kdover} ausf"uhrlich erkl"art werden. \subsection[Der Desk Titel]{Der {\bf Desk} Titel} \begin{tabular}{|l|} \hline About DVI \dots \\ \hline accessory 1 \\ accessory 2 \\ accessory 3 \\ accessory 4 \\ accessory 5 \\ accessory 6 \\ \hline \end{tabular} \marginlabel{About DVI \dots } Druckt das obligatorische Formular mit Informationen "uber \dvi. \marginlabel{Accessories} {\sc Gem} unterst"utzt bis zu 6 im Hintergrund wartende Programme, die sich "uber die Accessory-Eintr"age aktivieren lassen. Siehe auch Anhang~\ref{ldisplay}. \subsection[Der File Titel]{Der {\bf File} Titel} \begin{tabular}{|lr|} \hline Choose DVI&\tt\ [C]\\ \hline Load Options&\tt\ [L]\\ Save Options&\tt\ [S]\\ \hline Logfile&\\ Quit&\tt\ [Q]\\ \hline \end{tabular} \marginlabel{Choose DVI} Durch Anklicken dieses Men"upunktes oder Dr"ucken der \cstok{C}-Taste wird eine Dateiauswahlbox zum W"ahlen der DVI-Datei angezeigt. Alternativ kann der Dateiname auch bei Aufruf in der Kommandozeile "ubergeben werden. \marginlabel{Load Options} Dieser Men"utitel bzw.\ die \cstok{L}-Taste bringen eine Dateiauswahlbox zum W"ah\-len einer Optionsdatei zur Anzeige. Optionsdateien von \dvi\ erkennt man an der {\tt *.DVO} Endung. Die Standardoptionen sollten in der Datei {\tt DVI.DVO} gespeichert sein. Diese Optionsdatei wird beim Starten von \dvi\ automatisch geladen, wenn keine Optionsdatei "uber die Kommandozeile "ubergeben wurde und sollte zweckm"a"sigerweise die Bildschirmoptionen enthalten. Bei einigen speziellen Namen von Optionsdateien kann man sich das Anw"ahlen "uber Men"u ersparen. Die Optionsdateien {\tt F1.DVO}--{\tt F10.DVO} k"onnen direkt durch Dr"ucken der Tasten \cstok{F1}--\cstok{F10} geladen werden. \marginlabel{Save Options} Durch diesen Eintrag bzw.\ durch Dr"ucken der \cstok{S}-Taste wird eine Dateiauswahlbox zum W"ahlen des Dateinamens der zu speichernden Optionsdatei angezeigt. Alle aktuellen Optionseinstellungen werden in diese Optionsdatei gespeichert. \marginlabel{Logfile} Alle Meldungen, die im Meldungsfenster erscheinen, k"onnen mittels dieser Option in eine Datei geschrieben werden, die mittels einer Dateiauswahlbox ausgew"ahlt wird. \marginlabel{Quit} Anklicken dieses Eintrags bzw.\ Dr"ucken von \cstok{Q} beendet das Programm. \subsection[Der Print Titel]{Der {\bf Print} Titel} \begin{tabular}{|lr|} \hline Next Page & \tt\ [N]\\ Previous Page & \tt\ [P]\\ Format from & \tt\ [F]\\ \hline Cycle Windows & \tt\ [W]\\ \hline Lower Limit&\ $\hat{\phantom{x}}${\tt L}\\ Upper Limit&\ $\hat{\phantom{x}}${\tt U}\\ \hline Magnification&\ $\hat{\phantom{x}}${\tt M}\\ Copies&\ $\hat{\phantom{x}}${\tt C}\\ \hline \end{tabular} \marginlabel{Next Page} Anklicken dieses Eintrags bzw.\ Dr"ucken von \cstok{N} startet den Aufbau der ersten bzw.\ n"achsten Bildschirmseite in einem eigenen Fenster. Nach evtl.\ l"angerer Wartezeit --- bedingt durch Grafikoperationen, die sehr rechenintensiv sind --- erscheint die Seite im Grafikfenster. Gleichzeitig wird ein Meldungsfenster ge"offnet, in dem entsprechend den eingestellten Optionen diverse Operationen wie bearbeitete Seite, Laden und Auslagern von Zeichens"atzen, Anfordern und Freigeben von Speicher, etc.\ protokolliert werden. Beim Aufbau der Grafikseite wird dieses Fenster automatisch sichtbar gemacht und nach Aufbau der Grafikseite von dieser verdeckt. Durch "Andern der Fenstergr"o"sen kann man selbstverst"andlich beide Seiten gleichzeitig darstellen. Falls Ihnen der st"andige Fensterwechsel nicht zusagt, k"onnen Sie dies im Men"utitel {\bf Setup} mit der Funktion {\bf Top Windows} ausstellen. \marginlabel{Previous Page} Anklicken dieses Eintrags bzw.\ Dr"ucken von \cstok{P} startet den Aufbau der vorherigen bzw.\ letzten Bildschirmseite. \marginlabel{Format from} Dieser Eintrag bzw.\ Dr"ucken der Taste \cstok{F} erm"oglicht die Auswahl einzelner Seiten des Dokuments und startet nach der Eingabe den Ausdruck. Die Seiten werden mit bis zu drei Parametern ausgew"ahlt. Die erste Zahl gibt die Startseite an, die zweite die Stopseite und die dritte die Schrittweite zwischen den Seiten. Mit den Parametern \mbox{{\tt 4, 8, 2}} werden nur die Seiten 4, 6 und 8 gedruckt. \marginlabel{Cycle Windows} Durch diese Funktion kann man wechselweise das Meldungsfenster und das Grafikfenster sichtbar machen, falls sie sich gegenseitig "uberdecken. \marginlabel{Lower Limit} Kontrolle der Ausdruckseiten "uber die \TeX-internen Seitenz"ahler {\tt $\backslash$count0} bis {\tt $\backslash$count9}. \marginlabel{Upper Limit} Kontrolle der Ausdruckseiten "uber die \TeX-internen Seitenz"ahler {\tt $\backslash$count0} bis {\tt $\backslash$count9}. \marginlabel{Magnification} Dieser Eintrag bzw.\ gleichzeitiges Dr"ucken der Tasten \cstok{{\sc Control}} und \cstok{M} dient zum Einstellen des Vergr"o"serungsfaktors. Ein Wert von 1000 entspricht Originalgr"o"se, ein Wert von 1200 vergr"o"sert um den Faktor $1.2$, usw. Beachten Sie aber bitte, da"s die Vergr"o"serung durch Verwendung gr"o"serer Zeichens"atze bewirkt wird, die nat"urlich vorhanden sein m"ussen. Deshalb sind wohl nur die "ublichen Vergr"o"serungsstufen in Schritten von $1.2^i$, $i\in\{\,0, 1/2, 1, \dots\,\}$ praktikabel. \marginlabel{Copies} Dieser Eintrag bzw.\ gleichzeitiges Dr"ucken der Tasten \cstok{{\sc Control}} und \cstok{C} dient zum Einstellen der Anzahl Kopien pro Seite. Beachten Sie, da"s diese Option wesentlich schneller arbeitet, als mehrmaliges Ausdrucken, da f"ur die Kopien die Interpretation der {\tt DVI}-Datei entf"allt! \subsection[Der Margins Titel]{Der {\bf Margins} Titel} \begin{tabular}{|lr|} \hline H-Offset&\\ V-Offset&\\ \hline H-Spread&\\ V-Spread&\\ \hline H-Margin&\\ V-Margin&\\ \hline Width&\ $\hat{\phantom{x}}${\tt W}\\ Height&\ $\hat{\phantom{x}}${\tt H}\\ \hline \end{tabular} \marginlabel{H-Offset} Seitenverbreiterung links. \marginlabel{V-Offset} Seitenverl\"angerung oben. \marginlabel{H-Spread} Seitenverbreiterung rechts. \marginlabel{V-Spread} Seitenverl"angerung unten. \marginlabel{H-Margin} Einr"uckung der Druckseite nach rechts. \marginlabel{V-Margin} Einr"uckung der Druckseite nach unten. \marginlabel{Width} Seitenbreite. Falls mit Null belegt, wird der Eintrag der {\tt DVI}-Datei \"ubernommen. \marginlabel{Height} Seitenh"ohe. Falls mit Null belegt, wird der Eintrag der {\tt DVI}-Datei "ubernommen. \subsection[Der Devices Titel]{Der {\bf Devices} Titel} \begin{tabular}{|lr|} \hline Screen&\ \extra\char`1\tt S\\ File&\ \extra\char`1\tt F\\ \hline NEC P6 Low&\ \extra\char`1\tt L\\ NEC P6 Mid&\ \extra\char`1\tt M\\ NEC P6 High&\ \extra\char`1\tt H\\ \hline FX 80&\ \extra\char`1\tt X\\ HP Laserjet&\ \extra\char`1\tt J\\ HP Laserjet Lo&\ \extra\char`1\tt K\\ Canon BJ300&\ \extra\char`1\tt B\\ \hline Print on File&\ \extra\char`1\tt P\\ Null Device&\ \extra\char`1\tt N\\ \hline \end{tabular} \marginlabel{Screen} Ausgabe auf Bildschirm in variabler Auf\/l"osung. Auch "uber die Tastenkombination \cstok{\sc Alternate}$+$\cstok{\sc S} einstellbar. \marginlabel{File} Ausgabe auf Datei zur Weiterverarbeitung mit {\tt DISPLAY} (siehe auch Anhang~\ref{ldisplay}). \marginlabel{NEC P6 Low} Ausgabe auf 24-Nadler mit NEC-kompatiblen Befehlssatz in $180\times 180$ dpi. \marginlabel{NEC P6 Mid} Ausgabe auf 24-Nadler mit NEC-kompatiblen Befehlssatz in $360\times 180$ dpi. \marginlabel{NEC P6 High} Ausgabe auf 24-Nadler mit NEC-kompatiblen Befehlssatz in $360\times 360$ dpi. \marginlabel{FX 80} Ausgabe auf 9-Nadler mit Epson-kompatiblen Befehlssatz in $240\times 216$ dpi. \marginlabel{HP Laserjet} Ausgabe auf Laserdrucker mit HP Laserjet II-kompatiblen Befehlssatz in $300\times 300$ dpi. \marginlabel{HP Laserjet Lo} Ausgabe auf Laserdrucker mit HP Laserjet II-kompatiblen Befehlssatz in $100\times 100$ dpi zur Previewzwecken. \marginlabel{Canon BJ300} Ausgabe auf entsprechenden Laserdrucker. \marginlabel{Print on File} Die Ausgabe erfolgt nicht auf die Schnittstelle zum Drucker, sondern auf eine Datei. Diese kann dann auf einem Rechner ausgedruckt werden, der "uber den eingestellten Drucker verf"ugt, aber kein \TeX-System installiert hat. \marginlabel{Null Device} Bei diesem Device erfolgt keine Ausgabe. Man kann dadurch schnell testen, ob auch alle Zeichens"atze vorhanden sind, oder ob in der {\tt .dvi}-Datei ein Fehler ist. \subsection[Der Setup Titel]{Der {\bf Setup} Titel} \begin{tabular}{|ll|} \hline \multicolumn{2}{|l|}{Top Windows}\\ \hline \multicolumn{2}{|l|}{Maximum Memory}\\ \multicolumn{2}{|l|}{Bitmap Memory}\\ \multicolumn{2}{|l|}{Clippath Memory}\\ \multicolumn{2}{|l|}{DVI in Memory}\\ \hline \multicolumn{2}{|l|}{Trace Fonts}\\ \multicolumn{2}{|l|}{Trace Memory}\\ \multicolumn{2}{|l|}{Trace Char's}\\ \hline PK-Font&Path\\ VF-Font&Path\\ TFM-File&Path\\ DVI-File&Path\\ IMG-Image&Path\\ GR-Include&Path\\ \hline \end{tabular} \marginlabel{Top Windows} Dieser Schalter beeinflu"st die \glqq Fensterpolitik\grqq. Man kann den st"andigen Wechsel zwischen Meldungs- und Grafikfenster an- und wieder ausschalten. \marginlabel{Maximum Memory} Einstellung der maximal angeforderten Speichermenge insgesamt. Sinnvoll bei Verwendung von Multitasking-Systemerweiterungen wie Mint, um noch Arbeitsspeicher f"ur andere Prozesse freizuhalten. Ein Wert von Null (Default) bewirkt das Aussch"opfen der Speicherkapazit"at. \marginlabel{Bitmap Memory} Beschr"ankung des maximal angeforderten Speicherbereichs f"ur die Grafikseite. \marginlabel{Clippath Memory} Beschr"ankung des maximal angeforderten Speicherbereichs f"ur den Clipalgorithmus der eingebauten Grafik. \marginlabel{DVI in Memory} Setzen dieses Schalters bewirkt das Laden der gesamten {\tt .dvi}-Datei in den Arbeitsspeicher, um die "Ubersetzung zu beschleunigen. \marginlabel{Trace Fonts} Durch diesen Schalter wird das Protokollieren eingeladener und ausgelagerter Zeichens"atze ein- und ausgeschaltet. \marginlabel{Trace Memory} Durch diesen Schalter wird das Protokoll "uber angeforderten und freigegebenen Speicher an- und ausgeschaltet. \marginlabel{Trace Char's} Durch diesen Schalter wird das Protokoll "uber {\em jedes\/} gesetzte Zeichen an- und ausgeschaltet. \marginlabel{{\tt PK}-Font Path} Einstellung der Fontpfade und -namen. Wie schon einmal bei \dvilw\ in Abschnitt \ref{dvilw} erl"autert, kann im Zusammenhang mit den Platzhaltern {\tt \%d, \%h, \%m, \%s} und {\tt \%v} der Name und Pfad der verwendeten Zeichens"atze dargestellt werden. Die Platzhalter haben folgende Entsprechungen: \begin{center} \begin{tabular}{|c|l|} \hline \%d & Zeichensatzgr"o"se in dpi \\ \%h & horizontale Ger"ateauf\/l"osung \\ \%m & {\tt MAG\_\_\_\_1.2} etc. \\ \%s & Zeichensatzname, z.B.\ {\tt cmr10} \\ \%v & vertikale Ger"ateauf\/l"osung \\ \hline \end{tabular} \end{center} Beispielsweise ergibt also eine Einstellung wie \begin{compout} FONTS/LASER/\%d/\%s.pk \end{compout} Zeichensatzpfade und -namen im Stil von \begin{compout} FONTS/LASER/111/cmr10.pk. \end{compout} Auf dem Atari~ST ist dieses (neue) Schema aus Gr"unden der Kompatibilit"at zur \TeX shell von Heidrich, Maluschka und Kie"sling nicht in den ausf"uhrbaren Programmen enthalten, sondern man mu"s --- wenn gew"unscht --- die Sourcen mit definierter Pr"aprozessorvariable {\tt PK\_FULLCONFIG} neu "ubersetzen. Das jetzige Schema ist wie folgt. Enth"alt die Zeichenkette {\em kein\/} \%-Zeichen, f"uhrt dies zur Generierung von Pfaden wie {\tt MAG\_\_\_\_1.440} und ist kompatibel zum \glqq Lindner\grqq-\TeX, ansonsten wird diese Zeichenkette als {\tt printf}-Formatstring interpretiert und mu"s die Vergr"o"serungsstufen der Zeichens"atze korrekt auf die tats"achliche Ordnerstruktur abbilden. Durch Angabe von \begin{compout} FONTS/LASER/\%d \end{compout} werden Pfade wie {\tt FONTS/LASER/360} gebildet. \marginlabel{{\tt VF}-Font Path} Einstellung des Pfades auf die virtuellen Zeichensatzinformationen. \marginlabel{{\tt TFM}-File Path} Einstellung des Pfades auf die Zeichensatzmetrikdateien, die von \dvi\ herangezogen werden, falls die {\tt PK}-Dateien fehlen. Auf diese Weise k"onnen wenigstens leere Boxen in der richtigen Breite gesetzt werden. \marginlabel{\dvi-File Path} Einstellung des Pfades auf die \dvid. \marginlabel{\img-Image Path} Einstellung des Pfades auf die \imgg. \marginlabel{GR-Include Path} Einstellung des Pfades auf Dateien, die Grafikbefehle des Treibers enthalten und "uber {\tt $\backslash$special\{gr input $\dots$\ \}} nachgeladen werden. \subsection[Der Options Titel]{Der {\bf Options} Titel} \begin{tabular}{|lr|} \hline H-Resolution&\\ V-Resolution&\\ \hline Landscape&\\ Separate&\\ Thin out&\\ Pictures&\\ Eject&\\ Single Sheet&\\ \hline Density&\\ \hline \end{tabular} \marginlabel{H-Resolution} Ger"ateauf\/l"osung horizontal in dpi. \marginlabel{V-Resolution} Ger"ateauf\/l"osung vertikal in dpi. \marginlabel{Landscape} Drehung des Ausdrucks um $90^\circ$. Nat"urlich darf die Seite nicht zu lang sein und f"ur die Outputroutinen fx80 und p6mid sind spezielle Zeichens"atze n"otig ($216 \times 240$~dpi und $180 \times 360$~dpi, logisch!). \marginlabel{Separate} Falls dieser Schalter gesetzt ist, werden bei Nadeldruckern zus"atzliche Druckdurchg"ange gestartet, um Ausdruck von nebeneinanderliegenden Nadeln zu trennen. Verdoppelt Druckzeit, aber erh"oht Qualit"at! \marginlabel{Thin out} Durch diese Option wird die erzeugte Seitenansicht \glqq ausged"unnt\grqq. Diese Option ist ein Ersatz f"ur \glqq Separate\grqq, f"uhrt jedoch nicht zu zwei Druckdurchg"angen. Die Qualit"at ist jedoch schlechter. \marginlabel{Pictures} Falls dieser Schalter gesetzt ist, werden die \imgg\ mit angezeigt, ansonsten erscheint nur ein leerer Rahmen. Ohne Bilder werden die Druckseiten deutlich schneller aufgebaut! \marginlabel{Eject} Seitenvorschub nach jeder Druckseite bei gesetztem Schalter. \marginlabel{Single Sheet} Falls Einzelblattverarbeitung mit manuellen Einspannen des Papiers beabsichtigt ist, wird durch diese Option der Druckvorgang am Seitenende jeweils unterbrochen und kann dann nach Einspannen des neuen Blatts fortgesetzt werden. \marginlabel{Density} Faktor zur Einstellung der Druckschw"arze der \imgg. Der Wert sollte zwischen $0.0$ und $1.0$ liegen, wobei $0.0$ Bilder wei"s auf wei"s erzeugt und $1.0$ sehr dunkle Bilder. Empfehlenswert ist $0.5$ auf Laserdruckern, $0.02$ auf Nadeldruckern. \section{DVI-X11/Motif-Version}\label{lx11} Die X11/Motif-Version von \dvi\ h"alt sich in Aussehen und Bedienung eng an den durch die {\sc Gem}-Version vorgegebenen Standard. Der Aufruf ist wie folgt: \begin{compout} dvi [-o] [dvifile] \end{compout} Alle Parameter sind optional, da auch interaktiv "uber Men"us einstellbar. Falls jedoch Parameter angegeben werden, ist die Reihenfolge zwingend vorgeschrieben. Wenn erw"unscht, m"ussen Optionen --- durch ein \cstok{-}-Zeichen eingeleitet --- zuerst angegeben werden. Danach kann der Dateiname der {\tt DVI}-Datei folgen. Beim Dateinamen werden fehlende Extensionen {\tt .DVI} bzw.\ {\tt .DVO} automatisch erg"anzt. Als Option steht momentan nur {\it -o\/} zur Verf"ugung. Danach mu"s ein Dateiname einer Optionsdatei angegeben werden, der nicht durch ein Leerzeichen von der Option getrennt sein darf. Alle anderen Optionen werden ignoriert! Falls keine Optionsdatei beim Aufruf angegeben wird, wird automatisch die Standardoptionsdatei {\tt DVI.DVO} geladen, sofern im Suchpfad vorhanden. Der Arbeitsbildschirm von \dvi\ in einer typischen {\tt X11}-Umgebung ist in Abbildung~\ref{lamotif} zu sehen. \begin{figure}[hbtp] \begin{center} \leavevmode\epsfxsize=\textwidth\epsfbox{dvimotif.ps} \end{center} \caption{Typische X11-Oberfl"ache mit \dvi}\label{lamotif} \end{figure} Nach dem Starten von \dvi\ werden zwei Fenster ge"offnet, das Meldungsfenster mit Men"uleiste und das Grafikfenster f"ur die Darstellung der \TeX-Seite. Zun"achst sollte das Grafikfenster mit der Maus in die gew"unschte Position und auf die richtige Gr"o"se gebracht werden. Falls ein Dateiname auf der Kommandozeile "ubergeben wurde, wird schon die erste Seite des Dokumentes angezeigt, sofern die Eintragungen der Default-Konfigurationsdatei stimmen. Falls keine Anzeige erscheint, sollten die Einstellungen der {\tt Setup}- und {\tt Options}-Men"us berichtigt werden und eine neue {\tt dvi.dvo}-Kon\-fi\-gu\-ra\-ti\-ons\-da\-tei erzeugt werden. Im Grafikfenster kann man durch Dr"ucken {\em und Halten\/} der linken Maustaste den Bildausschnitt verschieben (deshalb auch keine Scrollbalken). Dr"ucken der rechten Maustaste bringt folgendes Popup-Men"u: \begin{tabular}{|l|} \hline Next Page\\ Prev Page\\ Goto Page ...\\ Update Page\\ \hline Quit\\ \hline \end{tabular} Die m"oglichen Aktionen sind bis auf \glqq Update Page\grqq\ wohl selbsterkl"arend. Ein Update der Seite bedeutet, da"s s"amtliche "Anderungen, die zwischenzeitlich gemacht wurden, ber"ucksichtigt werden, d.h.\ neue Offsets oder z.B.\ eine im Multitasking neu erzeugte {\tt DVI}-Datei werden beachtet, und die Seite wird neu aufgebaut! Die Men"uleiste ist der Leiste der {\sc Gem}-Version sehr "ahnlich, als einziger Unterschied sind in der X11/Motif-Version einige Eintr"age der Men"utitel nicht vorhanden, weil unn"otig bzw.\ weil durch eigene grafische Bedienelemente repr"asentiert\footnote{Bedingt durch die deutlich h"ohere Bildschirmauf\/l"osung von X11/Motif-Workstations kann nat"urlich wesentlich mehr Platz f"ur die Benutzerf"uhrung verwendet werden}. Die einzelnen Titel der Men"uleiste werden im folgenden nur kurz vorgestellt, f"ur die Erkl"arung der Unterpunkte lesen Sie bitte in Abschnitt~\ref{lagemvers} unter den analogen "Uberschriften nach. Gleiches gilt f"ur die grafischen Bedienelemente, die jeweils ihre Entsprechung in Men"upunkten der {\sc Gem}-Version haben. Durch andauernde Entwicklung "andert sich das Aussehen der Oberfl"ache st"andig, so da"s leichte Abweichungen zum Screendump m"oglich sind, die aber nichts an der Funktionalit"at "andern! \subsection[Der File Titel]{Der {\bf File} Titel} \begin{tabular}{|l|} \hline Select File\\ \hline Load Options\\ Save Options\\ \hline Logfile\\ \hline Quit\\ \hline \end{tabular} \subsection[Der Print Titel]{Der {\bf Print} Titel} \begin{tabular}{|l|} \hline Format Pages\\ Magnification\\ \hline \end{tabular} \subsection[Der Setup Titel]{Der {\bf Setup} Titel} \begin{tabular}{|l|} \hline Clippath Memory\\ Maximum Memory\\ \hline PK-Font Path\\ VF-Font Path\\ TFM-File Path\\ IMG-Image Path\\ GR-Include Path\\ DVI-File Path\\ \hline \end{tabular} \subsection[Der Margins Titel]{Der {\bf Margins} Titel} \begin{tabular}{|lr|} \hline H-Offset&\\ V-Offset&\\ \hline H-Spread&\\ V-Spread&\\ \hline \end{tabular} \subsection[Der Options Titel]{Der {\bf Options} Titel} \begin{tabular}{|lr|} \hline H-Resolution&\\ V-Resolution&\\ \hline \end{tabular} \input dviamiga \section{DVI-Kommandozeilenversion}\label{kdover} Die Kommandozeilenversion kann mit oder ohne Optionen aufgerufen werden. Bei Aufruf mit Optionen hat die Kommandozeile folgendes Aussehen: \begin{compout} dvi \ -i\ -f\ -o\ -l\ \end{compout} {\tt \} ist dabei der Name der {\tt DVI}-Datei, \<{\tt opt}> der Name der Optionendatei, {\tt xxx}, {\tt yyy}, {\tt zzz} sind eine Formatanweisung, {\tt out} ist ein Ausgabeger"at (siehe {\it output\/}-Option) und {\tt log} ist der Name einer Protokolldatei. Zwischen den Schaltern und ihren Parametern darf ein Leerzeichen stehen. Die Reihenfolge der Parameter ist frei und die Angabe optional. Die Erkl"arung der Kommandozeilenschalter ist (Gro"s - und Kleinschreibung erlaubt: \marginlabel{\tt -i\} Die \dvi-Optionen werden aus der Datei \ gelesen. Standardoptionsdateien, d.h.\ die "ublicherweise mitgeliefert werden, sind: \begin{itemize} \item DVI.OPT\\ Diese Optionsdatei wird beim Aufruf standardm"a"sig geladen, falls sie vorhanden ist und sollte systemspezifische Anpassungen enthalten. \item SCREEN.OPT\\ Optionen f"ur Monitoranzeige in variabler Auf\/l"osung. \item APOLLO.OPT\\ Optionen f"ur Monitoranzeige auf Apollo-Workstations mit etwas gr"o\-"se\-ren Zeichens"atzen. \item P6H.OPT\\ Optionen f"ur 24-Nadeldrucker mit $360 \times 360$ dpi. \item P6M.OPT\\ Optionen f"ur 24-Nadeldrucker mit $360 \times 180$ dpi. \item P6L.OPT\\ Optionen f"ur 24-Nadeldrucker mit $180 \times 180$ dpi. \item FX80.OPT\\ Optionen f"ur 9-Nadeldrucker mit $240 \times 216$ dpi. \end{itemize} Die Erkl"arung der Optionen erfolgt im n"achsten Abschnitt. \marginlabel{\tt -f\, -f\, -f\} Die Formatanweisung w"ahlt die zu bearbeitenden Seiten des Dokuments aus. {\tt xxx} ist die Startseite, {\tt yyy} die letzte Seite und {\tt zzz} gibt die Schrittweite an. Die Parameter entsprechen nicht den \TeX-Seitennummern, sondern der Reihenfolge der Seiten in der {\tt DVI}-Datei! Wird die Formatanweisung angegeben, startet \dvi\ sofort mit der Bearbeitung der Seiten, ansonsten wird in den interaktiven Bearbeitungsmodus geschaltet und es erscheint der Prompt {\tt DVI>}. \marginlabel{\tt -o\} Das Ausgabeger"at wird durch {\tt \} bestimmt. G"ultige Angaben sind sind bei der Erkl"arung der {\tt output}-Option nachzulesen. \marginlabel{\tt -l\} Der Treiber protokolliert seine T"atigkeiten in der Datei {\tt \}. \subsection*{Optionen} Die \dvi-Optionen werden entweder im interaktiven Modus per Tastatur oder beim Aufruf per Datei mittels {\tt -i\} eingegeben. Bei sichtbarem Prompt {\tt DVI>} kann eine Optionsdatei auch nachtr"aglich durch Eintippen ihres Namens geladen werden. Die Parameter der Optionen sind {\it dimen\/} f"ur g"ultige \TeX-L"angenangaben wie 1.1~{\it cm}, 7~{\it pt}, 0.3~{\it in}, usw; {\it mag\/} f"ur Vergr"o"serungsfaktoren mit Standard $1000$, Faktor $1.2 = 1200$, usw; {\it dpi\/} f"ur Ger"ateauf\/l"osungen; {\it path\/} f"ur Pfade. \marginlabel{\it hresolution \} Horizontale Auf\/l"osung in dpi. \marginlabel{\it vresolution \} Vertikale Auf\/l"osung in dpi. \marginlabel{\it pkpath \} Pfad und Name zum Suchen der {\tt PK}-Dateien. Mehrere Angaben werden --- je nach Betriebssystem --- durch \cstok{;} oder \cstok{:} getrennt. Kein Leerzeichen vor und nach dem \cstok{;}! Wie schon einmal bei \dvilw\ in Abschnitt \ref{dvilw} erl"autert, kann im Zusammenhang mit den Platzhaltern {\tt \%d, \%h, \%m, \%s} und {\tt \%v} der Name und Pfad der verwendeten Zeichens"atze dargestellt werden. Die Platzhalter haben folgende Entsprechungen: \begin{center} \begin{tabular}{|c|l|} \hline \%d & Zeichensatzgr"o"se in dpi \\ \%h & horizontale Ger"ateauf\/l"osung \\ \%m & {\tt MAG\_\_\_\_1.2} etc. \\ \%s & Zeichensatzname, z.B.\ {\tt cmr10} \\ \%v & vertikale Ger"ateauf\/l"osung \\ \hline \end{tabular} \end{center} Beispielsweise ergibt also eine Zuweisung wie \begin{compout} pkpath=D:$\backslash$FONTS$\backslash$\%d$\backslash$\%s.pk \end{compout} Zeichensatzpfade und -namen im Stil von \begin{compout} D:$\backslash$FONTS$\backslash$111$\backslash$cmr10.pk. \end{compout} %Enth"alt die Pfadangabe {\em kein\/} %\%-Zeichen, generiert der Treiber Pfade wie {\tt MAG\_\_\_\_1.440} und ist %kompatibel zum \glqq Lindner\grqq-\TeX. Ansonsten wird die Zeichenkette %als {\tt print}-Formatstring interpretiert und der \%-Ausdruck mu"s die Ordnerstruktur %der Zeichens"atzvergr"o"serungsstufen wiedergeben. \marginlabel{\it tfmpath \} Pfad zum Suchen der {\tt TFM}-Dateien, die gebraucht werden, wenn eine {\tt PK}-Datei nicht vorhanden ist, um wenigstens leere Boxen der richtigen Breite zu erzeugen, bzw.\ die bei Verwendung virtueller Zeichens"atze gebraucht werden. \marginlabel{\it vfpath \} Pfad zum Suchen der virtuellen Zeichensatzdefinitionen {\tt .VF}. \marginlabel{\it imgpath \} Pfad zum Suchen der \img-Dateien. Mehrere Angaben werden durch \cstok{;} oder \cstok{:} getrennt. Kein Leerzeichen vor und nach dem Trennzeichen! \marginlabel{\it grpath \} Pfad zum Suchen der nachtr"aglich mit {\tt $\backslash$special\{gr input $\dots$ \}} einzuladenden Grafikdateien. \marginlabel{\it path \} Pfad zum Suchen der \dvid. Mehrere Angaben werden durch \cstok{;} getrennt. Kein Leerzeichen vor und nach dem \cstok{;}! \marginlabel{\it output \} Gibt Ausgabeger"at an. Bisher sind definiert: \begin{itemize} \item screen\\ Monitor mit variabler Auf\/l"osung, je nach Computer. \item file\\ Datei zur Weiterverarbeitung durch {\tt DISPLAY} (siehe auch Anhang~\ref{ldisplay}). \item fx80\\ Epson kompatibler 9-Nadler mit $240 \times 216$ dpi. \item p6low\\ NEC P6 kompatibler 24-Nadler mit $180 \times 180$ dpi. \item p6mid\\ NEC P6 kompatibler 24-Nadler mit $360 \times 180$ dpi. \item p6high\\ NEC P6 kompatibler 24-Nadler mit $360 \times 360$ dpi. \item hplow\\ HP Laserjet kompatibler Laserdrucker mit $100\times 100$ dpi. \item hphigh\\ HP Laserjet kompatibler Laserdrucker mit $300\times 300$ dpi. \item bj300\\ Canon BJ300 kompatibler Laserdrucker mit $300\times 300$ dpi. \item null\\ Null-Device zu Testzwecken (Zeichens"atze vorhanden, \dvi-Datei in Ordnung). \end{itemize} \marginlabel{\it format \} Angabe der zu bearbeitenden Seite(n). Die Anwendung entspricht dem {\tt -f} Schalter, nur da"s zwischen den Parametern und der Option ein Leerzeichen stehen mu"s und da"s bei Verwendung ohne Parameter die gesamte \dvi-Datei bearbeitet wird. \marginlabel{\it lower, upper} Ausgabesteuerung "uber die internen \TeX-Seitenz"ah\-ler {\tt $\backslash$count0} bis {\tt $\backslash$count9}. \marginlabel{\it copies \} Druckt $n$ Kopien von jeder Seite. \marginlabel{\it magnification \} Seitenvergr"o"serung. Falls mit Null belegt, wird der Wert aus der \dvi-Datei verwendet. \marginlabel{\it width \} Seitenbreite. Falls mit Null belegt, wird der Eintrag der \dvi-Datei "ubernommen. \marginlabel{\it height \} Seitenh"ohe. Falls mit Null belegt, wird der Eintrag der \dvi-Datei "ubernommen. \marginlabel{\it hoffset \} Seitenverbreiterung links. Negative Werte mit entgegengesetztem Effekt sind m"oglich. Parameter wirkt additiv auf {\it hmargin}. \marginlabel{\it voffset \} Seitenverl"angerung oben. Negative Werte mit entgegengesetztem Effekt sind m"oglich. Parameter wirkt additiv auf {\it vmargin}. \marginlabel{\it hmargin \} Einr"uckung der Druckseite nach rechts. Negative Werte mit entgegengesetztem Effekt sind m"oglich. \marginlabel{\it vmargin \} Einr"uckung der Druckseite nach unten. Negative Werte mit entgegengesetztem Effekt sind m"oglich. \marginlabel{\it hspread \} Seitenverbreiterung rechts. Negative Werte mit entgegengesetztem Effekt sind m"oglich. \marginlabel{\it vspread \} Seitenverl"angerung unten. Negative Werte mit entgegengesetztem Effekt sind m"oglich. \marginlabel{\it eject \} Seitenvorschub nach Druckseite an/aus. \marginlabel{\it page [\]} Seitenvorschub am Dru"cker, ggf.\ {\it \}-fach. Sehr geeignet, um druckerwarmes Toilettenpapier zu produzieren. F"ur optimale Ergebnisse sollte das Papier aber nicht zu glatt sein. \marginlabel{\it separate \} Steuert Druckqualit"at. Falls auf \cstok{on}, wird die Anzahl der Druckdurchg"ange verdoppelt, wobei bei einem Durchgang nur jeweils {\em nichtbenachbarte\/} Nadeln dru"cken. \marginlabel{\it singlesheet \} Umschlaten auf Einzelblattbetrieb mit Wartestellung nach jeder Seite bzw.\ Endlospapier ohne Warten. \marginlabel{\it landscape \} Drehung des Ausdrucks um $90^\circ$. Nat"urlich darf die Seite nicht zu lang sein und f"ur die Outputroutinen fx80 und p6mid sind spezielle Zeichens"atze n"otig ($216 \times 240$~dpi und $180 \times 360$~dpi, logisch!). \marginlabel{\it pictures \} Schalter zum Weglassen der \imgg. An Stelle der Grafiken wird ein leerer Rahmen angezeigt. Dadurch wird der Druckseitenaufbau deutlich schneller! \marginlabel{\it density \} Faktor zum Einstellen des \glqq Dunkelwertes\grqq\ bei \imgg, der zwischen $0.0$ und $1.0$ liegen soll. Ein Wert von $n=1.0$ entspricht der dunkelsten Darstellung. \marginlabel{\it thinout \} Das \glqq Ausd"unnen\grqq der erzeugten Seite wird an-/ausgeschaltet. \marginlabel{\it port \} Setzt auf {\tt IBM PC}-Kompatiblen den Ausgabeport. G"ultige Werte liegen zwischen 0 und 3, entsprechend den Ports {\tt LPT0}-- {\tt LPT3}. \marginlabel{\it callmf \} Diese Option existiert nur auf Amiga-Implementationen und erh"alt den Namen eines {\tt ARexx}-Scripts, das einen nichtvorhandenen Zeichensatz evtl.\ zur Laufzeit generiert. Es stehen die Scripts {\tt Make\-Pk\-Font.rexx} und {\tt Make\-Pk\-Font\-Batch.rexx} zur Verf"ugung, die im {\tt REXX:}-Verzeichnis stehen m"ussen. \marginlabel{\it memory \} Bei eingeschalteter Option wird die gesamte \dvi-Datei in den Speicher gelesen und dadurch schneller bearbeitet. \marginlabel{\it showfonts \} An- bzw.\ Ausschalten des Zeichensatzprotokolls. \marginlabel{\it tracemem \} An- bzw.\ Ausschalten des Speicherprotokolls. \marginlabel{\it tracechars \} An- bzw.\ Ausschalten des Zeichenprotokolls. Vorsicht, f"ur jedes einzelne verwendete Zeichen wird angegeben, aus welchem Zeichensatz es stammt und welches Zeichen ausgegeben wurde! \marginlabel{\it maxmem \} Auf Multitaskingsystemen kann durch Angabe einer maximalen Speichergr"o"se {\it \} Bytes Platz f"ur andere Applikationen freigehalten werden. Ansonsten nimmt sich \dvi\ soviel Speicher, als n"otig. \marginlabel{\it pixmem \} F"ur den Aufbau der Textbitmap werden nur {\it \} Bytes verwendet, anstatt soviel als vorhanden bzw.\ notwendig. Auf diese Weise kann bei Maschinen mit wenig Speicher bei sehr vielen verwendeten Zeichens"atzen durch Beschr"ankung der Bitmapgr"o"se dennoch ein Ausdruck erzeugt werden, jedoch in mehreren Durchg"angen. Mit dieser Variable sollte experimentiert werden, wenn die \dvi-Meldung \glqq{\it Out of memory }\grqq\ erscheint! \marginlabel{\it pathmem \} Mit diesem Befehl kann der Speicherplatz f"ur Clipoperationen der Grafikbefehle festgelegt werden. Evtl.\ kann die Voreinstellung bei komplizierten Operationen zu niedrig sein bzw.\ kann dieser Speicher f"ur kritische Texte ohne Grafik zum Aufbau der Textbitmap herangezogen werden. \marginlabel{\it redirect \} Falls mit dieser Variable ein Dateiname angegeben wird, wird nicht direkt auf dem Drucker gedruckt, sondern in die angegebene Datei. Diese Datei kann dann auf einem anderen Rechner ausgedruckt werden, ohne da"s ein \TeX-System installiert ist. \marginlabel{\it dvifile \} Neue \dvi-Datei {\it name\/} bearbeiten, ohne \dvi\ zu verlassen. \marginlabel{\it logfile \} Statistiken, wie gewohnt. Per Voreinstellung ausgeschaltet! \marginlabel{\it input \, name} Die Optionsdatei \<{\it name\/}> bzw.\ \<{\it name.opt\/}> wird geladen. Entspricht dem Schalter {\tt -i}. \marginlabel{ \hfill{\it options},\\ \hfill{\it options \}} Ohne Parameter werden die Optionen mit ihren aktuellen Parametern ausgegeben. Mit Parameter wird eine Optionsdatei {\tt \} geschrieben. \marginlabel{\it exit} \dvi\ verlassen. Der Druckpuffer von 16 KByte wird allerdings noch fertig ausgedruckt. S"amtliche Optionen k"onnen auch abgek"urzt verwendet werden, soweit dies m"oglich ist. Anstelle von \glqq{\it format\/}\grqq\ kann auch \glqq{\it f\/}\grqq\ oder anstelle von \glqq{\it output\/}\grqq\ kann \glqq{\it out\/}\grqq\ angegeben werden, usw. Einfach probieren! \subsection*{Environment} Auf PC-kompatiblen Rechnern kann "uber die Environmentvariable {\tt GRAFX} eine Anpassung an bestimmte Grafikkarten vorgenommen werden, die der Erkennungsalgorithmus nicht automatisch vornehmen kann bzw.\ kann man andere Grafikmodi einstellen, als die automatische Erkennung. Die allgemeine Syntax des {\tt GRAFX}-Environments ist wie folgt: \begin{compout} SET GRAFX=mode,lines,bytes,code[,fgc,bgc] \end{compout} wobei grunds"atzlich die ersten vier Parameter angegeben werden m"ussen, jeweils durch Komma {\em ohne zus"atzliche Leerzeichen\/} getrennt. Die Bedeutung der Parameter ist wie folgt: \marginlabel{{\tt mode}} Der einzustellende Grafikmodus der Grafikkarte in Dezimal. \marginlabel{{\tt lines}} Die Anzahl der Bildschirmzeilen im eingestellten Grafikmodus. \marginlabel{{\tt bytes}} Die Anzahl Bytes pro Bitplane einer Bildschirmzeile. \marginlabel{{\tt code}} Die Auswahl der Funktion, die das Bitmuster einer \TeX-Seite in den Bildschirmspeicher kopiert. Dabei stehen folgende M"oglichkeiten zur Auswahl (Gro"sschreibung zwingend vorgeschrieben!): \begin{itemize} \item LOW\\ Bildschirmzeilen mit gerader Zeilennummer sind beginnend bei Segmentadresse {\tt B800} abgespeichert, solche mit ungerader Zeilennummer bei Segmentadresse {\tt BA00}. Dies entspricht dem {\tt CGA}-Grafikmodus 6 bei einer Auf\/l"osung von $640\times 200$ Bildschirmpixeln. \item MID\\ Die Bildschirmzeilen sind entsprechend einer modulo 4-Rech\-nung beginnend bei den Segmentadressen {\tt B800}, {\tt BC00}, {\tt A800} bzw.\ {\tt AC00} abgespeichert, wobei in jeweils zwei aufeinanderfolgenden Bits ein Bildschirmpixel codiert ist, also vier Farben zur Verf"ugung stehen. Dies entspricht einem speziellen {\tt CGA}-Grafikmodus 9 bei einer Auf\/l"osung von $640\times 400$ Bildschirmpixeln, der bei "alteren Rechnern vom Typ {\tt NCR PC8} verf"ugbar ist. \item HIGH\\ Die Grafikinformation ist beginnend bei Segmentadresse {\tt A000} in vier Bitplanes abgespeichert. Dies entspricht den hochauf\/l"osenden Grafikmodi 16 ({\tt EGA}) bzw.\ 18 ({\tt VGA}) bei einer Auf\/l"osung von $640\times 350$ bzw.\ $640\times 480$ Bildschirmpixeln. Das Bitmuster wird durch direkte Programmierung des Grafikkontrollers der Karte "ubertragen. Dieser Modus funktioniert normalerweise auch bei sog.\ {\tt Super-VGA}-Karten in den 16-Farb-Grafikmodi. \item MONO\\ Die Bildschirmzeilen sind entsprechend einer modulo 4-Rech\-nung beginnend bei den Segmentadressen {\tt B000}, {\tt B200}, {\tt B400} bzw.\ {\tt B800} abgespeichert, wobei einem Bit jeweils ein Bildschirmpixel entspricht, also zwei Farben zur Verf"ugung stehen. Dies entspricht dem Grafikmodus einer {\tt Hercules}-Karte bei einer Auf\/l"osung von $720\times 348$ Bildschirmpixeln. \end{itemize} \marginlabel{{\tt fgc, bgc}} Bei den {\tt HIGH}-Modi kann zus"atzlich die Farbe der Bildschirmdarstellung gew"ahlt werden. Seit die Treiber Freeware Status haben, ist dies die erste Verbesserung von Benutzerseite. F"ur die Implementierung und Dokumentation gilt an dieser Stelle Herrn Hans-Joachim T"opfer unserer besonderer Dank! Es bedeuten: $$\begin{tabular}{l@{:\quad}l} {\sf fgc}&die Vordergrundfarbe,\\ {\sf bgc}&die Hintergrundfarbe. \end{tabular}$$ Die Farben werden entsprechend dem {\tt EGA}-Standard erzeugt. Die Syntax f"ur die Farbeintr"age ist folgende: \begin{center}\tt \begin{tabbing} {\sf color\_name}::=\=BLACK|BLUE|GREEN|CYAN|RED|MAGENTA|\kill {\sf fgc}|{\sf bgc}::={\sf color}\\ {\sf color}::={\sf number}|\{LIGHT|BRIGHT|DARK|{\sf secondary\_color}\}{\sf primary\_color}\\ {\sf secondary\_color}|{\sf primary\_color}::={\sf color\_name}\\ {\sf color\_name}::=\=BLACK|BLUE|GREEN|CYAN|RED|MAGENTA|\\ \>BROWN|GRAY|YELLOW|WHITE\\ \end{tabbing} \end{center} Die Farbnummern ergeben sich aus einer 6-stelligen Dualzahl {\tt rgbRGB}. {\tt R}, {\tt G}, bzw. {\tt B} aktivieren die Farben {\sf Rot}, {\sf Gr"un}, bzw.\ {\sf Blau} in der Prim"ar-Intensit"at, {\tt r}, {\tt g}, bzw.\ {\tt b} in der schw"acheren Sekund"ar-Intensit"at. Beim EGA-Standard wird folgende Codierung verwendet: $$\begin{tabular}{l@{:\quad}r}\tt BLACK&0\\ BLUE&1\\ GREEN&2\\ CYAN&3\\ RED&4\\ MAGENTA&5\\ BROWN&20\\ GRAY&7\\ YELLOW&62\\ WHITE&63 \end{tabular}$$ Bei den Farbnamen im {\tt GRAFX}-Eintrag definiert die {\sf primary\_color} die {\tt RGB}-Bits, die {\sf secondary\_color} die {\tt rgb}-Bits. Die Zus"atze haben folgende Bedeutung: $$\begin{tabular}{l@{\quad}l} {\tt DARK}&${\sf primary\_color}={\tt BLACK};$\\ {\tt BRIGHT}&${\sf secondary\_color}={\sf primary\_color};$\\ {\tt LIGHT}&${\sf secondary\_color}={\tt WHITE};$ \end{tabular}$$ Es gibt z.B. $$\begin{tabular}{l@{\quad}l} {\tt Red}&(codiert als 4)\\ {\tt DarkRed}&(codiert als 32)\\ {\tt BrightRed}&(codiert als 36)\\ {\tt LightRed}&(codiert als 60)\\ {\tt WhiteRed}&(codiert als 60)\\ {\tt RedWhite}&(codiert als 39) \end{tabular}$$ Bei Grafikkarten mit dem {\tt ET4000}-Chip und 1 MB Bildschirmspeicher funktionieren nun auch die Modi mit $1024\times 768$ und $1280\times 1024$ Pixeln. Die Farbnamen k"onnen der besseren "Ubersichtlichkeit halber mit gro"sen und kleinen Buchstaben (auch gemischt) geschrieben werden. Tabelle~\ref{lgrafx} gibt einige Beispiele mit kurzer Erkl"arung. Alle F"alle, die mit {\em Standard\/} bezeichnet werden, sollten durch den Grafikkartenerkennungsalgorithmus automatisch eingestellt werden, wobei jeweils der h"ochstauf\/l"osende Modus verwendet wird. Wer jedoch gerne auf seiner {\tt Super-VGA} mit $640\times 200$ Pixeln im {\tt CGA}-Modus arbeitet bzw.\ arbeiten mu"s, weil der Monitor nicht mitspielt, der kann seiner Grafikkarte zwangsweise Schonkost verordnen $\dots$ \begin{figure}[hbtp]\centering \begin{tabular}{|l|l|} \hline \tt SET GRAFX=6,200,80,LOW & Standard {\tt CGA}\\ \tt SET GRAFX=16,350,80,HIGH & Standard {\tt EGA}\\ \tt SET GRAFX=18,480,80,HIGH & Standard {\tt VGA}\\ \tt SET GRAFX=135,348,90,MONO & Standard {\tt Hercules}\\ \tt SET GRAFX=?,600,100,HIGH & {\tt Super-VGA}\\ \tt SET GRAFX=41,600,100,HIGH,BLACK,WHITE & {\tt ET4000} $800\times600$\\ & Schwarz auf Wei"s\\ \tt SET GRAFX=55,768,128,HIGH,GREEN,BLACK & {\tt ET4000} $1024\times 768$\\ & Gr"un-Monochrom\\ \tt SET GRAFX=61,1024,160,HIGH & {\tt ET4000} $1280\times 1024$\\ \hline \end{tabular} \caption{Beispiele f"ur {\tt GRAFX}-Environments}\label{lgrafx} \end{figure} {\em Beachten Sie bitte, da"s bei Verwendung des\/ {\tt GRAFX}-Environments keinerlei "Uberpr"ufung der Hardware stattfindet, sondern Sie in eigener Verantwortung handeln. Mit den falschen Parametern k"onnen Sie ohne weiteres Ihren Monitor zerst"oren. Aus diesem Grund m"ussen Sie eine eventuelle\/ {\tt GRAFX}-Einstellung auch explizit best"atigen! Andererseits k"onnen Sie nat"urlich kleine Unzul"anglichkeiten bei der automatischen Grafikkartenerkennung durch Setzen dieser Environmentvariablen ausgleichen. So werden manche\/ {\tt Hercules}-Karten nur bei jedem zweiten\/ \dvi-Durchlauf als solche erkannt. In diesem Fall sollte man auf\/ {\tt GRAFX} zur"uckgreifen. Gleiches gilt nat"urlich f"ur spezielle Grafikmodi exotischer Karten.} \section{Arbeitsweise von \dvi} Nachdem alle Optionen eingegeben wurden, wird die Bearbeitung durch eine \glqq {\it format\/}\grqq\ bzw.\ \glqq Start Print\grqq-Anweisung gestartet. Der Speicherbedarf f"ur eine Seite wird berechnet, die Zeichens"atze geladen und die erste Seite (evtl.\ in mehreren Durch\-g"an\-gen) im Speicher aufgebaut und angezeigt/gedruckt. Bei der Bildschirmanzeige wird evtl.\ nur ein Ausschnitt der Seite angezeigt. Die nichtsichtbaren Teile k"onnen durch Scrollbalken oder der Cursor-Tasten (alle Rechner) in das sichtbare Fenster verschoben werden. Hat man sich an der Bildschirmseite sattgesehen, kann man durch Dr"ucken von \cstok{{\tt N}} die n"achste Seite zur Anzeige bringen (oder den n"achsten Durchgang f"ur dieselbe Seite starten) bzw.\ durch Dr"ucken von \cstok{{\tt Q}} die R"uckkehr in die interaktive Optionseingabe erzwingen. Wird bei der letzten Seite der Formatangabe versucht, eine weitere Seite des Dokumentes zur Anzeige zu bringen, kehrt man trotzdem zur Optionseingabe zur"uck. \section{Besonderheiten} Falls Zeichens"atze fehlen, wird eine Datei {\tt missing.fnt} bzw.\ {\tt MISSING.BAT} zur automatischen Generierung erzeugt, die auf Atari-Rechnern zur \TeX{}shell des Lindner-\TeX\ kompatibel ist und auf {\tt UNIX}-Rechnern sowie {\sc Amiga}s ein Shell-Script ist, das nach Eingabe von {\tt ./missing.fnt } auf {\tt UNIX}-Maschinen bzw.\ {\tt execute missing.fnt } auf dem {\sc Amiga} die Zeichens"atze automatisch erzeugt. {\tt } steht hierbei f"ur den \MF-Namen des entsprechenden Aus\-ga\-be\-ge\-r"a\-tes ({\tt atari\_screen, One\-Zero\-Zero, apollo\_screen}, etc.). Auf PC-kompatiblen Rechnern werden die Zeichen\-s"atze durch den Batchjob "uber weitere spezielle Batchjobs automatisch erzeugt. Auf dem Amiga kann alternativ ein in der Konfigurationsvariablen {\tt CALLMF} angegebenes externes {\tt ARexx}-Programm gestartet werden, das dann entweder den Zeichensatz generiert, oder eine entsprechende Batchdatei erzeugt/erweitert. Im Fall von {\tt Make\-PK\-Font.rexx} wird versucht, den fehlenden Font direkt zu erzeugen. Falls Zeichens"atze fehlen, erfolgt eine Abfrage, ob die Bearbeitung abgebrochen werden soll, oder ob mit leeren Bitmustern f"ur die fehlenden Buchstaben gearbeitet werden soll. Falls Sie Zeichens"atze mit {\tt missing.fnt} auf {\tt UNIX}-Ger"aten erzeugt haben, sollten Sie die entstandenen Dateien, die auf {\tt pk} enden, in den entsprechenden Ordner \begin{compout} /usr/local/lib/tex/pk101 {\rm bzw.}\\ /usr/local/lib/tex/pk120 \end{compout} kopieren, um diese Zeichens"atze permanent zur Verf"ugung zu haben. Auf {\sc Amiga}-Computern werden die erzeugten Zeichens"atze direkt im ersten in der Konfigurationsvariablen {\tt PKPATH} angegebenen Verzeichnis abgelegt. Die durch \MF\ erzeugten tempor"aren Dateien werden hier automatisch gel"oscht. Auf allen Computern ist es sinnvoll, die Tempor"ardateien der Zeichensatzerzeugung, n"amlich die auf {\tt gf} endenden Dateien und Dateien mit Endung {\tt .log} und {\tt .tfm} zu l"oschen, falls dies nicht schon, wie auf dem {\sc Amiga}, geschehen ist. Nat"urlich kann jede beliebige Auf\/l"osung am Bildschirm dargestellt werden, wenn nur die Zeichens"atze vorhanden sind. Wird z.B.\ \dvi\ aufgerufen mit \begin{compout} DVI -Ip6h$\,${\rm ,} \end{compout} wird das Programm mit den Standardoptionen f"ur die Druckausgabe an 24-Nadlern mit $360 \times 360$~dpi geladen und es erscheint der Prompt {\tt DVI>}. Werden nun als weitere Optionen {\tt out screen}, sowie {\tt hres=360} und {\tt vres=360} angegeben, wird nicht gedruckt, sondern alles in der Auf\/l"osung $360 \times 360$~dpi am Bildschirm angezeigt. Bei z.B.\ der {\tt GEM}-Version reicht das Neusetzen des {\tt PK}-Pfades und das Einstellen der Auf\/l"osung (H-Resolution/V-Resolution), um dasselbe Ergebnis zu erzielen. Nat"urlich sind wegen der Gr"o"se des Bitmusters wahrscheinlich --- abh"angig vom Speicherausbau Ihres Computers --- mehrere Durchg"ange pro Seite erforderlich. \section{Installation} Zur Installation m"ussen lediglich die entsprechenden Dateien --- {\tt dvi} bei {\tt UNIX} und {\sc Amiga}, {\tt dvi.prg} bei Atari~ST oder {\tt dvi.exe} bei {\tt MS-DOS} --- in einen Ordner kopiert werden, der im Systemsuchpfad enthalten ist und einige Pfade und Optionen richtig eingestellt werden. Will man \dvi\ auf dem {\sc Amiga} nur von der {\tt Workbench} aus benutzen, so mu"s \dvi\ nichteinmal im Pfad stehen. Bei den {\sc Gem}- und {\tt Motif}-Versionen m"ussen au"serdem alle Optionsdateien {\tt .DVO} gel"oscht und neu erzeugt werden, da bei neu hinzugekommenen Optionen die Bin"arformate der Dateien inkompatibel sind. Als Benutzer merken Sie allerdings von diesen Inkompatibilit"aten erst etwas, wenn der Treiber sich seltsam verh"alt. Bitte Vorsicht! F"ur die Kommandozeilenersion ist die Klartextdatei {\tt dvi.opt} entsprechend anzupassen. F"ur den {\sc Amiga} wird es in der n"aheren Zukunft ein Installationsscript f"ur den {\tt Installer} von Commodore geben, mit dem dann die oben beschriebenen Aktionen nicht mehr zu Fu"s erledigt werden m"ussen. Zum Arbeiten mit reinen Texten ohne Grafik mu"s der Name und Pfad der Zeichens"atze entsprechend der Organisation der Zeichensatzdateien auf der Festplatte eingestellt werden. Bei {\tt UNIX} ist per Voreinstellung \begin{compout} ./\%s.\%dpk.:/usr/local/lib/tex/pk\%h/\%s.\%dpk \end{compout} eingebaut, wobei alle Auf\/l"osungsstufen eines Zeichensatzes in einem dieser beiden Ordner liegen. Bei Systemen mit 8~Zeichen langen Dateinamen und 3~Zeichen langen Erweiterungen sind die Auf\/l"osungsstufen der Zeichens"atze naturgem"a"s nicht im Dateinamen unterzubringen. Man hilft sich dahingehend, da"s die Zeichensatznamen nur aus dem Basisnamen bestehen --- z.B.\ {\tt cmr10} --- und die Endung {\tt .pk} erhalten. Die Auf\/l"osungsstufen der Zeichens"atze werden auf eine Ordnerhierarchie abgebildet, wobei die Ordnernamen die Vergr"o"serungsstufe --- z.B.\ {\tt mag\_\_\_\_1.000} --- oder die Auf\/l"osung in dpi --- z.B.\ {\tt 101} --- bezeichnen. Diese Auf\/l"osungsstufe errechnet sich zu Ger"ategrundauf\/l"osung * Vergr"o"serungsstufe, hier also 101~dpi * {\tt 1.000}. Au"serdem mu"s diese Ger"ategrundauf\/l"osung "uber die Optionen {\tt hres} und {\tt vres} eingestellt werden. Sollen schlie"slich noch Fremdgrafiken eingebunden werden, die sich nicht im aktuellen Arbeitsordner befinden, sind die Pfade {\tt PS} und {\tt IMG} entsprechend zu setzen. Gleiches gilt bei eingebauten Grafikbefehlen, die "uber externe Dateien mittels {\tt $\backslash$special\{gr input $\dots$\ \}} eingeladen werden.