home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Crawly Crypt Collection 1
/
crawlyvol1.bin
/
utility
/
printer
/
gdosi20
/
gdosi20.txt
< prev
Wrap
Text File
|
1994-04-29
|
64KB
|
1,791 lines
More Joy of GDOS*
Version 2.0
Gerd Castan
27.4.1994
____________________________*
Deutsche Version gepostet in de.comp.sys.st und maus.gui.gem;
englische Version in comp.sys.atari.st
Inhaltsverzeichnis
1 Technisches
2 Einleitung
3 Motivation
4 änderungen
5 VDI-Treiber
5.1 Tintenstrahldrucker
5.2 9-Nadeldrucker
5.3 24-Nadeldrucker
5.4 Laserdrucker
5.5 Atari - Laserdrucker
5.6 Bildschirmtreiber
5.6.1 LineA
5.6.2 Setscreen und Getscreen
5.6.3 NVDI und WARP 9
5.7 Sonstige Treiber
5.7.1 Memory-Treiber
5.7.2 Plottertreiber
5.8 Was fehlt
6 Fehler
7 Fonts
7.1 Allgemeines
7.2 Bitmap-Fonts
7.3 Vektorfonts
8 Drucker
8.1 Marktübersicht
9 Programme
10 Hilfsprogramme
10.1 fontfix
10.2 Outline Fonts
10.3 Druckertreiber
10.4 ASSIGN
10.5 FONTCHK
10.6 FONTCNV
10.7 GEMFont
10.8 FontMonger
10.9 Font-ID
11 Vertrieb
11.1 Atari
11.2 BELA
11.3 FontGDOS
11.4 Language
11.5 Internet
11.6 Working Title
11.7 Speedo-Treiber
11.8 Speedo 4.2
11.9 XWindows
11.10COMPO
11.11IMG-0300
11.12Sonstige
11.13FTP
11.14SciLab
12 Source
13 Tips und Tricks für Anwender
13.1 Pixelmüll beim Drucken
13.2 NEC P6+
14 Tips und Tricks für Programmierer
14.1 Fontgrösse und Pixelgrösse
14.2 Treiberauswahl
15 Adressen
16 Sonstiges
16.1 Kritik
16.2 Lob
16.3 In eigener Sache
16.4 Warenzeichen
16.5 Garantie
1 Technisches
Meine Mailadresse wird sich in absehbarer Zeit mehrmals
ändern. Ich habe deshalb einen Alias, der die Mail dorthin
weiterleitet, wo ich mich gerade aufhalte - und wenn es im
Mausnet ist: G.Castan@physik.uni-stuttgart.de
Damit dieses Dokument auf Servern und Mailboxen leichter zu
finden ist, bitte ich einen einheitlichen Namen zu verwenden
und sowohl die ascii- als auch die TEX-Version zu speichern:
FILENAME =
gdosi20 (deutsche Version)
gdosinf20 (deutsche Version unter UNIX)
Auch wenn UNIX-Fileserver verwendet werden, sollte CR+LF und
nicht nur LF verwendet werden.
2 Einleitung
Ich schreibe gerade an einem Programm, das seine Druckausgaben
über GDOS macht. Auf der Suche nach Druckertreibern bin ich
auf das Problem gestossen, dass den Treibern oft keinerlei
Dokumentation beiliegt.
Ausserdem kommt es vor, dass es verschiedene Treiber mit
gleichem Namen gibt. Aber worin unterscheiden sie sich?
Ich habe hier meine Erfahrungen zu Druckertreibern knapp
zusammengefasst.
Diese Zusammenfassung soll nicht allgemein darauf eingehen,
wie man als Programmierer Druckertreiber benutzt (Ausnahme
sind vielleicht Probleme, die in der angegeben Literatur zu
kurz kommen). Genausowenig wird hier das Konzept oder die
Installation von Druckertreibern besprochen. Hier sei auf die
Literatur am Ende verwiesen.
Vielmehr soll auf die einzelnen Treiber eingegangen werden:
o Wo bekommt man die Treiber her?
o Wie unterscheidet man die Treiber?
o Welche Probleme gibt es mit den einzelnen Treibern?
o Welche Treiber kann man für bestimmte Drucker verwenden?
Wer zu einzelnen Treibern mehr Erfahrungen oder Fragen hat,
der kann mir schreiben. Ich werde mir die Mühe machen, diese
Zusammenfassung zu vervollständigen.
Mein Dank für sachdienliche Hinweise gilt fogenden Personen:
Kay Prisille (MIGRAPH-Produkte, Calligrapher lite); Julian
Reschke (IMG-0???); Volker Ritzhaupt; Jürgen Voorgang (Working
Title - Produkte); Herwig Schelauske (Installation von GDOS,
Namenskonventionen); Normen Kowalewski (FontGDOS); Erik Dick
(SpeedoGDOS); Patrick Dubbrow; Ulrich Rossgoderer (WYSIWYG);
Stefan Hintz (CHARLY IMAGE); Ulli ''Huhu`` Ramps (Speedo 4.2);
Laurenz Prüssner (SLM_HS); Marcel Boom (1. Postkarte)
Gerd Castan.
3 Motivation
Es hat mich mit GDOS etwa zwei Stunden Programmierarbeit
gekostet, die Bildschirmausgabe in meinem Programm in
maximaler Qualität auf den Drucker zu bekommen. Und praktisch
ohne zusätzlichen Aufwand erhalte ich Ausgaben auf Druckern,
die ich überhaupt nicht kenne.
Wer vor hat, ein Programm mit Druckausgabe zu schreiben, tut
gut daran, sich um die eigentlichen Aufgaben seines Programms
zu kümmern.
Niemand ist bereit, für Druckertreiber mitzubezahlen, wenn es
ein Konkurenzprogramm gibt, dessen Programmierer keinen
Aufwand mit Druckertreibern haben, und das Programm damit
einfach billiger (und wahrscheinlich besser) ist.
Der Anwender hat neben dem Preisvorteil noch einen weiteren.
Wenn er mehrere Programme hat, nehmen die Druckertreiber und
Fonts nur einmal Platz auf der Platte weg.
Inzwischen kann man SpeedoGDOS bei jedem Atari-Händler kaufen.
Der (qualifizierte) Feedback zu meinem FAQ ist im Vergleich zu
Herbst '92, als ich damit begonnen habe, deutlich gestiegen.
Durch Speedo scheint das Interesse der Programmierer an GDOS
stark zugenommen zu haben.
4 änderungen
Neue Kapitel/Infos sind mit + gekennzeichnet, geänderte mit *.
Kleinere änderungen sind nicht aufgeführt.
+ Tips und Tricks: Treiberauswahl
+ MessPlot
+ SciLab
+ XWindows
* NVDI und WARP 9
5 VDI-Treiber
Hier werden zu jedem Treiber Vertrieb, Fehler und zugehörige
Fonts aufgelistet.
5.1 Tintenstrahldrucker
________________________________________________________________________
| Name |Datum |Länge |Vertrieb |Fehler | Sonst. | Fonts |
|___________|_________|_______|____________|_1_|_2_|________|__________|
| BJ10E |20.11.90 | 45917 | WT | | | |NC |
| BJ10 |20.11.85 | 45919 | CL | | | |NC |
| BJ10 |28.08.91 | 45660 | BELA | | | |NC |
| BJ10 |27.01.92 | 59715 | FontGDOS,I | | n | |NC, OTL |
| BJ10 |28.01.93 | 61428 | Speedo | | n | |NC, SPD |
| BJ10 |02.07.93 | 63496 | Speedo 4.2 | | n | |NC, SPD |
| HP_LJET |22.02.89 | 45512 | BELA | | | n.g. |LS |
| HP_LASER |25.09.89 | 36928 | Atari,I | | | |LS |
| LASERJET |06.03.91 | 54517 | Atari | | | |LS |
| LASERJET |27.01.92 | 60194 | FontGDOS,I | | n | |LS, OTL |
| LASERJET |28.01.93 | 61907 | Speedo | | n | |LS, SPD |
| LASERJET |02.07.93 | 64408 | Speedo 4.2 | | n | |LS, SPD |
| HPL150 |12.04.86 | 51541 | wt | | |150dpi |LL |
| HPL300 |24.04.86 | 51541 | CL,wt | | | |LS |
| DESKJET |13.05.92 | 45637 | BELA | | | g. |LS? |
| DESKJET |14.05.91 | 46040 | CL,WT | | | g. |300x600 |
| DESKJET |06.03.91 | 54285 | Atari,I | | | |LS? |
| DESKJET5 |14.05.91 | 46040 | CL,WT | | | delta |LS |
| DJ5 |27.01.92 | 60600 | FontGDOS,I | | n | |OTL |
| DJ5 |28.01.93 | 62251 | Speedo | | n | |SPD |
| DJ5 |02.07.93 | 64319 | Speedo 4.2 | | n | |SPD |
| MT90 |21.12.90 | 44881 | BELA | | |180dpi |SP |
| PAINTJET |27.01.92 | 60005 | FontGDOS | | n | |SP, OTL |
| PAINTJET |28.01.93 | 61648 | Speedo | | n | |SP, SPD |
| PAINTJET |02.07.93 | 63642 | Speedo 4.2 | | n | |SP, SPD |
| PAINTJET |14.08.92 | 60173 | I | | | |SP, OTL |
|_PAINTJET__|13.10.91_|_45934_|_WT_________|___|___|________|SP________|
Anmerkung: Die Treiber HP_LJET und DESKJET können sowohl für
(HP-kompatible) Tintenstrahl- als auch Laserdrucker verwendet
werden. Der Unterschied besteht darin, dass die Daten gepackt
(g.) oder nicht gepackt (n.g.) an den Drucker geschickt
werden. delta bedeutet, dass die Daten delta-komprimiert
werden.
PAINTJET ist ein Farbtreiber mit 8 Farben.
MT90 ist von Patrick Dubbrow.
Bei Tintenstrahldruckern tritt ein Problem mit Bitmap-Fonts
auf. Bei 300 dpi ist alles in Ordnung. 360 dpi - Fonts sind
aber so optimiert, dass sie auf Nadeldruckern mit dicken Nadeln
optimal aussehen. Auf Tintenstrahldruckern sehen diese Fonts
viel zu dünn aus.
Also entweder 300 (600, 1200 :-)) dpi-Drucker oder
ausschliesslich Vektorfonts verwenden.
5.2 9-Nadeldrucker
________________________________________________________________________
| Name |Datum |Länge |Vertrieb |Fehler | Sonst. | Fonts |
|___________|_________|_______|____________|_1_|_2_|________|__________|
| FX240DPI |22.12.89 | 45396 | BELA | j | | |SR |
| FX80 |22.12.89 | 45396 | BELA,wt | n | | |EP |
| FX80_2 |12.06.91 | 45396 | I | | | |EP |
| FX80 |24.09.91 | 45525 | CL | | | |EP |
| FX80 |16.12.87 | 45396 | Atari | n | | |EP |
| FX80 |27.01.92 | 59236 | FontGDOS,I | n | n | |EP, OTL |
| FX80 |28.01.93 | 61111 | Speedo | | n | |EP, SPD |
| FX80 |02.07.93 | 63177 | Speedo 4.2 | | n | |EP, SPD |
| FX80HIGH |22.01.89 | 44730 | Atari,I | n | | |SR |
| FX80_QD |24.09.91 | 45525 | WT | | | |EP |
| NX1000 |27.01.92 | 58719 | FontGDOS | n | n | |EP, OTL |
| NX1000 |28.01.93 | 60723 | Speedo | | n | |EP, SPD |
| NX1000 |02.07.93 | 62717 | Speedo 4.2 | | n | |EP, SPD |
| NX1000 |14.08.92 | 58887 | I | | | |EP, OTL |
| OKI20 |27.01.92 | 58491 | FontGDOS | n | n | |EP, OTL |
| OKI20 |28.01.93 | 60495 | Speedo | | n | |EP, SPD |
| OKI20 |17.03.93 | 60511 | Speedo 4.2 | | n | |EP, SPD |
| OKI20 |14.08.92 | 58659 | I | | | |EP, OTL |
| SMM804 |16.12.87 | 44801 | Atari | | | |LB |
| SMM804_2 |16.06.91 | 44801 | I | | | |LB |
| SMM804 |27.01.92 | 59201 | FontGDOS,I | | n | |LB, OTL |
| SMM804 |28.01.93 | 61076 | Speedo | | n | |LB, SPD |
|_SMM804____|02.07.93_|_63142_|_Speedo_4.2_|___|_n_|________|LB,_SPD___|
Anmerkung: FX80HIGH druckt normalen Text doppelt, FX240DPI
nur einfach, FX80_QD druckt in vierfacher Dichte.
NX1000 und OKI20 sind Farbtreiber mit 8 Farben.
5.3 24-Nadeldrucker
________________________________________________________________________
| Name |Datum |Länge |Vertrieb |Fehler | Sonst. | Fonts |
|___________|_________|_______|____________|_1_|_2_|________|__________|
| EPSON360 |04.04.90 | 45619 | BELA | j | | |NC |
| EPSON360 |16.09.92 | 45547 | WT | | |180x360 | |
| EPSLQPAR |14.02.91 | 44939 | I | | | | |
| LQ570 |28.01.93 | 62051 | Speedo | | n | |SPD |
| LQ570 |02.07.93 | 64228 | Speedo 4.2 | | n | |SPD |
| NB15 |22.12.89 | 44881 | BELA,wt | n | | |SP |
| NB15 |16.12.87 | 44881 | Atari,CL | n | | |SP |
| NB15_2 |12.06.91 | 44881 | I | | | |SP |
| NB15 |27.01.92 | 59121 | FontGDOS,I | n | n | |SP, OTL |
| NB15 |28.01.93 | 60989 | Speedo | n | n | |SP, SPD |
| NB15 |02.07.93 | 63055 | Speedo 4.2 | n | n | |SP, SPD |
| NECP6 |12.04.80 | 45199 | wt | | | |NC |
| NECP6 |10.04.91 | 45619 | BELA | j | | |NC |
| NECP6 |06.02.86 | 44906 | Atari,I | j | | |NC |
| NECP6_2 |28.06.91 | 46557 | I | | | |NC |
| NECP |27.01.92 | 59516 | FontGDOS | j | n | |NC, OTL |
| NECP |28.01.93 | 61229 | Speedo | | n | |NC, SPD |
| NECP |02.07.93 | 63297 | Speedo 4.2 | | n | |NC, SPD |
| NEC_P |14.08.92 | 59516 | I | | | |NC, OTL |
| P24M |08.04.89 | 47104 | I | | | | |
| P24ML |08.04.89 | 47104 | I | | | | |
| P24MWID |08.04.89 | 47104 | I | | | | |
|_P24MWIDL__|08.04.89_|_47104_|_I__________|___|___|________|__________|
5.4 Laserdrucker
________________________________________________________________________
| Name |Datum |Länge |Vertrieb |Fehler | Sonst. | Fonts |
|___________|_________|_______|____________|_1_|_2_|________|__________|
| RICOH12 |23.06.92 | 45438 | WT | | |400dpi | |
| HP_LJET |22.02.89 | 45512 | BELA | | | n.g. |LS |
| HP_LASER |25.09.89 | 36928 | Atari,I | | | |LS |
| LASERJET |06.03.91 | 54517 | Atari | | | |LS |
| LASERJET |27.01.92 | 60194 | FontGDOS,I | | n | |LS, OTL |
| LASERJET |28.01.93 | 61907 | Speedo | | n | |LS, SPD |
| LASERJET |02.07.93 | 64408 | Speedo 4.2 | | n | |LS, SPD |
| HPL150 |12.04.86 | 51541 | wt | | |150dpi |LL |
| HPL300 |24.04.86 | 51541 | CL,wt | | | |LS |
| DESKJET |13.05.92 | 45637 | BELA | | | g. |LS |
| DESKJET |14.05.91 | 46040 | CL | | | |LS |
| DESKJET |06.03.91 | 54285 | Atari,I | | | |LS |
| CANONLBP |26.09.89 | 36980 | Atari,I | | | |LS |
|_LBP_______|13.01.92_|_45453_|_WT_________|___|___|________|LS________|
5.5 Atari - Laserdrucker
________________________________________________________________________
| Name |Datum |Länge |Vertrieb |Fehler | Sonst. | Fonts |
|___________|_________|_______|____________|_1_|_2_|________|__________|
| SLM804 |12.04.91 | 47496 |BELA | | n | |LS |
| SLM804 |16.12.87 | 45788 |Atari,I,CL,wt| | j | |LS |
| SLM |12.12.90 | 48399 |Language | | | |LS |
| SLM |27.01.92 | 60036 |FontGDOS,I | | n | |LS, OTL |
| SLM |28.01.93 | 61911 |Speedo | | n | |LS, SPD |
| SLM |02.07.93 | 63987 |Speedo 4.2 | | n | |LS, SPD |
|_SLM_HS____|_________|_______|ROM_________|___|_n_|________|LS,_SPD___|
SLM_HS ist ein SLM-Treiber für den Falcon.
5.6 Bildschirmtreiber
Der Bildschirm wird (falls man die VDI-Funktionen benutzt)
genauso als Ausgabegerät angesehen, wie Drucker, Plotter etc.
Daher können in der ASSIGN.SYS genauso Fonts für den
Bildschirm angemeldet werden, wie für Drucker.
Normalerweise merkt man davon nichts, da sich die Treiber im
ROM befinden. Diese können aber genauso wie Druckertreiber
ersetzt werden.
Anmerkung: Als Systemfont kann man bisher nur Fonts anmelden,
die (wie die Originale) nicht proportional sind und eine Grösse
von 8*8 bzw. 8*16 Bits haben. Das ist keine Einschränkung
des VDI sondern der AES.
Mit neueren AES (ab 4.0?) ist es inzwischen kein Problem
mehr, hier Fonts beliebiger Grösse anzumelden (Variablen
AE_FONTID und AE_FONTSIZE in der Datei GEM.CNF, siehe [16]).
Programmierer sollten darauf achten, dass ihre Programme damit
zurechtkommen (ebenso wie mit beliebig breiten Scrollbalken).
Bitmap-Fonts, die für den Bildschirmtreiber 1 nicht angemeldet
sind, stehen auch für die anderen Bildschirmtreiber nicht zur
Verfügung.
5.6.1 LineA
Die sogenannten LineA-Routinen sind Unterprogramme der
Bildschirmtreiber der ST-Serie, die als undokumentiert zu
betrachten sind. Es handelt sich dabei um den
Hardwareabhängigen Teil dieser Treiber.
Der aufmerksame Leser ahnt es: Tauscht man die
Bildschirmtreiber aus, gibt es auch die LineA-Routinen nicht
mehr. Dies ist beispielsweise bei den TTs der Fall.
Also niemals verwenden!
Auf die LineA-Variablen darf lesend zugegriffen werden. Ich
sehe darin aber wenig Sinn.
5.6.2 Setscreen und Getscreen
Diese XBIOS-Funktionen (vor allem Setscreen) sollten
eigentlich nicht verwendet werden.
Aber was rede ich. Für die, die's trotzdem tun oder darunter
zu leiden haben, dass es jemand getan hat:
Die Videohardware des 1040 STE und Mega STE hat einen
Harwarefehler. Wird mit Setscreen eine neue physBase
angegeben (und wenn es die selbe ist, die man mit Getscreen
bekommen hat), kann es vorkommen dass der Bildschirm gefaltet
wird. Ursache dafür ist, dass damit zu einem beliebigen
Zeitpunkt ein Register beschrieben wird, welches nur während
bestimmter Phasen des Bildschirmaufbaus beschrieben werden
darf.
Was ist zu tun?
Anwender: Die Programme NVDI und FALT_OFF fangen diesen
Fehler ab. Oder dem Programmierer dieses FAQ unter die Nase
halten.
Programmierer: Entweder Setscreen erst gar nicht verwenden.
Wer es trotzdem tut: Falls physBase nicht verändert wird,
darf nicht der Wert genommen werden, der mit Getscreen geholt
wurde, sondern es ist der Wert -1 als physBase zu übergeben.
5.6.3 NVDI und WARP 9
Es gibt zwei verbreitete Programme, die die ROM-Treiber
ersetzen: NVDI und WARP 9 (vormals QuickST). TurboST wurde
früher von BELA vertrieben und wird nicht mehr
weiterentwickelt.
Hat man sich erst einmal daran gewöhnt, will man nie wieder
ohne leben: die Benutzeroberfläche kommt einem sonst zäh wie
Honig vor. Ich will nie wieder ohne NVDI an einem Atari
arbeiten. Andere behaupten das selbe von WARP 9.
Bei NVDI werden die Treiber für die ST- und TT- und
Falcon-Auflösungen durch stark optimierte Treiber ersetzt.
Welche Treiber WARP 9 ersetzt weiss ich leider nicht.
NVDI gibt es bei Behne & Behne und enthält neben den Treibern
auch ein GDOS und ein Handbuch, das alle VDI-Aufrufe genau
beschreibt.
WARP 9 gibt es bei CodeHead.
NVDI ist vor allem in Deutschland verbreitet, WARP 9 vor allem
in den USA.
Im Gegensatz zu NVDI beschleunigt WARP 9 nur die Textausgabe.
Graphik bleibt mit WARP 9 also fast so zäh wie vorher. WARP 9
arbeitet inzwischen auch mit MultiTOS zusammen. Es läuft auch
auf dem Falcon, ich weiss aber nicht, ob es dabei auch alle
Auflösungen unterstuetzt.
5.7 Sonstige Treiber
________________________________________________________________________
| Name |Datum |Länge |Vertrieb |Fehler | Sonst. | Fonts |
|___________|_________|_______|____________|_1_|_2_|________|__________|
| META |11.04.89 | 5644 | I | | | |MF |
| META |08.10.88 | 9325 | BELA | | | |MF |
| META |16.12.87 | 9325 | Atari | | | |MF |
| META_2 |14.06.91 | 9325 | I | | | |MF |
| META |27.01.92 | 9718 | FontGDOS | | n | |MF, OTL |
| META |28.01.93 | 9733 | Speedo | | n | |MF, SPD |
| META |02.07.93 | 11174 | Speedo 4.2 | | n | |MF, SPD |
| MEMORY |27.01.92 | 58397 | FontGDOS | | n | |LS, OTL |
| MEMORY |28.01.93 | 60265 | Speedo | | n | |LS, SPD |
| MEMORY |02.07.93 | 62331 | Speedo 4.2 | | n | |LS, SPD |
| PSCRIPT |14.10.92 | 33016 | WT | | | | |
| HPGL |08.07.91 | 48885 | ST458 | | | | |
| ZEBRA |07.12.91 | 45746 | WT | | | | |
| T_OFFICE | | | wt | | |98/196dpi| |
| T_OFFICE | | | wt | | |98/196dpi| SPD |
|_IMG-0300__|_________|_______|_Reschke,wt_|_n_|___|________|LS________|
IMG-0300 kann (nicht kommerziell) frei kopiert werden. Die
anderen IMG-0???-Treiber sind von SciLab. ZEBRA ist für den
Zebra Labelprinter.
5.7.1 Memory-Treiber
Ein Memory-Treiber macht nichts anderes als ein
Bildschirmtreiber (Siehe auch [14] und [12]). Nur landet das
Ergebnis nicht im Bildschirmspeicher, sondern in einem anderen
Speicher, und kann von dort weiterverarbeitet werden.
Das übliche v_openwk Binding hat nicht alle nötigen Parameter,
um diesen Treiber zu öffnen. Falls nicht mit der
Programmiersprache mitgeliefert muss man dieses Binding selbst
schreiben. Ein Listing dazu findet sich in [14].
Die oben aufgeführte Memory-Treiber können nur schwarz/weiss
ausgeben und haben eine logische Auflösung von 300 dpi. Die
von mir getesteten (Matrix-) Treiber verkraften es problemlos,
wenn man Fonts anmeldet, die eigentlich für andere Treiber
sind. Der Memory-Treiber sollte deshalb trotz der logischen
Auflösung von 300 dpi auch mit Bildschirm-Fonts zurechtkommen.
Problematisch ist aber, dass die Aspect-Ration (Das Verhältnis
von Pixelbreite zu Pixelhöhe) im allgemeinen nicht mit der
Bildschirmauflösung übereinstimmt. Das hat zur Folge, dass
beispielsweise Kreise als Ellipsen dargestellt werden.
Mit NVDI ab Version 2.5 kann man die Ausgaben auch auf
offscreen-Bitmaps machen. Man kann dort beliebige
GDOS-Ausgaben machen und das Ergebnis dann gegebenenfalls in
die Fenster des Bildschirms kopieren.
5.7.2 Plottertreiber
Mit dem Programm DATA scheint ein HPGL-Treiber vertrieben zu
werden. Auch auf der PD-Diskette ST 458 befindet ein solcher
Treiber. Wenn ich mehr weiss, folgt an dieser Stelle mehr.
5.8 Was fehlt
Für die folgende wichtigen Drucker kenne ich keine Treiber,
die die Fähigkeiten des Druckers vollständig ausnutzen:
o Epson 360dpi Nadeldrucker
o DeskJet 500C
o DeskJet 550C
o LaserJet IV (600 dpi)
6 Fehler
Mir bekannte Fehler der Druckertreiber sind:
1 Diese Treiber stellen auch Fonts mit dem Attribut hell
ausgefüllt dar.
2 Nicht auf dem TT lauffähig.
3 Die EXTENDED ENQUIRE FUNCTION (VDI 102, vq_extnd) liefert
teilweise nicht die Werte zurück, wie sie beispielsweise
im Profibuch dokumentiert sind.
4 Bei der Kombination der Attribute kursiv und outlined werden
die Buchstaben von Bitmap-Fonts rechts abgeschnitten.
Dieser Fehler ist unabhängig davon, welche Attribute
sonst noch gesetzt werden.
Er war in den Libraries der Treiber-Sourcen von Atari und
ist damit wahrscheinlich in allen Treibern bis auf NVDI
und SpeedoGDOS enthalten.
Steht in der Tabelle nichts über einen Fehler, so ist mir
nicht bekannt, ob der Fehler auftritt, oder nicht.
Es scheint kein Zufall zu sein, dass Xact nur die Attribute
fett, kursiv und unterstrichen unterstützt. (Siehe auch [4])
Ein weiterer Grund, der gegen die Verwendung der Attributs
outlined spricht, ist folgender. Wenn man einen Treiber dazu
zwingt, einen outlined- Font aus einem normalen Font zu
berechnen, wird er grob gesagt um zwei Pixel breiter. Da ein
Pixel (im Gegensatz zu einem angepassten Font) eine
auflösungsabhängige Breite hat, ist ein Text in jeder
Auflösung unterschiedlich breit. Es ist aber völlig
unerwünscht, wenn ein Text auf unterschiedlichen Druckern eine
unterschiedliche Breite hat. Die einzige Methode dem
entgegenzuwirken, wäre Letterspacing. Das aber ist
typographischer Pfusch.
7 Fonts
7.1 Allgemeines
Im Internet kursieren jede Menge Fonts, die nur für den
Bildschirm und vielleicht noch für einen Drucker geeignet
sind. Jeder, der diese Fonts verwendet, muss sich darüber im
klaren sein, dass er Dokumente mit diesen Fonts niemals sauber
über GDOS ausdrucken können wird.
Dagegen werden im Atari- und im BELA-Paket die jeweiligen
Fonts für alle Druckertreiber des jeweiligen Pakets
mitgeliefert (Im Atari-Paket fehlen die 360x360dpi-Fonts).
Man kann dann - ein geeignetes Programm vorausgesetzt - jedes
Dokument mit jedem Druckertreiber ausdrucken.
Mit Speedo gibt es dieses Problem nicht mehr.
7.2 Bitmap-Fonts
Die verwendeten Fonts sind Bitmap-Fonts im DR Standardformat.
Siehe auch [1] und Anhang. Bei den GDOS-Bitmap-Fonts sind die
Breiteninformationen sowohl im Bildschirmzeichensatz als auch
in den Druckerzeichensätzen definiert. Leider waren die
Fontdesigner etwas übereifrig und haben die Breite der
Bildschirmzeichen vieler Fonts so angepasst, dass sie besonders
schön aussehen. Damit sind sie zwar schön, stimmen aber nicht
mit den Druckerzeichensätzen überein und erlauben kein
WYSIWYG.
Mit Speedo ist das aber kein Problem.
7.3 Vektorfonts
Die Vektorfonts im alten FSM-GDOS-Format werden hier mit OTL
bezeichnet.
Diese Fonts und Treiber sollten nicht mehr benutzt werden und
sind hier nur der Vollständigkeit halber aufgeführt.
Die Vektorfonts im SpeedoGDOS-Format werden hier mit SPD
bezeichnet.
8 Drucker
_______________________________________________________________________
|_Hersteller________|Drucker____________________|Passende_Treiber_____|
| NEC |P6+,P7+, |NECP... |
|___________________|P60,P70____________________|NB15_(FX...,NX1000)__|
|_HP________________|LaserJet_II________________|HP_LJET______________|
|_HP________________|DeskJet,_LaserJet_III,IV___|DESKJET_(HP_LJET)____|
|_CANON_____________|BJ10E______________________|BJ10_________________|
|_CANON_____________|LBP_4/8____________________|CANONLBP,_LBP________|
|_Mannesmann-Tally__|MT_90______________________|MT90_________________|
Treiber in Klammern funktionieren, nutzen aber die Fähigkeiten
des Druckers nicht optimal aus. Bei 24-Nadeldruckern bedeutet
das, dass die Drucker im 9-Nadel-Modus betrieben werden. Bei
HP-kompatiblen Laser- und Tintenstrahldruckern bedeutet das,
dass die Daten nicht komprimiert werden, obwohl die Drucker das
unterstützen.
Mit manchen DeskJet-Treibern soll es Probleme geben.
Versuchen Sie es in diesem Fall mit einem LaserJet-Treiber.
Der Ausdruck dauert dann aufgrund des grösseren Datenvolumens
etwas länger, die Probleme sollten aber behoben sein.
Was kompatibel heisst, bestimmen normalerweise nur die
Hersteller der kompatiblen Drucker.
Anmerkungen:
o Wer seinen Drucker nicht in der Liste findet und einen
passenden Druckertreiber dazu kennt, der schreibe mir.
o Auch wenn man schon einen passenden Druckertreiber für
seinen Drucker gefunden hat, ist es durchaus sinnvoll,
noch einige andere Druckertreiber auszuprobieren.
o Natürlich haben die FontGDOS-Druckertreiber ernsthafte
Speicherplatzprobleme. Was aber den Ausdruck von
Bitmap-Fonts anbelangt, so sind diese Treiber den anderen
hier aufgeführten GDOS-Treibern in der Geschwindigkeit
überlegen (Speedo-Treiber sind hier nicht
berücksichtigt).
8.1 Marktübersicht
Eine Marktübersicht von Druckern findet sich im TOS Magazin
7/92 Seite 24.
9 Programme
Es ist inzwischen selbstverständlich (wenn auch nicht üblich),
dass alle Programme GDOS unterstützen.
Die folgende Aufstellung beschränkt sich auf Programme, die
auch über GDOS ausdrucken.
_______________________________________________________________________________________________
|_Programmart______________|Programm________________|Vertrieb________________________|Speedo__|
| Chart/Messwertanalyse |Xact |SciLab |ja |
| |MM-Graph |Overscan | |
| |Off-Axis |ByTech |Ja |
| |DATA Professional 4 |Ralf Wirtz | |
| |MessPlot |Michael Siek (Shareware) | (ja) |
|__________________________|rho-Analyse_____________|rhotron_GmbH____________________|ja______|
| Graphik |Xact Draw |SciLab |ja |
| |Kandinsky |U. Rossgoderer (Shareware) |ja |
| |Chagall |Trade-iT |ja* |
| |Easydraw |MIGRAPH | |
| |TouchUp |MIGRAPH | |
|__________________________|CHARLY_IMAGE____________|Wilhelm_Mikroel.________________|ja*_____|
| Tabellenkalkulation |LDW Power Calc 2 |MSPI | |
| |K_Spread_4 |Omikron | |
| |Graal Calc 3 |Editions Profil | |
| |Atari Works |Atari Corp. |ja |
| |OPUS |Doug Harrison (PD) |nein |
|__________________________|BASiChart_______________|Dr.__Ackermann__________________|________|
| Text/DTP |Calligrapher |Working Title | |
| |Wordflair II |H3 | |
| |Timeworks Publisher |GST/H3 | |
| |G&D Text II |Hard & Soft | |
| |Cypress | | |
| |papyrus (Gold) S |R.O.M. |ja |
| |Infinity |ByTech GbR | |
| |Atari Works |Atari Corp. |ja |
|__________________________|1st_Word_Plus_4_________|GST/ICP_________________________|ja______|
| Fax |Junior Office |TKR |ja |
| |Tele Office |TKR |ja |
|__________________________|CoMa____________________|SoftBär_GbR_____________________|ja______|
|_Simulalion_dyn.__Syst.___|Dynasys_________________|Digital_Systems_&_Consulting____|________|
|_Text/Listendruck_________|ProList_________________|Richstein_&_Dick________________|ja______|
|_Chem.__Darstellung_______|Monoklin_2.0____________|MAXON_Sonderdisk________________|________|
| Platinenlayout |Route iT! & Circu iT! |Think! |ja |
|__________________________|Platon__________________|VHS_____________________________|ja*_____|
|_Vektorisierung___________|Convector_Zwei__________|Shift___________________________|________|
|_Hardcopy_________________|rhocopy_________________|rhotron_________________________|________|
|_Disk-Inhaltsverzeich.____|TreeView_2.4____________|Stephan_Gerle___________________|________|
|_Fraktale_________________|Fractals_IV_____________|Harald+Martin_Hansen____________|________|
|_PS-Interpreter___________|Postman_________________|SILICON_Technology______________|________|
|_Konkordanz_______________|Concordance_____________|SPIRIT_WARE_____________________|________|
|_Packershell_f.__MTOS_____|MARC_4.0________________|Think!__________________________|ja______|
|_Logikanalysator__________|CLA_v2r1________________|Craig_Graham_(Shareware)________|ja______|
|_Adressverwaltung_________|Pegasus_________________|Pergamon_Software_______________|ja______|
|_Symbolische_Mathematik___|Riemann_II______________|Richter_Distributor_____________|________|
|_Datenbank________________|Atari_Works_____________|Atari_Corp._____________________|ja______|
Die Aufstellung stellt keine Wertung dar. Ich nehme alle
Programme auf, die mir bekannt werden.
Anmerkungen:
o Programme, die in der Speedo-Spalte mit ja*
gekennzeichnet sind, unterstützen zwar SpeedoGDOS, machen
davon aber keinen Gebrauch, geben also keine Texte aus.
o Xact kann auch ohne SpeedoGDOS Speedo-Fonts ausdrucken.
o Mit Wordflair II wird FSM-GDOS ausgeliefert.
o Platon gibt lediglich Metafiles über GDOS aus.
o Ich habe es allerdings nicht geschafft, mit OPUS über
GDOS auszudrucken. Inzwischen habe ich erfahren, dass
OPUS nicht die Fonts auswählt, mit denen es zurechtkommt,
sondern das Drucken verweigert, sobald auch nur ein
solcher Font installiert ist. Siehe auch 7.2.
o Programme die nur auf Gerätenummer 21 drucken sind out.
(Opus und CLA)
Kandinsky Version 1.57 und TreeView sind zusammen in
ftp.e-technik.tu-muenchen.de pub/comp/platforms/atari/incoming
10 Hilfsprogramme
10.1 fontfix
Problemstellung: Bei manchen Bimap-Fonts ist die Fonthöhe
falsch eingetragen. Das wird durch dieses Programm erkannt
und korrigiert.
Das Programm fontfix ist im Internet an folgenden Orten zu
finden:
ftp.uni-muenster.de /pub/atari/Applications/Dtp/Fonts/Gdos
ftp.cs.tu-berlin.de /pub/atari/utils
10.2 Outline Fonts
Outline Fonts Accessory by CJGCopyright (c) 1992-1993 Atari
Corporation
Zweck: Bearbeitung der EXTEND.SYS-Datei für SpeedoGDOS. Die
Datei enthält eine Beschreibung der Grössen der Speedo-Caches,
der Fonts und der voreingestellten Fontgrössen. Ausserdem
können die Caches auf Platte gespeichert und wieder geladen
werden. Ein durchaus gelungenes Programm bis auf die
Tatsache, dass die vorgeschlagenen Cachegrössen auf FSM-GDOS und
nicht auf SpeedoGDOS abgestimmt sind.
Dateiname: OUTLINE.PRG alias OUTLINE.ACC, 67644 Bytes
Wird mit SpeedoGDOS mitgeliefert.
Warum schafft es Atari eigentlich nicht, die Programme mit
einer Versionsnummer auszustatten?
10.3 Druckertreiber
GDOS Devices Accessory by CJGCopyright (c) 1992 - 1993 Atari
Corporation
Zweck: Bearbeiten der ASSIGN.SYS.
Dateiname: DRIVERS.PRG alias DRIVERS.ACC, 64878 Bytes
Bevor man dieses Programm startet, sollte eine
Sicherheitskopie der ASSIGN.SYS angelegt werden! Dafür gibt
es (mindestens) zwei Gründe. Erstens werden die Informationen
über die Bitmap-Fonts kommentarlos hinausgeworfen und zweitens
wird - falls man unter Benutzereigen den Knopf Hinzufügen
drückt - die ASSIGN.SYS überschrieben, ohne dass man das mit
Abbruch im Hauptmenu wieder rückgängig machen kann. An alle
Programmierer: macht so etwas bloss nicht nach.
Sollte das Programm einmal keine Treiber anzeigen ohne aber
eine Fehlermeldung zu bringen, hilft es, ASSIGN.PRG laufen zu
lassen.
Von meinen vielen Treibern zeigt dieses Programm nur die
Speedo-Treiber an. Weiss jemand, wie das Programm das macht?
Ausserdem zeigt das Programm nicht den Filenamen an, sondern
einen Namen, der als String im Treiber hinterlegt ist. Wie
kommt man da dran?
10.4 ASSIGN
ASSIGN 1.0a ist von Dirk Sabiwalsky (PD).
Assign testet drei Dinge:
o Besitzen mehrere Zeichensätze die gleiche ID und haben
unterschiedliche Namen (Typefaces)?
o Besizten mehrere Zeichensätze die gleiche ID und die
gleiche Pixelhöhe?
o Besitzen mehrere Zeichensätze den gleichen Namen
(Typeface) und unterschiedliche IDs?
10.5 FONTCHK
Zweck: Testet GDOS-Fonts auf mögliche Fehler.
Das Programm wird beispielsweise mit ProList mitgeliefert.
10.6 FONTCNV
Zeck: Konvertiert GDOS-Fonts vom Motorola- ins Intelformat
Das Programm wird beispielsweise mit ProList mitgeliefert.
10.7 GEMFont
Fonteditor, der auch Signum- und PK (TEX)- Fonts lesen kann.
Internet:
ftp.tu-clausthal.de:pub/atari/systools/gdos/gemfo120.lzh
Bei dieser Gelegenheit gleich ein neueres unlzh oder lhxarc
besorgen.
10.8 FontMonger
Konverter und Editor für verschiedene Vektorfontformate, auch
Speedo. Läuft leider nur auf DOSen und MACs.
10.9 Font-ID
Font-ID ist ein kleines Freeware-Programm von Frank Schneider.
Es zeigt die mit GDOS oder SpeedoGDOS installierten Fonts samt
Font-ID in verschiedenen Punktgrössen in einem Fenster an.
Man kann sich also einen überblick verschaffen, wenn man
gerade kein Programm mit Fontselektor zur Hand hat oder dieses
die Font-ID nicht anzeigt.
11 Vertrieb
11.1 Atari
Die mit Atari gekennzeichneten Druckertreiber sind bei der
Atari GmbH erhältlich.
Man schickt einfach drei Leerdisketten, Rückporto und einen
freundlichen Brief an die Atari Computer GmbH und erhält dann
umsonst die drei Disketten mit Druckertreibern und Fonts.
Dieses Paket gibt es auch bei den Fachhändlern.
Es gibt keine Doku, aber für den Preis lohnt es sich allemal.
11.2 BELA
Die mit BELA gekennzeichneten Treiber gab es bei BELA.
Es gab zwei Disketten mit gepackten Druckertreibern und Fonts
für die Treiber.
Die Fonts haben zwar den gleichen Filenamen und Font-IDs wie
die entsprechenden Atari-Fonts, unterscheiden sich aber im
internen Fontnamen. Daher werden diese Fonts korrekterweise
von einigen Programmen zurückgewiesen, wenn sie zusammen mit
den original Atari Fonts verwendet werden.
Dokumentation gibt es praktisch nicht. Nicht einmal einen
Hinweis, wer das Copyright der einzelnen Treiber hat, oder wer
die Autoren sind.
BELA gibt es nicht mehr.
11.3 FontGDOS
Die Treiber aus diesem Paket sind wirklich drastisch schneller
als die bisherigen (Vergleichen kann man natürlich nur den
Ausdruck von Bitmap-Fonts und Graphik).
Ich habe keine Probleme gehabt, diese Treiber mit anderen
GDOS-Versionen zu kombinieren. Man muss sich aber auf die
alten Fonts beschränken.
FontGDOS ist der Nachfolger des Atari GDOS. Es unterscheidet
sich im Wesentlichen durch die Bezierfunktion und schnellere
und farbfähige Treiber. Es hat nichts mit FSM-GDOS oder
SpeedoGDOS zu tun.
FontGDOS ist bei einigen Firmen erhältlich, die es für eigene
Programme nutzen.
11.4 Language
Der mit Language bezeichnete Treiber wird auf der
Language-Disk des Mega STE mitgeliefert.
11.5 Internet
Die mit I gekennzeichneten Druckertreiber sind im Internet zu
finden (z.B. ftp.cs.tu-berlin.de).
11.6 Working Title
Die mit WT und wt bezeichneten Treiber werden mit Calligrapher
ausgeliefert. Die WT-Treiber sind OcWorking Title, die
wt-Treiber sind von Working Title lizensiert.
Auf der Calligrapher-Demodisk werden keine Druckertreiber
mitgeliefert. Die Druckertreiber, die mit Calligrapher-Lite
(15 DM) ausgeliefert werden, sind in den Tabellen mit CL
gekennzeichnet.
Auf beiden Disketten sind Bildschirmfonts enthalten.
11.7 Speedo-Treiber
Inzwischen ist SpeedoGDOS für jedermann erhältlich (99.- DM
ohne Gewähr).
Lieferumfang:
o Ein Installationsprogramm
o Eine Speedo-Fontengine
o 2 Programme zum Editieren der ASSIGN.SYS und EXTEND.SYS
o 14 Schnitte im Speedo-Format der Firma Bitstream.
Den FALCONs liegen inzwischen 18 Schnitte bei.
o 14 Druckertreiber
o Ein Installationshandbuch
Herausragende Eigenschaften sind
o Schnelligkeit
o Es muss nicht die ganze Fontdatei gelesen werden (Speichersparend)
o 16-Bit-Fonts (d.h. kein 256 Zeichen-Limit)
Siehe auch [4].
Ob es sich bei einem Font um einen Speedo- oder Bitmap-Font
handelt, Steht im 33. Byte des Fontnamens (vqt_name, INQUIRE
FACE NAME AND INDEX, VDI 130). Ist es 0, handelt es sich um
einen Bitmap-Font, bei 1 um einen FSM- oder Speedo-Font.
Auf einige Probleme ist dringend hinzuweisen:
Als Programmierer kann man nicht herausfinden, ob ein Treiber
Speedo-Fonts verträgt oder nicht. (Vergleiche aber letzte
Frage in Kapitel 10.3)
Einige Font-ids werden leider sowohl von Bitmap- als auch von
Speedo-Fonts verwendet, obwohl verschiedene Fonts mit gleicher
id niemals gleichzeitig installiert sein dürfen.
Zuwiderhandlung gegen die genannten Punkte werden mit Bomben
bestraft.
Es liegt also am Anwender, dass die richtigen Treiber und Fonts
installiert sind. Der Programmierer hat keine Chance hier
helfend einzugreifen und Fehler abzufangen.
Am besten installiert man nur Bitmapfonts mit den
entprechenden Treibern oder verwendet ein reines
Speedo-System.
Der mitgelieferte Monospace-Font der Version 4.0 enthält keine
Umlaute.
Entgegen den Aussagen in [14] wird SpeedoGDOS zur Zeit
weiterentwickelt.
Zur Installation und Programmierung empfehle ich dringend [5],
[6] und [7]. Es ist darauf zu achten, dass NVDI vor SpeedoGDOS
im Autoordner steht.
Wer Speedo einzeln gekauft hat, hat Version 4.0 bekommen, den
Falcons lag 4.1 bei.
11.8 Speedo 4.2
Inzwischen Ist die Version 4.2 mit deutlichen Verbesserungen
erhältlich. Bei R.O.M. gibt es Speedo 4.2 als Bundle und für
40 DM als Update. Einzeln kaufen kann man es weiterhin nur
bei Compo.
Lassen wir Ulli Ramps zu Wort kommen:
Huhu!
Im Folgenden finden Sie eine Liste der änderungen, die in die
Speedo GDOS Version 4.2 Eingang gefunden haben:
Line-A - Aufgrund häufiger Entwickler-Anfragen (:-)) wurde
Speedo GDOS vom LINE-A-Betriebssystemteil unabhängig gemacht.
Sämtliche Ausgaben laufen nunmehr über VDI Aufrufe. Dies
macht Speedo GDOS kompatibel zu vielen Graphik-Karten und
bewirkt mehr Multi-Tasking-''Freundlichkeit``. Auch können
jetzt verschiedene VDI-Ersatzprogramme wie bspw. NVDI besser
mit Speedo GDOS eingesetzt werden. Ein weiterer Vorteil der
Line-A Unabhängigkeit ist, das der sog. '' Scratch Puffer``
für algorithmisch errechnete Spezialeffekte keine Sorgen mehr
bereitet. Spezialeffekte sind jetzt über die Treiber (wie
MEMORY.SYS und die Druckertreiber) implementiert, so dass der Benutzer
bzw. das eingesetzte Programm sich nicht mehr um Speicher-Anforderungen
kümmern muss, um beliebige Punktgrössen zur Verfügung zu stellen.
Zu beachten ist hierbei, dass die Treiber auf dem neuesten Stand
sein müssen; verwenden Sie also keinesfalls mit Speedo GDOS 4.2
''altere "*.SYS`` Treiber! Für Programme ohne Textfunktionen können
Sie allerdings ältere Treiber benutzen (sprich: für reine Grafik).
Spezialeffekte wie ''fett`` oder ''kursiv`` sind jetzt auch in
gedrehten Texten einsetzbar; ebenso ''hell``; ''fett`` und
''hell`` zusammen gehen nur in 90 Grad Schritten.
Für Programme, die die Font ID-Nummern lesen, ist wichtig, dass
Speedo 4.2 den Wert 5000 zu den Font ID-Nummern addiert, um
Konflikte mit den ID-Nummern von GDOS Pixelfonts zu vermeiden.
Aus Druckertreibern wird von SpeedoGDOS 4.2 die Info für den
'_FSM_HDR' cookie geprüft. Wenn dieser cookie nicht gefunden
wird, wird das Laden von fonts unterbunden und dieser
(offensichtlich ältere) Treiber kann nur für
nicht-Text-Ausgaben genutzt werden. Treiber header müssen für
diese und zukünftige Versionen immer an einer Word Grenze
beginnen.
Vst_load_fonts() ist in zwei Punkten optimiert worden: 1.
wird beim load_font call nachgesehen, ob das ''EXTEND.SYS``
modifiziert wurde und führt nur noch dann ein Neuladen der
fonts durch. Durch Wegfall des scratch Puffers besteht keine
Notwendigkeit mehr für ein stdndiges Neuladen. Weiter wird
die globale Fontliste nicht jedesmal deallociert, was
Programmstarts enorm beschleunigt. Als Nebeneffekt wird
allerdings das miscellaneous cache bzgl. der Font Header
Infos erst beim nächsten Booten gelöscht.
MEMORY.SYS öffnet nicht mehr irrtümlich einen Drucker handle.
Der vst_height() wird jetzt nicht mehr bis zu einer maximalen
Punktgrösse grösser und dann irrtümlich wieder kleiner.
Die Postscript Tabelle ist jetzt nutzbar.
vrt_copyfm() in den Treibern ist repariert.
9) When in 'bicsmode', character 0 was not passed through to
the font engine. ??? [Anmerkung GC: Speedo kann pro Font mit
zwei verschiedenen Charactersets arbeiten, einmal sortiert wie
bei einem normalen Atari-Font und einmal wie ein
Bitstream-Font. Im Bitstream-Modus ist character 0 ein
wichtiges Zeichen (mir fällt nur gerade nicht ein, welches).]
Die Behandlung negativer Punktgrössen wurde konsistent zum
originalen Handling im alten FSM gemacht.
Die Treiber behandeln jetzt auch gebrochene Zahlen für
Schriftweiten korrekt.
Das v_ftext() der Treiber kann nun die offsets benutzen, die
an das ptsin array gegeben wurden.
Bildschirm-Treiber können nun korrekt als device 10 geladen
werden.
Der memory Treiber kann nun auch resident geladen werden.
vqt_devinfo() - vqt_devinfo() geben nun eine Rückmeldung; je
nachdem, ob die device geöffnet ist oder nicht. Weiterhin
wird der Treibername der device, zu finden im driver header,
in das ptsout array abgelegt, der Name ist 26 bytes lang.
Achtung: Wenn der Treiber nicht SpeedoGDOS-kompatibel ist,
wird ein Null String zurückgegeben; bei einem Fehler gibt es
eine -1 in ptsout[1].
Neuer Aufruf vst_width(): Dieser call ist identisch mit
vst_height(), nur dass er die Weite setzt. Die Einbindung ist
identisch, nur der opcode ist 231. Achtung: Wie bei
vst_arbpt() und vst_setsize() muss erst der generelle Aufruf
vst_arbpt() oder vst_height() getätigt werden, bevor man die
Weiten-Aufrufe vst_setsize() und vst_width() nutzen kann. Die
generellen Aufrufe setzten immer die Weiten zurück!
Nun ich wieder:
Das Installationsprogramm zu Speedo 4.2 hatte bisher einen
kleinen Fehler. Wenn ein NEC P - Drucker ausgewählt wird,
schreibt es NEC_P.SYS in die ASSIGN.SYS, obwohl der
mitgelieferte Druckertreiber NECP.SYS heisst. R.O.M. hat das
inzwischen verbessert.
11.9 XWindows
Für XWindows gibt es PD-Speedo-Fonts von Bitstream. Diese
können mit SpeedoGDOS 4.2 verwendet werden. Bei mir
funktioniert das wunderprächtig und auch die Umlaute machen
keine Probleme.
Im Internet Archie (Siehe11.13) wie folgt suchen lassen:
set search sub
prog speedo-
Die Fonts:
font0648.spd -bitstream-charter-medium-r-normal--0-0-0-0-p-0-iso8859-1
font0649.spd -bitstream-charter-medium-i-normal--0-0-0-0-p-0-iso8859-1
font0709.spd -bitstream-charter-bold-r-normal--0-0-0-0-p-0-iso8859-1
font0710.spd -bitstream-charter-bold-i-normal--0-0-0-0-p-0-iso8859-1
font0419.spd -bitstream-courier-medium-r-normal--0-0-0-0-m-0-iso8859-1
font0582.spd -bitstream-courier-medium-i-normal--0-0-0-0-m-0-iso8859-1
font0583.spd -bitstream-courier-bold-r-normal--0-0-0-0-m-0-iso8859-1
font0611.spd -bitstream-courier-bold-i-normal--0-0-0-0-m-0-iso8859-1
11.10 COMPO
Bei Compo gibt es ein Paket mit 40 Fontschnitten im Bitstream
Speedo-Format für 99.- DM (Ohne Gewähr):
4 Schnitte Bitstream Amerigo; 1 Schnitt Blippo; 1 Schnitt
Broadway; 1 Schnitt Brush Script; 1 Schnitt Caslon Openface; 1
Schnitt Dom; 2 Schnitte Kaufmann; 2 Schnitte Ribbon; 14
Schnitte Swiss (Helvetica); 14 Schnitte Zurich (Univers)
11.11 IMG-0300
Im Internet unter
ftp.uni-muenster.de /pub/atari/Gdos
11.12 Sonstige
Ich treffe keine Auswahl an Treibern. Das Kriterium ist
Vollständigkeit.
Die Programmautoren (und Anwender) der Programme sind hiermit
aufgefordert, mir zu schreiben, welche GDOS-Treiber bei den
einzelnen Programmen mitgeliefert werden (Mit den Angaben
Codelänge, Datum und evtl. bekannte Fehler).
11.13 FTP
Viele Studenten haben das Glück sich überall auf der Welt mit
FTP Dateien holen zu können. Es ist allgemein bekannt, dass
die Unis nur Pauschalen für die Standleitungen zahlen.
Weitgehend unbekannt ist aber, dass Verbindungen zwischen
Europa und Amerika von den Unis volumenabhängig bezahlt werden
müssen.
Versuchen Sie also Verbindungen über den grossen Teich strikt
zu vermeiden und auch sonst möglichst kurze Wege zu wählen.
Ausserdem sollte die übertragung auf Zeiten ausserhalb der
Arbeitszeiten am Ort der Server gelegt werden.
Wo sich Files mit bekanntem Dateinamen befinden kann mit
Archie herausgefunden werden. In Deutschland:
telnet archie.th-darmstadt.de
login: archie
help
In den USA z.B.: archie.ans.net
Archie zeigt dann automatisch weitere Archie-Rechner an.
Verwenden Sie den in Ihrer Nähe.
Die Archie-Datenbanken fragen etwa einmal im Monat
nacheinander die bekannten FTP-Server nach den öffentlich
zugänglichen Files ab.
11.14 SciLab
Die GDOS-Treiber von SciLab sind nicht in den Treibertabellen
aufgeführt, auch wenn insbesondere die Treiber für Farbducker
sehr begehrt sind.
Diese Treiber können nicht (mehr) einzeln bei SciLab bezogen
werden. Das liegt daran, dass viele Programme die Farbtreiber
falsch ansprechen und SciLab dann den ärger hat.
Man kann an diese Treiber nur herankommen, wenn man ein
entsprechendes Programm bei SciLab kauft oder wenn man den
Softwarevertrieb der eigenen Programme bittet, diese Treiber
zu lizensieren. SciLab hat dafür immer ein offenes Ohr.
12 Source
Als Entwickler kann man einen fast fertigen Druckertreiber im
Objectcode bekommen. Dieser muss dann nur noch an den
speziellen Drucker angepasst werden.
Dieses Paket gibt es sowohl für GDOS als auch für SpeedoGDOS.
13 Tips und Tricks für Anwender
13.1 Pixelmüll beim Drucken
Beim Ausdruck von Graphiken mit hohem Schwärzungsgrad in einer
Zeile auf dem NEC P6+ (vielleicht auch auf anderen Druckern)
ist es mir öfters passiert, dass eine Druckzeile übersprungen
wurde (Speedo-Treiber NB15, NECP) beziehungsweise dass zweimal
versetzt über die Druckzeile gedruckt wurde (Speedo-Treiber
FX80, NX1000).
Das passiert sowohl bei direkter Ausgabe als auch mittels
CENSPEED. Durch Verwendung des Spoolers VARSPOOL tritt dieser
Effekt nicht mehr auf.
VARSPOOL befindet sich auf der Treiberdiskette der
NEC-Drucker.
13.2 NEC P6+
Irgendwann fängt ein NEC P6+ an zu rattern. Wenn man die
vordere Klappe aufmacht, sieht man eine etwas über einen
Zentimeter dicke runde Führungsstange. Auf diese ist etwa
einmal im Jahr zwei Tropfen Nähmaschinenöl zu applizieren.
Nähmaschinenöl gibt's bei Muttern.
14 Tips und Tricks für Programmierer
14.1 Fontgrösse und Pixelgrösse
Hier geht es um meine Erfahrungen mit GDOS und WYSIWYG. Mein
Dank gilt Ulrich Rossgoderer, der diese bestätigt hat.
Es geht im Folgenden um die Ausgabe von Vektorgraphik und Text
auf Bildschirm und Drucker.
Die Grössenangabe des Textes geschieht in der Einheit Punkt und
ist unabhängig von der Auflösung des Ausgabegerätes immer
gleich.
Die Vektorgraphik dagegen ist vor der Ausgabe in Pixel
umzurechnen. Das ist an sich kein Problem, denn beim öffnen
der vituellen / physikalischen Workstation erhält man die
Pixelgrösse in mikrometern in devParm[3] und devParm[4] zurück.
Nehmen wir an, die Vektorgraphik sei intern in mikrometern
abgespeichert, dann sind bei der Ausgabe die Stützpunkte
einfach durch devParm[3] bzw. devParm[4] zu teilen um die
Position in Pixeln zu erhalten. Bei der Ausgabe in Fenstern
ist noch ein Offset hinzuzuaddieren, was hier aber nicht
relevant ist.
Soweit die Theorie, die bisher ganz einfach ist (Siehe auch
[3]). Nun zur Praxis.
Mit dieser Methode geben wir nun einen Text und einen Rahmen,
der intern als Vektorgraphik gespeichert ist, aus. Es ist
dabei irrelevant ob der Text mit SpeedoGDOS oder als
Bitmap-Font ausgegeben wird. Um besser vergleichen zu können
soll der Rahmen den Text exakt umschliessen.
Ich habe nun folgende Erfahrungen gemacht. Der Text, der auf
dem Bildschirm (ST-high) den Rahmen genau ausfüllt, ist beim
Ausdruck im Vergleich zum Rahmen viel zu klein.
Ein Fehler bei der Umrechnung der Pixelgrösse ist
auszuschliessen, denn ich habe den Ausdruck mit den Treibern
NB15, NECP, FX80 und NX1000 gemacht und die Ausdrucke decken
sich.
Einzig mögliche Erklärung die mir einfällt ist, dass der
Bildschirmtreiber für die Pixelgroesse eine andere Auflösung
annimmt als für die Fontgrösse.
Zwei Lösungen des Problems sind hier anwendbar:
Erstens kann man auf dem Bildschirm eine andere Pixelgrösse
annehmen, als vom Betriebssystem geliefert wird. Ich habe
nach dem öffnen der virtuellen (und nur dieser!) Workstation
devParm[3] := 282;
devParm[4] := 282;
berechnet und mit diesem Wert die Umrechnung der Vektorgraphik
von mikrometer in Pixel vorgenommen. Jetzt stimmt das
Verhältnis von Graphik zu Text auf dem Bildschirm exakt mit
dem Ausdruck über die verschiedenen Druckertreiber überein.
Problematisch ist nur, dass eine A4-Seite in der Breite nicht
mehr auf den Bildschirm passt. Die Zahlenwerte sind
experimentell bestimmt und können eventuell noch verbessert
werden.
Zweitens kann man für den Bildschirm (und nur dort) einfach
eine kleinere Fontgrösse verwenden. Mit Speedofonts ist das
ganz einfach, da man ja die Gösse in Punkten mit fast beliebig
vielen Nachkommastellen angeben kann.
Mit Bitmapfonts kann das aber nicht klappen, da man nicht für
jeden Druckerzeichensatz einen in der 72/96-fachen Grösse für
den Bildschirm hat.
Diese Methode ist sicher für ST-mid und evtl. noch bei
anderen Auflösungen zu modifizieren.
Laut Wilfried Behne werden die Werte devParm[3] und devParm[4]
der Bildschirmtreiber vom aktuellen SpeedoGDOS schlicht
ignoriert. Die Werte von physikalischen Workstations werden
aber übernommen.
14.2 Treiberauswahl
Meine Tests verschiedener GDOS-Programme haben ergeben, dass
doch einige Programmierer mit folgendem Probleme haben:
Die Anwender können in der ASSIGN.SYS beliebige Treiber
anmelden. Beispielsweise könnte dort
23 FX80.SYS
27 NECP.SYS
28 NB15.SYS
31 META.SYS
61 MEMORY.SYS
stehen. Wie bekommt man als Programmierer sicher heraus,
welche Treiber angemeldet (und auch bereit) sind? Und das,
obwohl im Beispiel kein Drucker 21 angemeldet ist? Ganz
einfach: Unterstützt das Programm Drucker, so sind alle
Treiber mit Nummer 21 bis 30 zu öffnen und gleich wieder zu
schliessen. Ob ein Druckertreiber angemeldet ist, sieht man
daran, dass beim öffnen ein Devicehandle>0 zurückgegeben wird.
Nur bei geöffnetem Treiber liefert v_f_devinfo sinnvolle Werte
zurück.
Werden MEMORY-Treiber unterstützt, ist mit den Treibernummern
61 bis 70 analog zu verfahren.
Die obige ASSIGN.SYS ist im übrigen sehr sinnvoll, da die NEC
P irgendwas all diese Treiber unterstützen und dann in
unterschiedlicher Auflösung drucken.
15 Adressen
(Vieles gibt es auch beim freundlichen Atari-Händler um die
Ecke :-)
Application Systems Heidelberg (ASH)
Postfach 102646 * 69016 Heidelberg
Tel.: +49 6221 300002
ATARI Computer GmbH
Am Kronberger Hang 2 * 65824 Schwalbach /Ts.
Tel.: +49 6196 801-0; Fax.: +49 6196 801 180
Entwicklersupport-Mailbox: +49 6196 81041
Behne & Behne Systemsoftware GbR
Lindenkamp 2 * 31515 Wunstorf
Tel./Fax.: +49 5031 8629
BELA Computer GmbH: R.I.P.
ByTech GbR
Detlef Kuhl, Frank Hieronymi
Bismarckstrasse 88 * 10627 Berlin
Tel.: +49 30 3134258
COMPO Software GmbH
Ritzstrasse 13 * Postfach 1051 * 54591 Prüm
Tel.: +49 6551 6067
Digital DeskTop (DDT) ist eine Händlergemeinschaft
Adressen finden sich in Anzeigen der Atari-Zeitschriften.
Digital Systems & Consulting
Soester Str. 306 * 59071 Hamm
Tel.: +49 2381 889413; Fax.: +49 2381 889812
Stephan Gerle
Ruthstrasse 8 * 44149 Dortmund
H3 Systems
Häusserstrasse 44 * 69115 Heidelberg
Tel.: +49 6221 164031; Fax.: +49 6221 184541
Harald und Martin Hansen
Weserstrasse 82 * 12059 Berlin
Hard & Soft
Obere Münsterstr. 33-35 * 44575 Castrop-Rauxel
Tel.: +49 2305 18014; Fax.: +49 2305 32463
ICP GmbH & Co.KG
Leserservice TOS * Innere-Cramer-Klett-Strasse 6 * 90403
Nürnberg 1
MAXON Computer GmbH
Schwalbacher Strasse 52 * 65734 Eschborn
Tel.: +49 6196 481811
Migraph Inc.
32700 Pacific Highway S.
Suite 12, Federal Way
WA 98003, USA
Tel.: 0012068384677
OMIKRON Soft+Hardware GmbH
Sponheimerstr. 12a * 75117 Pforzheim
Tel.: +49 7231 356033
Pergamon Software * Lehmann & Herzog
Wegscheidestr. 29 * 60435 Frankfurt/Main
Tel.: +49 69 5488279
rhotron GmbH
Entenmühlstrasse 57 * 66424 Homburg/Saar
Tel.: +49 6841 64067; Fax.: +49 6841 2467
Richstein & Dick GbR (Kaktus)
Konrad-Adenauer Strasse 19 * 67663 Kaiserslautern
Tel.: +49 631 22253
Richter Distributor
Hagener Str. 65 * 58285 Gevelsberg
Te.: +49 2332 2706
R.O.M. Software (Neue Adresse !)
Christian Nieber & Ullrich Ramps
Raschdorffstr. 99 * 13409 Berlin
Tel.: +49 30 4924127
SciLab GmbH
Isestrasse 57 * 20149 Hamburg
Tel.: +49 40 4603702
SHIFT Computer + Werbung GmbH ist aufgelöst
Michael Siek
Bohlweg 6a * 38678 Clausthal-Zellerfeld
Tel.: +49 5323 4413
SILICON Technology & Promotion
Wilhelmshöher Allee 124 * 34119 Kassel Tel.: +49 561 711924
Softbär GbR
Richardstr. 60 * 12055 Bärlin
Tel.: +49 30 6226884
SPIRIT WARE
Bible Church 15211
15th Avenue NE Seattle, WA 98155 (USA)
TKR
Stadtparkweg 2 * 24106 Kiel
Tel.: +49 431 337881; Fax.: +49 431 35984
Trade-iT
Arheiligerweg 6 * 64380 Rossdorf
Tel.: +49 6154 9037
Dipl.-Phys.-Ing. Ralf Wirtz
Kasterstr. 30 * 52428 Jülich
Tel.: +49 2461 1255
Wilhelm Mikroelektronik
Luenen
Working Title GbR
Lilienweg 12 * 53123 Bonn
Tel.: +49 228 647020
3K Computerbild
Wevelinghoven 26 * 41334 Nettetal
Tel.: +49 2153 91860
16 Sonstiges
16.1 Kritik
Kritik ist herzlich willkommen. Wer Zusatzinformationen will,
der schicke eine E-Mail an
G.Castan@physik.uni-stuttgart.de
Wahrscheinlich hat der, der mir schreibt, schon ein oder zwei
Treiber getestet. Schreibt mir bitte, ob die oben angeführten
Fehler auftreten, oder nicht.
Wer sonstige Treiber-Quellen kennt, soll sich auch
aufgefordert fühlen, mir zu schreiben.
16.2 Lob
Wem dieses FAQ schon aus einer misslichen Lage geholfen hat,
der schreibe mir aus dem nächsten Urlaub eine Postkarte.
Bisheriger Stand an Postkarten: 1.
16.3 In eigener Sache
Aus gegebenen Anlässen bitte ich die Vertriebe beim Kopieren
der Update-Disketten das Verify anzuschalten.
Es gibt nur 2 Firmen, mit denen ich in dieser Hinsicht keine
schlechten Erfahrungen gemacht habe.
Könnte sich vielleicht einer der geneigten Leser aufraffen
einen Speedo-Fonteditor zu schreiben? Ich biete mich auch
ganz uneigennützig als Betatester an ;-)
16.4 Warenzeichen
Dieses Dokument ist gespickt von eingetragenen Warenzeichen,
die nicht frei verwendbar sind.
16.5 Garantie
Ich garantiere für gar nix.
Literatur
[1] Douglas N. Wheeler, EVERYTHING YOU EVER WANTED TO
KNOW ABOUT GDOS (AND MORE), (Internet, Filename:
GDOS.ARC oder GDOS.TXT)
Hier steht alles, was es an Allgemeinwissen über GDOS-Treiber gibt.
(AND MORE)
[2] Jankowski, Rabich, Reschke, Atari Profibuch, 10. Auflage,
SYBEX, Düsseldorf (1992)
Das Standardwerk. Für Programmierer: im VDI-Teil steht, wie man
Bilschirm und Druckertreiber korrekt anspricht.
[3] Marc Rene Gardeya, VDI für jedermann, ST-Computer 10/93
Einführung in die saubere Programmierung von Bildschirm- und Druc-
kerausgaben.
[4] Julian Reschke, Herbstgedanken, ST-Magazin 11/92
Herbstgedanken über FontGDOS und Speedo-GDOS.
[5] Erik Dick, Schön und schnell?, ST-Computer 7/93
Allgemeines über GDOS und Installation von Speedo. Im Prinzip das,
was im Installationshandbuch steht, allerdings wird auf spezielle Pro-
bleme gesondert eingegangen.
[6] Erik Dick, SPEEDO-Gonzales, ST-Computer 8/93
Pflichtlektüre zur Speedo-Programmierung. Beschrieben werden die
neuen Bindings und Programmierhinweise für Standardanwendungen.
[7] Erik Dick, SPEEDO-Gonzales, ST-Computer 9/93
Bedeutung der Speedo-Fehlermeldungen und Bindings der Bezier- und
Cacheroutinen
[8] Raymond Schröder, Atari-Hotline, ST-Magazin 7/92
Wozu gibt es GDOS? Welche Programme unterstützen es? Wie in-
stalliert man es?
[9] Sven Behne, Wilfried Behne, NVDI-Dokumentation, BELA
Beschreibung des VDI. Leider ist nicht aufgeführt, worin sich Bild-
schirmtreiber und Druckertreiber unterscheiden.
[10] Wilfried Behne, Andreas Kromke, Fallen im VDI des Atari ST
und wie man sie umgeht, c't 1991, Heft 3
Es werden vor allem Fehler in den Bildschirmtreibern beschrieben.
[11] Laurenz Prüssner, ...es ist alles so schön Bunt hier, ST-Magazin
5/92, 7/92, 9/92
Umgang mit mehr als 256 Farben und mit geräteabhängigen Forma-
ten.
[12] Laurenz Prüssner, Sekt oder Selters, ST-Magazin 4/93
MEMORY.SYS: Binding, Vorgehensweise bei Farbauflösungen, Font-
ausgabe mit und ohne SpeedoGDOS.
[13] Laurenz Prüssner, Auf ein Neues!, ST-Magazin 1/93
.OFF TOPIC. Sollte jeder, der mit Fly Dials oder ähnlichen Libraries
arbeitet, gelesen haben. Problemstellung: Die neuen AES benutzen
für 3D-Objekte ob_state-Bits, die bisher frei verwendbar waren und
von den Libraries auch für eigene Zwecke verwendet werden.
Das Problem betrifft ausschliesslich AES 3.31 (TOS 4.01)
und ist inzwischen gelöst.
[14] Laurenz Prüssner, Summertime Blues, ST-Magazin 6/93
Listing zum öffnen des MEMORY-Treibers.
[15] Laurenz Prüssner, Mehr Schub!, ST-Computer 2/94
Drucken über GDOS, speziell wird das Drucken von Bitmap-Rastern
- auch in Farbe - besprochen.
[16] Oliver Scheel, Erste Hilfe für MultiTOS, ST-Magazin 6/93
Allgemeines zu Installation von MultiTOS.
[17] Günter Born, Referenzhandbuch Dateiformate, 2. Auflage,
Addison-Wesley, Bonn (1992)
Mit den entsprechenden Treibern ist es relativ einfach, im .IMG- und
im .GEM- Format auszugeben. In diesem Buch steht, wie man diese
Formate wieder einliest (und mehr).
[18] Günter Born, Dateiformate Programmierhandbuch,
Addison-Wesley, Bonn (1993)
Sourcen (TurboC, TurboPascal) zum Laden und Speichern der For-
mate. Zum Auswerten der Daten benötigt man weiter das Referenz-
handbuch.
[19] Tim Oren, Professional GEM, (Internet, Filename: PROGEM)
Tim Oren geht zwar vor allem auf die Programmierung der AES ein,
aber die Literaturliste wäre ohne ihn unvollständig.
[20] Teflon Fonfara, Frau Kächele & Frau Peters - Die fanatischen
Zwei, TUCAN Records (1992)
Das ultimative Hefezopf-FAQ
CASTAN@cip.physik.uni-stuttgart.de; alias: G.Castan@physik.uni-stuttgart.de
Gerd Castan * Hoehbergstr. 16 * D-70327 Stuttgart