Euro-Zeichen unter MS-DOS

 English Version of this page is not yet available
 
  Einstieg
 
Für der Unterstützung des Euro-Zeichens unter DOS gilt es drei Probleme zu lösen:

Das Euro-Zeichen

1. auf den Bildschirm zu bekommen

2. per Tastatur eingeben zu können

3. zu drucken

 

  Euro auf dem Bildschirm
 
Das Aussehen der Zeichen auf dem Bildschirm wird unter DOS normalerweise vom BIOS der Grafikkarte bestimmt. Dort befindet sich ein Zeichensatz mit Codepage 437 in den Größen 8x8, 8x14 (nicht immer) und 8x16. Mit verschiedenen Codepages wird der Zeichensatz an landesspezifische Besonderheiten angepaßt.

In der Codepage 437 gibt es bei Pos. 238 ein Zeichen aus der Mengenlehre, das dem Euro-Zeichen recht ähnlich sieht. Es hat aber nur einen horizontalen Strich. Als Notlösung taugt es aber allemal.

Für die Unterstützung verschiedener Codepages ist unter DOS der Treiber DISPLAY.SYS zuständig. Dieser kann auf EGA- und VGA-Karten einen Zeichensatz aus einer CPI-Datei nachladen. DISPLAY.SYS wird von MS-DOS bzw. Win9x standardmäßig in der CONFIG.SYS geladen:
C:\WINDOWS\COMMAND\display.sys con=(ega,,1)
Das eigentliche Laden von Codepage 850 erfolgt durch das MODE Kommando, das üblicherweise mit folgenden zwei Zeilen in der AUTOEXEC.BAT eingetragen ist:
mode con codepage prepare=((850) C:\WINDOWS\COMMAND\ega.cpi)
mode con codepage select=850
Damit wird Codepage 850 aktiviert, wobei der Zeichensatz aus der Datei EGA.CPI geladen wird.

In der Praxis macht Codepage 850 oft Probleme mit alten DOS-Programmen, die in CP 437 vorhandene, in CP 850 aber fehlende Blockgrafikzeichen benutzen, siehe Screenshot des Norton-Commanders 2.0 mit Codepage 850.

Nun haben sich IBM und andere dafür entschieden, das Euro-Zeichen in Codepage 850 aufzunehmen, und zwar bei Postion 213, wo es eine zu klein geratene Eins (oder ein 'i ohne Punkt') ersetzt. Damit macht Codepage 850 plötzlich Sinn, wenn man denn eine CPI-Datei mit einem Zeichensatz mit Euro-Zeichen hat.

IBM liefert mit seinem PC-DOS eine aktualisierte Fassung der EGA.CPI aus, Caldera wohl auch. Nutzer von MS-DOS stehen auf dem Schlauch.

Deshalb habe ich mit den CPI-Tools von Kosta Kostis eine CPI-Datei erstellt, die die Codepages 437 und 850 umfaßt, wobei 850 das Euro-Zeichen bei Position 213 enthält (siehe unten). Die CPI-Datei funktioniert nur unter DOS, Windows 9x/ME aber nicht unter NT4, 2000, XP und höher.

Die Schriftarten für die DOS-Box von Windows kommen aus FON- und TTF-Dateien. Ich habe eine ganze Reihe Bitmap-Fonts gebaut, auch welche mit Codepage 850 und Euro-Zeichen.

 

  Euro per Tastatur eingeben
 
Irgendwer hat definiert, daß das Euro-Zeichen in Deutschland mit AltGr+E eingegeben wird. Bei Codepage 850 braucht man für DOS also einen Tastaturtreiber, der bei AltGr+E das Zeichen 213 ausgibt. Auf Basis des in c't 3/91 veröffentlichten Tastaturtreibers 'KEYB2' habe ich KEYB_EUR erstellt.

Wer den 'Not-Euro' aus Codepage 437 benutzen will, braucht auf AltGr+E das Zeichen Nr. 238. Dafür gibts K437_EUR.

 

  Euro Drucken
 
Das Euro-Zeichen zu Papier zu bringen, gestaltet sich weit schwieriger: Unter DOS arbeiten Drucker in aller Regel im Text-Modus, d.h. der Drucker bekommt lediglich mitgeteilt, welches Zeichen er drucken soll. Wie ein Zeichen aussieht, bestimmt er selbst.

Wenn man den 'Not-Euro' aus Codepage 437 benutzt, hat man es leicht. Das Zeichen ist so auch in den Zeichensätzen der Drucker enthalten.

Für ein richtiges Euro-Zeichen besteht eine einfache Notlösung darin, statt des Euro-Zeichens ein 'C', einen Rückschritt und dann ein '=' zu drucken. Das würde sogar mit Typenrad-Druckern funktionieren.
Realisieren kann man das mit einem kleinen TSR-Programm von 1992 aus meinem Freeware-Fundus, das selbst im Internet nirgendwo zu finden ist: OVER127. Damit kann man für jedes zum Drucker gesendete Zeichen eine Ersetzung definieren, die auch aus mehreren Zeichen bestehen kann.
Optisch ist diese Lösung aber kaum akzeptabel.

Ebenfalls mit OVER127 könnte man das Euro-Zeichen aus Codepage 850 bei Postion 213 durch das 'Not-Euro'-Zeichen aus Codepage 437 bei Position 238 ersetzen.

Bei Epson LQ kompatiblen Druckern besteht die Möglichkeit, eigene Zeichen zu definieren. Leider geht das standardmäßig nur mit Zeichen unterhalb Nr. 128. Mit Over127 kann man aus dem Euro bei Pos. 213 ein Zeichen unterhalb 128 machen, das man für den Drucker in das Eurozeichen ändert. Dafür muß man dann ein Zeichen unterhalb 128 zum Euro-Zeichen manchen. Beim Drucken des Zeichens 213 ist dann mit Over127 das Zeichen durch eine Steuersequenz zu ersetzen, die den benutzerdefinierten Zeichensatz aktiviert, das umdefinierte Zeichen sendet und dann wieder den Standard-Zeichensatz aktiviert. Ähnlich müßte das auch bei HP Deskjets möglich sein.

Ein Programm zum Erzeugen eigener Zeichen für Epson-LQ Drucker ist Eric S. Meyer's LQCHAR von 1990. Ich hab's aber nie getestet.
Wenn aber die eingesetzte Software vor dem Drucken einen Reset zum Drucker schickt - was durchaus üblich ist - ist ein mit LQCHAR definiertes Zeichen gleich wieder dahin. Die Chancen stehen also eher schlecht.

Epson hat die Absicht erklärt, das Euro-Zeichen in neue Drucker zu integrieren, und zwar in Codepage 858 (entspricht der 850 mit Euro-Zeichen). Aktiviert wird Codepage 858 mit der Escape-Sequenz (HEX) 27,74,2C.

Hewlett Packard hat die Absicht erklärt, ausgewählte Drucker mit Euro-Fonts zu versehen.
Tatsächlich kommen neue Drucker ab Werk mit dem Euro-Symbol (u.a. in Codepage 858). Z.B. unterstützt der HP Deskjet 610 die Codepage 858. Für manche Laserdrucker soll es eine SIMM-Nachrüstoption geben.
Aktiviert wird Codepage 858 (bei Deskjets die das unterstützen) mit der Sequenz (HEX) 1B,28,31,33,55. Das und vieles mehr steht auf Edward Mendelsons How to Print the Euro from DOS Programs

Hier noch ein paar Links zu diversen Seiten zum Thema Euro auf HP-Druckern:
HP eurosign fonts
HP eurosign fonts developer's reference guide
HP Laserjet Euro Symbol Font Compatibility Information
HP LaserJet Printers - An Overview of Solutions for Printing the Euro Character
JetCAPS euro printing solutions
Euro macros for LaserJet printers

Um mit DOS-Programmen unter Windows auf nicht textfähigen Druckern zu drucken, gibt es DOSPRN.

Für NEC Pinwriter Drucker gibt es von Matthias Paul CPI-Dateien die mit dem PRINTER.SYS von DR-DOS funktionieren und das Laden von Zeichensätzen ermöglichen:
www.uni-bonn.de/~uzs180/mpdokger.html Hier gibts auch noch jede Menge andere interessante Sachen...

Auf dem Fujitsu DL-1100 funktioniert EURO_PRT von Frank Roth. Es läd den aktiven Zeichensatz komplett vom Drucker, ersetzt das Zeichen 213 mit dem Euro-Zeichen, läd das Ganze zurück in den Drucker und aktiviert den veränderten Zeichensatz.
Auf dem Ur-Epson-LQ funktioniert das nicht, da dieser das nur für Zeichen unterhalb 128 unterstützt. Vielleicht funktioniert es auch auf anderen zum Epson-LQ kompatiblen Druckern die über den Standard hinaus gehen.
Das Ganze ist aber nicht gegen einen Drucker-Reset gefeit.

 

  Und die Software?
 

Damit ist man zwar in der Lage, das Euro-Zeichen einzugeben, aber wenn es nicht gerade um Textverarbeitung geht, muß man das Euro-Zeichen auch der benutzen Software beibringen.
Bei Programmen deren Hersteller nicht mehr auffindbar ist, hilf nur, per Hex-Editor einzeln jedes Vorkommen von 'DM' durch das Euro-Zeichen zu ersetzen (jenes für das man sich entschieden hat) und einen kurzen Test zu machen, ob das Programm nach dieser Änderung noch funktioniert...
Besser geeignet als ein Hex-Editor ist vielleicht das Programm Patch-Tool.

 


 
  Downloads
 
Tastatur-Treiber (Freeware):

Für Euro auf Zeichen 213 (also Codepage 850): KEYB_EUR.ZIP

Für 'Not-Euro' auf Zeichen 238 (also Codepage 437): K437_EUR.ZIP


CPI-Datei (Freeware):

CPI-Datei mit Codepages 437 und 850 (letztere mit Euro bei Pos. 213) (für DOS, Win9x): NEWCPI.ZIP


Fonts für die DOS-Box von Windows:

Infos, Screenshots und Downloads zu meinen Fonts für die DOS-Box: DOSFON.HTML


Für Windows 3.1 (Freeware):

Tastaturtreiber und Tips für Windows 3.1: EURO_W31.ZIP

Und das offizielle Euro-Update von Microsoft


Tools:

OVER127: TSR mit Ersetzungs-Tabelle für zum Drucker gesendete Zeichen: OVER127.ZIP

LQCHAR: Font-Editor für Epson LQ kompatible Drucker: LQCHAR.ZIP

 


 
  Links
 

Robert Kleins 'Fit für den Euro'

Edward Mendelsons How to Display the Euro in MS-DOS and Windows DOS

Viele interessante Infos und Links auf der Euro-Seite von Systems Modelling Ltd.

 

 


Counter seit 02/1998


letzte Änderung: 27.5.2005

Uwe Sieber

Home: http://www.uwe-sieber.de/deutsch.html