Die Programme IniMF und VirMF verwenden zur Einrichtung ihrer Konfiguration die Datei mfmemory.config, die in einzelnen Zeilen Anweisungen der Form
set memmax 100000 set screenheight 400 set scalefactor 2enthalten sollte. Die Beispieldatei im config-Verzeichnis , set`zt die in meiner gegenwärtigen Standardkonfiguration verwendeten Werte, die etwas höher sind als die internen Vorgabewerte. Nicht alle Einstellungen müssen in dieser Datei angegeben werden. Beachten Sie aber, daß Sie auch nicht alle Einstellungen bis zum Maximum hochdrehen können – dazu müßten Sie mehr als 8 Gigabyte freien Speicher haben!
Wenn Sie eine Standard-base-Datei mit IniMF erzeugen, so ist
jede weitere Änderung der Konfiguration mfmemory.config zulässig
für VirMF in Verbindung mit dieser speziellen base-Datei, außer
Änderungen am Wert memtop. Dies führt zur -Meldung
„(Fatal base file error; I'm stymied)``, was anzeigt, daß
diese base-Datei von einem IniMF mit einer anderen Konfiguration
stammt.
Hier ist eine vollständige Liste aller Parameter, die in der Konfigurationsdatei zulässig sind, ihre Vorgabewerte und einige Regeln für ihre kleinsten und größten Werte:
Bezeichnung | Vorgabe | Grenzwert | Zweck |
memmax | 30000 | maxhalfword | Größe des Hauptspeichers |
maxinternal | 100 | ≤259774 | Anzahl der Internas |
bufsize | 500 | maxhalfword | Eingabezeichen |
errorline | 72 | maxhalfword | Länge der Fehlerzeile |
halferrorline | 42 | <errline-15 | Erste Fehlerzeile |
maxprintline | 79 | ≥60 | Länge der Ausgabezeile |
screenwidth | 768 | 4095 | Breite der Bildschirmanzeige |
screenheight | 1024 | 4095 | Höhe der Bildschirmanzeige |
stacksize | 30 | 300 | Anzahl der Eingabequellen |
maxstrings | 2000 | maxhalfword | Anzahl der Zeichenketten |
poolsize | 32000 | maxhalfword | und der enthaltenen Zeichen |
movesize | 5000 | 10000 | Speicher für Oktantenschritte |
maxwiggle | 300 | 1000 | Gerundete Punkte pro Kreis |
gfbufsize | 100 | 4096 | Ausgabepuffergröße |
pathsize | 300 | 1000 | Knotenzahl in einem Pfad |
bistacksize | 785 | 785 | Teilungsstack |
headersize | 25 | 100 | Worte in TFM-Köpfen |
ligtablesize | 5000 | 32510 | Ligaturen/Einrückungen |
maxkerns | 500 | 1000 | Unterschiedliche Abstände |
maxfontdimen | 50 | 100 | Anzahl von ,fontdimen`sionen |
memtop | 30000 | memmax | Höchste Speicherstelle |
scalefactor | 1 | 10 | Anzeige ,SF`-fach verkleinert |
maxinopen | 6 | 20 | Anzahl der Ausgabedateien |
paramsize | 150 | 1000 | Makro-Parameter |
Sie können die Größe der Bildschirmanzeige durch Veränderung der beiden Werte screenwidth, screenheight und scalefactor beeinflussen. Die Bedeutung der ersten beiden dürfte klar sein, nur sei angemerkt, daß screenheight den Wert für die interlaced Darstellung bezeichnet, obwohl non-interlaced Bildschirmmodi automatisch erkannt werden und entsprechend nur halb soviele Pixelzeilen angezeigt werden. Außerdem wird durch die beiden Werte nicht die Fenstergröße sondern die zugehörigen Werte innerwidth und innerheight eingestellt. Der scalefactor ist ein Reduktionsfaktor, das heißt die Anzeige wird sowohl in der Höhe als auch in der Breite um diesen Faktor verkleinert dargestellt. Um sinnvoll mit dieser Einstellung arbeiten zu können, enthält die mitgelieferte plain.base die internen Vorgaben
screen_rows:=4095; screen_cols:=4095; % infinitywie sie in der Druckermodusdatei modes.mf festgelegt sind. Bei der Bildschirmanzeige verwendet
Im Unterschied zu älteren Versionen von VirMF ist es jetzt nicht mehr
notwendig, das „Online Display`` explizit durch Setzen der
Umgebungsvariablen MFWTERM auf den (kleingeschriebenen) Wert
"amiterm"
zu aktivieren. Vorteilhafterweise sollte
MFWTERM gar nicht gesetzt sein. Allerdings kann durch Angabe eines
abweichenden Wertes die Bildschirmanzeige auch in den Modi proof
und smoke unterdrückt werden.