home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Computer Club Elmshorn Atari PD
/
CCE_PD.iso
/
pc
/
0600
/
CCE_0613.ZIP
/
CCE_0613.PD
/
HPGL_PD
/
HPGL_PD.DOC
next >
Wrap
Text File
|
1991-07-08
|
24KB
|
493 lines
③Formatierung: 65 Z/Zeile, 38 Z/seite, 1½zeilig①
HPGL-Treiber, entwickelt auf LASER-C
Autor:
M. Störzbach
Immentalstr. 48
78 -1Freiburg/Brsg.-0
Die Public-Domain-Version, Kennzeichnung:
HPGL:HPGL_PD 1.4r2( MStoe 16.02.91)
darf zusammen mit diesem Text frei weitergegeben werden, aber
nicht verkauft oder auf sonstige Art kommerziell verwertet
werden.
Alle Rechte des Programms liegen bei dem Autor M. Störzbach.
Der Autor übernimmt keinerlei Haftung für die Fehlerfreiheit
des Programms oder Schäden, die sich aus der Anwendung ergeben.
Die in der Beschreibung verwendeten Bezeichnungen und Namen sind
zum Teil geschützt, auch wenn sie nicht extra gekennzeichnet
sind.
Hinweise zur Benutzung des HPGL-VDI-Treibers
1. -1Allgemeines-0
Der Treiber steuert Plotter an, die die weit verbreitete
HPGL unterstützen. Der Treiber setzt in vielen Funktionen die
eingebaute Intelligenz der Plotter ein, wodurch der Treiber
Rechenzeit spart. Allerdings sind die Kreiszeichenbefehle in
HPGL langsam in der Ausführung, und bei Ellipsen kann es zu
eckiger Ausführung des "spitzen" Endes kommen.
An den Rechner stellt der Treiber zunächst die Anfor-
derung, daß er funktioniert! Für die Anwendung als echter GEM-
VDI Treiber muß natürlich ein GDOS geladen und der Treiber im
ASSIGN.SYS eingetragen sein. Zusätzliche Zeichensätze existie-
ren (noch) nicht. Der Treiber kann auch direkt vom Programm per
EXEC-Systemfunktion geladen werden. Der Zeiger auf den VDI-
Parameterblock muß dann in Register D1 stehen ( Näheres s.u. ).
2. -1Ausgabe:-0
Der Plotter kann an die serielle Schnittstelle ange-
schlossen werden, die Ansteuerung erfolgt dann direkt durch den
Treiber. Der Treiber konfiguriert die Schnittstelle gemäß den
Angaben im CFG-File, der Plotter wird auf Xon/Xoff-Protokoll
eingestellt. Dazu muß der Plotter folgende Escape-Sequenzen ver-
stehen: <esc>M, <esc>N: Definiert Xoff-Zeichen, <esc>I: Defi-
niert min. Puffergröße und Xon-Zeichen. Per hshk-Kommando im
CFG-File kann eine andere Zeichenfolge definiert werden. Sie
wird jeweils beim Öffnen der Station ( v_opnwk ) gesendet.
Bei dieser Ausgabeart kann es vorkommen, daß sich der
Rechner aufhängt, da bei fehlendem Xon des Plotters ( Übertra-
gungsstörung ) die Schnittstelle im Atari auf ewige Zeiten
blockiert bleibt! Nach opnwk und clswk wird wird noch die
Plotter-on-Sequenz gesendet ( '<esc>.(' ) sowie Plotter-off
( '<esc>.)' ). Auch diese können umdefiniert werden.
Alternativ kann per CFG-File die Ausgabe auch auf den
Drucker umgelenkt werden. Falls das File HPGL.CFG keine Anwei-
sungen zum Ausgabeziel enthält, erfolgt die Ausgabe auf eine
Datei HPGL.Pxx, wobei xx eine Zahl zwischen 01 und 99
symbolisiert. Der Treiber ermittelt ausgehend von 01 die
niedrigste freie Nummer und legt mit dieser ein File an. Wird die
Ausgabe auf Datei explizit angefordert, muß dabei auch eine
Dateiname angegeben werden. Die Extension wird dabei immer als
'.Pxx' angesetzt.
3. -1Fähigkeiten und Grenzen-0
Der Treiber führt selbst nur ein Minimum an grafischer
Berechnung durch und überläßt soviel als möglich der Intel-
ligenz des Plotters. Im Moment nimmt der Treiber allerdings die
Transformation vom VDI-Koordinatensystem ins Plotterkoordina-
tensystem vor. Dadurch wurde die bisher benutzte 'RO'-HPGL-
Plotteranweisung unnötig. Der Plotter muß daher folgende Komman-
dos unterstützen:
SC : Skalierung auf logisches Koordinatensystem
IP : Definition der physikalischen Plotgrenzen
IW : Fenster
SP : Stiftwahl
PT : Stiftdicke ( fürs Füllen )
VS : Zeichengeschwindigkeit
CS : Definition 1. Zeichensatz
CA : Definition 2. Zeichensatz
SS : Anwahl 1. Zeichensatz
SA : Anwahl 2. Zeichensatz
PU : Stift hoch
PD : Stift runter
PA : Geh, Absolutkoorsinaten
PR : Geh, relativ zur momentanen Position
LT : definiere Linientyp
AR : Kreisbogen, relativ zur momentanen Position
WG : Fülle Kreisausschnitt
RA : Fülle Rechteck
LB : Textausgabe, das Zeichen Nr. 03 ( ASCII ) kennzeichnet das
Ende der Zeichenfolge.
DI : Textausrichtung, absolut
SI : Höhe der Zeichen
SL : Schrägstellen der Zeichen
CP : Gehe in Zeicheneinheiten
Da sich der Treiber auf die Fähigkeiten der Plotter stützt,
sind einige schöne Sachen nicht möglich:
Es gibt nur einen Zeichenmodus: transparent. Auf Papier
lassen sich nun mal keine Punkte invertieren.
Flutfüllen beliebiger eingerahmter Flächen unmöglich.
Füllen: Schraffieren und Massiv, nur in Rechtecken und
Kreisen. Es gibt eine Schraffur, Musterfüllen geht nicht.
Keine runde Linienendausführung.
Keine Schräg- und Fettschrift
Ausrichten vertikal und horizontal wird unterstützt.
Grafische Primitive: keine Rechtecke mit gerundeten Ecken
( stattdessen eben eckig ).
Anmerkungen:
Keine Pfeile
1 Marker
Die max. Plotgröße des Treibers ist durch Übersetzungs-
parameter festgelegt. Eine harte Grenze ergibt sich bei der
gewählten Auflösung von 1/10mm bei 3.2m in beide Achsen-
richtungen.
Die Angabe von 10000 Punkten bzw. Eingabewerten bezieht sich
natürlich nur auf den Treiber und wird bei Erweiterung der
Funktionen wahrscheinlich geändert. Die oft angegebene Grenze
von 128 Werten sollte daher im Zweifelsfall eingehalten werden.
Bei Ellipsen mit Pfeilspitzen können die Pfeilspitzen etwas
daneben sitzen, da die Ellipsen durch Verzerren von Kreisen im
Plotter erzeugt werden, und der treiber bei der Positionierung
der Pfeilspitzen die dabei auftretenden Rundungserscheinungen
nicht exakt nachvollziehen kann.
4. -1Konfiguration des Treibers-0
Einige Eigenschaften des Treibers können durch das HPGL.CFG-
File beeinflußt werden. Es wird bei Durchführung von v_opnwk
gelesen. Es wird zunächst im aktuellen Arbeitsverzeichnis
gesucht, danach im Wurzelverzeichnis der Arbeitspartition bzw.
-disk. Wird das File nicht gefunden, so ertönt ein Warnton, und
die Normalwerte werden eingesetzt.
Jede Zeile besteht aus dem Kommando und danach, von diesem und
untereinander durch Leerzeichen getrennt, die nötigen Angaben.
Syntax des CFG-Files:
<kommando> <wert1>[{,<wert>}]
kommando: Name des Parameters: Großschreibung ignoriert, erste 4
Buchstaben signifikant.
wert.. : a) Zahl: Zahl, durch Leerzeichen begrenzt
b) Text: Eine Zeichenfolge, ebenfalls durch Leerzeichen
begrenzt. Zeichen mit ASCII-Werten<32 und
Leerzeichen müssen mit der C-Syntax verschlüs-
selt werden: Backslsh '\', gefolgt von der
Hex(!)-Kodierung. Ein Textparameter darf max.
40 Zeichen umfassen, nachdem er dekodiert
wurde. Ansonsten erscheint eine Meldung, und
die Zeichnung wird ignoriert.
Ausnahme: Der Dateiname bei der Zieldefini-
tion darf bis zu 90 Zeichen umfassen.
Ein Text der Länge 0 wird mittels '\0' ( Null-
byte ) angegeben.
Hex-Kodierung: Darstellung des ASCII-Wertes
des Zeichens im 16-Zahlsystem, damit sind 2
Ziffern pro Zeichen nötig. Die Ziffernfolge
ist in diesem System:
0 1 2 3 4 5 6 7 8 9 A B C D E F
Eine Zeile des CFG-Files darf nicht mehr als 80 Zeichen
umfassen!
Und nun die Kommandos:
aler(t) MUTE/talk : mit 'talk' wird die Ausgabe von
Fehlermeldungen usw. auf den Bildschirm
eingeschaltet. Das zerstört allerdings
den GEM-Bildschirm links oben unterhalb
der Menüzeile. Abhilfe: links oben
Bildschirmplatz reservieren wie für
Formular, nach Plotten wieder frei-
geben.
Meldungen werden auf jeden Fall
durch eine kurzen Piepser, Warnungen
durch eine längeren und ernste Fehler
durch noch längeren Pieps angedeutet.
Im Mute-Modus wird auch die Normal-
antwort der Formulare automatisch
selektiert!
Wird das alert-Kommando gegeben, so
führt jeder andere Parameter als 'MUTE'
zum Einschalten der Fehlermeldungen!
(normal: Mute).
baud <rate> : Baudrate (normal:9600)
bits <5|6|7|8> : Anzahl Datenbits (normal:8);
pari(ty) <-1|0|1 > : Parity: keine| gerade (even)| ungerade
(odd) (normal:keine);
stop(bits) <1|2> : Anzahl der Stopbits (normal:1)
ziel <RS232|CENT|AUX:|PRN:|dateiname> : Name der Zieleinheit
(normal: File 'HPGLFILE' o. ä.);
AUX: und RS232 leiten auf seriell
Schnittstelle um, CENT und PRN: auf die
Druckerschnittstelle. In letzterem Fall
werden natürlich die Parameter für die
serielle Schnittstelle ignoriert.
dateiname : Name der Datei, auf der das HPGL-File
abgelegt werden soll. Der Name wird
immer mit der Extension .Pxx versehen,
wobei xx eine zweistellige Zahl
symbolisiert. Es wird die nächste freie
Kombination gesucht. Max. sind damit 99
Files .P01 - .P99 möglich. Beim
Überschreiten von 99 wird eine Warnung
ausgegeben und mit <name>.P01
überschrieben.
hshk <zeichenfolge > : definiert die Zeichenfolge, die an den
Plotter geschickt werden soll zum Ein-
richten des Xon/Xoff-Protokolls. Stan-
dardmäßig werden N,M und I-Befehle ver-
wendet. Der String kann natürlich auch
sonstige Befehle an den Plotter ent-
halten.
Achtung: falls nötig, müssen auch die
Plotter-On und -Off-Sequenzen mit ange-
geben werden, da diese Zeichenfolge
vor! der p_on-Zeichenfolge gesendet
wird.
(normal: XON/XOFF-Protokoll:
"\1B.(\1B.M:\1B.I100;;17:\1B.N;19:\1B.)"
p_on <zeichenfolge> : definiert Zeichenfolge zum Plotterakti-
vieren (normal: "\1B.(").
p_of <zeichenfolge> : definiert Zeichenfolge zum Abschalten
des Plotters (normal: "\1B.)").
velo <1:max> : Zeichengeschwindigkeit ( cm/s )
(normal:5)
ul <Untenlinks:x> <Untenlinks:y> :
Normalwert für die Position der unteren
linken Ecke (cm ) (normal: 0,0)
groe(sse) <x> <y> : Größe der Zeichnung ( cm ) (normal:
Maximum des Treibers:(20cm*28cm).
y-Achse ist die längere Achse! Max.
kann ca. 320*320cm angegeben werden.
die Grenze ergibt sich aus der
Auflösung von 0.1mm und des
Zahlbereichs von 0..(2^15-1).
skal(ierung) <zaehler> <nenner> :
Skalierung des Plots; (Normal 1,1);
stif(t) <schacht> <dicke(µm)> <farbe> :
Angabe des vorhandenen Stifts:
Schacht, in dem der Stift steht, Dicke
und Farbe.
Farbe: Eine Zahl, beginnend bei 0,
gemäß der folgenden Reihenfolge:
Weiss=0, Schwarz=1, Gruen, Blau, Cyan,
Gelb, Magenta, Weiss, Schwarz, Hell-
rot, Hell-gruen, Hell-blau, Hell-gelb,
Hell-magenta=13 ( Weiß = kein Stift )
(normal: Ein Stift in Schacht 1,
Schwarz, Dicke 3 log. Einheiten
(=0.3mm) ).
fllr(and) : gefüllte Flächen normalerweise ein-
grenzen ('j') oder nicht ( 'n' ).
Eingrenzen ist vom VDI her zwar
Normalwert, aber nicht tragisch, da im
Normalfall replace-Schreibmodus.
Da der Plotter ( und andere Papier-
geräte ) im einfachsten Fall im Trans-
parentmodus arbeitet, ist es normaler-
weise richtig, das Eingrenzen abzu-
schalten. (normal: nicht).
outp(ut): Setzen einiger spezieller Parameter für
Output.prg:
z.B. automatisches Umranden von
gefüllten Flächen ist nicht mehr
aktivierbar!
5. -1Anwendungshinweise-0
5.1 -1Testmängel-0
Noch nicht ( vollständig ) getestet sind folgende Eigen-
schaften:
Umlautausgabe ( s.u. ), Berechnung des den String umgebenden
Rechtecks.
5.2 -1Grundsätzliches-0
Der Treiber verwendet nur die im Plotter eingebauten
Zeichensätze: Zeichensatz 0 ( normal ) und Zeichensatz 7 ( Um-
laute usw. ). Die Ellipsenfunktionen werden durch die Kreis-
funktionen des Plotters bei gleichzeitiger Verzerrung des Ko-
ordinatensystems erzeugt. Dadurch ist das maximale Verhältnis
lange Achse zu kurze Achse beschränkt. Außerdem sind die Plotter
beim Berechnen von Kreisbögen bei höchster Auflösung langsam,
das führt zum Ausbluten der Stifte und zu zu dicken Linien.
Deshalb gibt der Treiber dem Plotter eine geringere Präzision
der Ausführung an in Abhängigkeit vom Krümmungsradius. Das führt
bei extremen Ellipsen zu eckiger Ausführung an der "Spitze".
Der Treiber verläßt sich bei der Ausgabe von Umlauten noch
auf feste Umschaltzeichen vom Normalzeichensatz auf den Alter-
nativzeichensatz. Es sind die Zeichen mit ASCII-Codes $0E
(alternativ ) und $0F ( normal ).
Ebenso nimmt er an, daß eine Textzeile durch $03 am Ende
markiert wird.
Wird der Plot durch Skalierung verkleinert, so wird die
Zeichenfläche für das rufende Programm scheinbar vergrößert. Die
im CFG-File angegebene Plotgröße ist auch bei Skalierung mit der
physikalischen Blattgröße identisch.
Wird während der Zeichnung die UNDO-Taste betätigt, so wird
zunächst gefragt, ob es ernst gemeint ist ( "Plot kippen?" ).
Wenn dies bejaht ist, so werden alle Funktionen bis auf
v_clswk() gesperrt.(Alert Mute: sofort Abbruch)
Sollen nach v_opnwk mehrere Zeichnungen nacheinander aus-
geführt werden, so sollte nach jeder Zeichnung v_updwk und vor
der Zeichnung auch v_clrwk ausgeführt werden . Der Treiber
erzeugt keine Aufforderung zum Papierwechsel! Der Papierwechsel
muß vom Hauptprogramm behandelt werden. Durch eine Änderung
führt erst v_clrwk oder auch v_updwk zum Abstellen des Stifts!
Der Treiber kann in dieser Version nicht alles, was
möglich ist.
Weitere Anstrengungen sind u.a. auch von Interessenskund-
gebungen von dritter Seite abhängig.
Es kann zu Schwierigkeiten beim direkten Plotten auf
RS232 kommen. Wahrscheinlich kommt ein bißchen "Dreck" über die
Schnittstelle, wenn sie konfiguriert wird, und die danach
folgende Abfrage des Plotternamens wird vom Plotter ignoriert,
was wiederum vom Treiber als nicht vorhandener Plotter inter-
pretiert wird. In der vorliegenden Fassung wird allerdings nur
die Fehlerbox angezeigt. Die einzige Antwort ist 'Plot on!' und
führt zum Ausführen des Plots. Falls dann keine Zeichnung
erzeugt wird, muß ins Desktop zurückgekehrt werden.
Über die Skalierungsfunktion kann eine Zeichnung ohne
Qualitätsverlust auch vergrößert werden. Z.B. kann ein Programm,
das nur die Koordinaten 600*400 kennt, seine Zeichnung auch
direkt auf den Plotter geben, wobei der Treiber die Umskalierung
vornimmt.
vql_attributes() + LASER-C:
Evtl. gibt es bei Programmen, die mit LASER-C geschrieben
wurden, Schwierigkeiten, da ich die vql_attributes-Funktion
anders implementiert habe als in der LASER-Systembibliothek.
Andererseits entspricht meine Ausführung den Angaben zum VDI.
5.3 -1Treibereinsatz:-0
Zunächst etwas zu Treibern schlechthin, soweit ich das
herausgefunden habe. Ein Treiber ist zunächst ein richtiges,
vollständiges Programm. Er wird durch den Systemaufruf EXEC
geladen ohne automatische Ausführung. Der Unterschied zu einem
"normalen" Programm besteht darin, daß der Treiber beliebig oft
aufgerufen werden kann über einen direkten Unterprogrammaufruf.
Dabei ist die Übergabe von Werten an den Treiber beim GEM so
gelöst, daß der Treiber in Register D1 einen Zeiger auf
irgendetwas erhält, beim VDI auf den Parameterblock. Das GDOS hat
zunächst nur die Funktion, den richtigen Treiber zu laden und
evtl. die zusätzlichen Zeichensätze, wenn v_opnwk durchgeführt
wird. Der Treiber erhält die Adresse der Zeichensätze im Speicher
über das contrl-Feld. Da der HPGL-Treiber ohne zu ladende
Zeichensätze auskommt, kann er auch leicht von einem Programm
geladen und angesprochen werden.
Beim Selbstladen ( ohne GDOS ) ist folgende Reihenfolge
nötig:
a) Laden per 'EXEC ohne Ausführen'. Ergebnis ist ein Zeiger
auf die Basepage des Treibers. Der Einsprung ist direkt hinter
der Basepage. ( Länge der Basepage: 256 Byte )
b) Aufruf per Assemblerbefehl 'JSR' unter Verwendung des
unter 1. ermittelten Einsprungspunkts. Der 1. Aufruf bewirkt,
unabhängig von der ausgeführten Funktion, die vom Betriebssystem
her nötige Initialisierung, wie z.B. die Beschränkung des
nötigen Speicherplatzes.
Bem.: Der 1. Aufruf muß vom VDI her v_opnwk sein, der
letzte v_clswk. v_opnvwk/v_clsvwk werden nicht beachtet.
c. Entfernen des Treibers aus dem Speicher:
α: Das rufende Programm wird beendet.
oder
β: Der Treiber wird per free() entfernt ( TOS-Aufruf!! )
-1Aufruf einer Treiberfunktion:-0
Zunächst werden die VDI-Felder intin, intout usw. mit den
nötigen Daten geladen, und ihre Adressen in dem Parameterblock
in folgender Reihenfolge abgelegt: control, intin, ptsin,
intout, ptsout. Die Adresse des Parameterblocks wird in Register
D1 geladen und der Treiber per JSR ( s.o. ) aufgerufen.
Der Treiber verändert den Parameterblock nicht, die Adres-
sen der Felder müssen daher nicht jedesmal neu gesetzt werden.
Es werden beim Aufruf alle Register auf den Stack des rufenden
Programms gesichert! Die Reihenfolge der Aufrufe muß auch hier
eingehalten werden, also zuerst v_opnwk(), usw. . Der Treiber
akzeptiert Koordinaten im Rasterformat, also Origo "links oben".
Die Einheit beträgt 1/10 mm.
Bei der Verwendung als Treiber wird für Meldungen ein
primitiver Ersatz von form_alert verwendet. Die Meldung wird
links oben unter der Menüzeile eingeblendet, allerdings nur,
wenn diese per CFG-File angefordert wurde. Da die Darstellung
per TOS erledigt wird, kann der GEM-Bildschirm etwas
beeinträchtigt werden. Außerdem wird ein Ton entsprechend der
Bedeutungsschwere erzeugt.
Die Definition im ASSIGN.SYS kann z.B. lauten:
11 hpgl.sys
v_clrwk, v_updwk
Anscheinend entspricht es der Philosophie des VDI, wenn zu
Beginn einer Zeichnung zunächst v_clrwk ausgeführt wird und am
Ende als Pendant v_updwk. v_updwk gibt dem Treiber das Signal,
daß eine von vtl.mehreren aufeinanderfolgenden Zeichnungen
beendet ist. Entsprechend kann erz. B. veranlassen, daß der
Plotter den Origo anfährt und den Stift abstellt. v_clrwk bewirkt
auch eine Initialisierung des Plotters. v_opnwk bewirkt auch eine
logische Initialisierung des Treibers, u.a. auch ein erneutes
Einlesen des CFG-Files. Theoretisch können also Zeichnungen auch
durch clswk/v_opnwk getrennt werden. Dabei wird aber der Treiber
immer wieder neu in den Speicher geladen, wobei aus unerfind-
lichen Gründen immer 2-4 Byte verloren gehen. Dieser verlorene
Speicher findet sich aber wieder, wenn auch das Programm
terminiert, das den Treiber aufgerufen hat.
6.
Wer den Treiber als nützlich empfindet, kann mir seine
Anerkennung ausdrücken durch Zusenden von DM 20.- . Als Gegen-
leistung gibt's dann eine leistungsfähigere Version ( z.B.
mehrere Stifte, größere Formate und noch einige Kleinigkeiten ).
Der Teiber ist natürlich, wie jedes Programm, nie fertig,
und Anregungen oder Hinweise auf Fehler nehme ich gerne ent-
gegen.
Änderungen zur Version 1.4 (20.10.90):
1. Änderungen in der Speicherorganisation erlauben jetzt
mehrere v_opnwk()-v_clswk()-Zyklen. Dabei verliert der
ATARI noch 2-4 Byte, Ursache??
2. Plotfiles werden jetzt durchnumeriert, max. 99 Files in
Folge.
3. Pfeilspitzen sitzen exakt (meistens).
4. 9 Marker statt 6. Ein Fehler in den Markerroutinen wurde
behoben.
5. Die max. Feldlaenge für intin und polyline etc. wird jetzt
korrekterweise mit je 10000 spezifiziert (Wo gibt's schon
einen unendlichen Speicher?) (Ergebnisse von vq_extnd()).
6. Textalignment eingeführt mittels HPGL-Anweisung 'CP'.
7. HPGL-Anweisung 'RO' (dreht Koord.-System um 90°) wird nicht
mehr angewendet.
8. HPGL.CFG wird jetzt zusätzlich zum Arbeitsverzeichnis auch
im Wurzelverzeichnis des aktuellen Laufwerks gesucht. Ist
dem kein Erfolg beschert, so wird in jedem Fall nur ein
Warnton ausgegeben und die Normalwerte werden eingesetzt.
9. Abschalten der Meldungen (Normalwert). Damit wird der
Bildaufbau von grafischen Programmen nicht mehr gestört.
Die Fehlermeldungen können für die Fehlersuche wieder
eingeschaltet werden.
10. Die Warnungsausgabe löscht den Text nach Quittierung durch
Überschreiben mit Leerzeichen entsprechend der längsten
Zeile.
11. Das Anwählen der "Farbe Weiß" führt während einer Zeichnung
nicht mehr zum Abstellen des Stifts. Andererseits genügt
jetzt nicht mehr, nur "Weiß" anzufordern am Ende einer
Teilzeichnung, um den Stift abzustellen, es muß v_vlrwk()
oder v_updwk() aufgerufen werden.
1.4R1:
Fehler in Ellipsenzeichnen korrigiert
1.4R2:
Gefüllte Flächen werden mit Normalstift umrandet, bisher:
Fettstift.
Plotter fährt bei Zeichnungsende (v_updwk, v_clswk) an
Ursprung, d. h. an Koordinate (0,0). Damit können z. B. aufein-
anderfolgende Plots übereinander gezeichnet werden.
Maximalkoordinaten: Es wird jetzt korrekt der 99-Wert
geliefert, z. B. x-Bereich 0-10cm entsprechend log.
Koordinatenbereich 0-999 (Auflösung (1/10)mm).
Ein Fehler im CFG-File-Interpreter wurde behoben, der 3 Bomben
verursachen konnte.