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 Marktbersicht 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 fr Anwender 13.1 Pixelmll beim Drucken 13.2 NEC P6+ 14 Tips und Tricks fr 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 fr bestimmte Drucker verwenden? Wer zu einzelnen Treibern mehr Erfahrungen oder Fragen hat, der kann mir schreiben. Ich werde mir die Mhe machen, diese Zusammenfassung zu vervollst„ndigen. Mein Dank fr sachdienliche Hinweise gilt fogenden Personen: Kay Prisille (MIGRAPH-Produkte, Calligrapher lite); Julian Reschke (IMG-0???); Volker Ritzhaupt; Jrgen 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 Prssner (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 kmmern. Niemand ist bereit, fr 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 aufgefhrt. + 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 fr (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 dnn 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 fr 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 fr den Bildschirm angemeldet werden, wie fr 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 fr den Bildschirmtreiber 1 nicht angemeldet sind, stehen auch fr die anderen Bildschirmtreiber nicht zur Verfgung. 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. Fr 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 dafr 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 frher 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 fr 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 fr 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 aufgefhrte 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 fr 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 Fr 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 ausgefllt dar. 2 Nicht auf dem TT lauff„hig. 3 Die EXTENDED ENQUIRE FUNCTION (VDI 102, vq_extnd) liefert teilweise nicht die Werte zurck, 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 untersttzt. (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 unerwnscht, 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 fr den Bildschirm und vielleicht noch fr einen Drucker geeignet sind. Jeder, der diese Fonts verwendet, muss sich darber 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 fr 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 aufgefhrt. 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 untersttzen. 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 fr seinen Drucker gefunden hat, ist es durchaus sinnvoll, noch einige andere Druckertreiber auszuprobieren. o Natrlich haben die FontGDOS-Druckertreiber ernsthafte Speicherplatzprobleme. Was aber den Ausdruck von Bitmap-Fonts anbelangt, so sind diese Treiber den anderen hier aufgefhrten GDOS-Treibern in der Geschwindigkeit berlegen (Speedo-Treiber sind hier nicht bercksichtigt). 8.1 Marktbersicht Eine Marktbersicht 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 untersttzen. 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, untersttzen 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 fr 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! Dafr gibt es (mindestens) zwei Grnde. Erstens werden die Informationen ber die Bitmap-Fonts kommentarlos hinausgeworfen und zweitens wird - falls man unter Benutzereigen den Knopf Hinzufgen drckt - die ASSIGN.SYS berschrieben, ohne dass man das mit Abbruch im Hauptmenu wieder rckg„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 fr 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, Rckporto 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 fr 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 fr 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 zurckgewiesen, 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 natrlich 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 fr 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 fr 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 drfen. 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 fr 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`` fr 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 kmmern muss, um beliebige Punktgr”ssen zur Verfgung zu stellen. Zu beachten ist hierbei, dass die Treiber auf dem neuesten Stand sein mssen; verwenden Sie also keinesfalls mit Speedo GDOS 4.2 ''altere "*.SYS`` Treiber! Fr Programme ohne Textfunktionen k”nnen Sie allerdings „ltere Treiber benutzen (sprich: fr 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. Fr 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 fr den '_FSM_HDR' cookie geprft. Wenn dieser cookie nicht gefunden wird, wird das Laden von fonts unterbunden und dieser (offensichtlich „ltere) Treiber kann nur fr nicht-Text-Ausgaben genutzt werden. Treiber header mssen fr diese und zuknftige 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 fhrt nur noch dann ein Neuladen der fonts durch. Durch Wegfall des scratch Puffers besteht keine Notwendigkeit mehr fr 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 irrtmlich einen Drucker handle. Der vst_height() wird jetzt nicht mehr bis zu einer maximalen Punktgr”sse gr”sser und dann irrtmlich 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 fr 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 Rckmeldung; 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 zurckgegeben; 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 zurck! 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 Fr 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 fr 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 Glck sich berall auf der Welt mit FTP Dateien holen zu k”nnen. Es ist allgemein bekannt, dass die Unis nur Pauschalen fr die Standleitungen zahlen. Weitgehend unbekannt ist aber, dass Verbindungen zwischen Europa und Amerika von den Unis volumenabh„ngig bezahlt werden mssen. 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 aufgefhrt, auch wenn insbesondere die Treiber fr 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 dafr 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 fr GDOS als auch fr SpeedoGDOS. 13 Tips und Tricks fr Anwender 13.1 Pixelmll 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 Fhrungsstange. 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 fr 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] zurck. Nehmen wir an, die Vektorgraphik sei intern in mikrometern abgespeichert, dann sind bei der Ausgabe die Sttzpunkte 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 ausfllt, 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 fr die Pixelgroesse eine andere Aufl”sung annimmt als fr 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 fr 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 fr jeden Druckerzeichensatz einen in der 72/96-fachen Gr”sse fr den Bildschirm hat. Diese Methode ist sicher fr 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: Untersttzt 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 zurckgegeben wird. Nur bei ge”ffnetem Treiber liefert v_f_devinfo sinnvolle Werte zurck. Werden MEMORY-Treiber untersttzt, 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 untersttzen 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 Prm 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 Mnsterstr. 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 Nrnberg 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 Entenmhlstrasse 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 Jlich 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 angefhrten Fehler auftreten, oder nicht. Wer sonstige Treiber-Quellen kennt, soll sich auch aufgefordert fhlen, 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 uneigenntzig als Betatester an ;-) 16.4 Warenzeichen Dieses Dokument ist gespickt von eingetragenen Warenzeichen, die nicht frei verwendbar sind. 16.5 Garantie Ich garantiere fr 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, Dsseldorf (1992) Das Standardwerk. Fr Programmierer: im VDI-Teil steht, wie man Bilschirm und Druckertreiber korrekt anspricht. [3] Marc Rene Gardeya, VDI fr jedermann, ST-Computer 10/93 Einfhrung 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 Pflichtlektre zur Speedo-Programmierung. Beschrieben werden die neuen Bindings und Programmierhinweise fr 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 untersttzen es? Wie in- stalliert man es? [9] Sven Behne, Wilfried Behne, NVDI-Dokumentation, BELA Beschreibung des VDI. Leider ist nicht aufgefhrt, 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 Prssner, ...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 Prssner, Sekt oder Selters, ST-Magazin 4/93 MEMORY.SYS: Binding, Vorgehensweise bei Farbaufl”sungen, Font- ausgabe mit und ohne SpeedoGDOS. [13] Laurenz Prssner, 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 fr 3D-Objekte ob_state-Bits, die bisher frei verwendbar waren und von den Libraries auch fr eigene Zwecke verwendet werden. Das Problem betrifft ausschliesslich AES 3.31 (TOS 4.01) und ist inzwischen gel”st. [14] Laurenz Prssner, Summertime Blues, ST-Magazin 6/93 Listing zum ”ffnen des MEMORY-Treibers. [15] Laurenz Prssner, 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 fr MultiTOS, ST-Magazin 6/93 Allgemeines zu Installation von MultiTOS. [17] Gnter 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] Gnter 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