Das Euro-Zeichen und Terms97801
Home Inhalt Em@il Impressum |
Terms97801Das Euro-Zeichen und Terms97801Das 97801-Terminal besitzt in seinem Zeichenvorrat kein Zeichen für den Euro. Auch die Tastatur hat ist nicht auf die Eingabe eines Eurozeichens vorbereitet. Da aber beim 97801-Terminal Tastaturtabellen geladen und eigene Zeichen programmiert werden können, ist es prinzipiell schon möglich Eurozeichen einzugeben und darzustellen. Die eigentliche Frage besteht darin, ob die verwendete Software hierzu in der Lage ist. Da Terms97801 alle Funktionen des Originals emuliert, kann bei Terms97801 auch eine Tastaturtabelle geladen und ein eigenes Eurozeichen programmiert werden. Die diskutierte Lösung funktioniert also mit Terms97801 und dem Original-97801 gleichermaßen. Die Anzeige des EurozeichenIm folgenden wird ein kleines Shell-Skript vorgestellt, mit dem ein Euro auf dem Bildschirm dargestellt werden kann. # Euro-Symbol auf 97801 # # gemacht fuer Terms97801 - funktioniert aber # auch mit dem echten 97801 in 7 und 8 bit # # 16.6.98 Systemberatung Drewes # # Fuer Linux echo -e verwenden. In Zeilen mit \c echo -e -n verwenden. # echo "\033[2J" echo "\033[4mBeispiel fuer die Dartstellung des Euro-Symbols\033[m" # Zeichengenerator programmieren echo "\033RB02400000E11207E207C20110E0000000000\033\\" # alternatives Euro-Symbol #echo "\033RB0240000001E217C207C211E000000000000\033\\" # obere Fonthaelfte mit International laden # (\100 ist Klammeraffe) echo "\033)\0100\c" # \016 = si (shift in) \017 = so (shift out) echo "Euro = \016$\017 Dollar = $\c" echo " Pound = \033)u\016n\017\n"
Dieses Skript belegt das Zeichen 0x24 des Superfonts mit einem Eurozeichen. An dieser
Stelle liegt das sogenannte Währungszeichen ¤. Im Unicode hat dieses
Zeichen den Dezimalwert 164. <Esc>RBxxxyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy<Esc>\weist dem Superfontzeichen xxx die 16 folgenden Pixelzeilen yy zu. Die Werte xxx und yy sind in ASCII-codierten Hex-Werten anzugeben (in Großbuchstaben). Die entstehende Zeichenzelle hat eine Größe von 16x8 Pixel. Um das Währungszeichen auszugeben, muss ein Zeichensatz geladen werden, der dieses Zeichen beinhaltet, z.B. Zeichensatz International. Die Escape-Sequenz <Esc>)@lädt diesen Zeichensatz in die obere Hälfte des Bereitstellungsbereichs. Die Umschaltung auf den oberen Zeichensatz erfolgt mit dem Steuerzeichen si (shift in). Diese Lösung funktioniert auch im 7bit-Modus des 97801. Im 8bit-Modus funktioniert dies auch, aber auf Kosten der Umlaute. Im 8bit-Modus sollte darum kein Zeichensatz geladen werden, sondern das vorhandene Währungszeichen aus der oberen Hälfte der ISO-Latin-Zeichensatzes verwendet werden, das mit dem Zeichencode 164 = \xA4 = \0244 angesprochen wird. Auflösungsproblem
Das Original-Terminal hat nur eine feste Bildschirmauflösung und die Zeichenprogrammierung
geht von einer Zeichenzelle der Größe 16x8 aus. Terms97801 verwendet in der
Bildschirmauflösung normal (640 Pixel) eine fast gleichgroße Zeichenzelle,
nämlich 15x8. Für andere Auflösungen hat die Zeichenzelle eine andere
Größe, z.B 20x10 oder 24x12. Die 16x8-Zeichenzelle aus der Programmiersequenz
muss auf die entsprechende Größe gestreckt werden, was außer bei
Bildschirmauflösung ultra groß (1280 Pixel) zu einem etwas 'angefressenem
Zeichen' führt. Die Eingabe des Eurozeichen
Soll ein Eurozeichen wie unter Windows mit AltGr-E eingegeben werden, so muss der 97801-Taste
auf die die PC-Taste AltGr-E abgebildet wird mit dem Euro-Zeichencode belegt werden. Beim
Originalterminal geschieht dies über das Senden einer Escape-Sequenz mit der Tastaturtabelle
(eklig, aber machbar; siehe auch Sinix-Tool keyload). Bei Terms97801 kann über den
Dialog 97801-Taste programmieren interaktiv ein einzelner Tastencode zugewiesen werden. Praktisches BeispielZum Ausprobieren wird folgende Vorgehensweise vorgeschlagen:
FazitWenn es möglich ist die Zeichenfolge DM durch EUR darzustellen, so ist dies sicherlich der einfachere Weg, denn außer Bildschirmanzeige und Tastatureingabe gibt es auch noch das Druckerausgabeproblem. (Bildschirmabzüge mit programmiertem Eurozeichen sind unter Terms97801 kein Problem.) Wer sich ernsthaft mit der Problematik auseinandersetzen möchte, darf sich gerne telefonisch oder per Email an uns wenden. |