Gibt es Unicode auch in DOS?

Hier dürfen auch unregistrierte Besucher posten.
Antworten
Gast

Gibt es Unicode auch in DOS?

Beitrag von Gast »

Hallo,

ich habe in den Tiefen des Internet eine c Bibliothek gefunden, die aller Wahrscheinlichkeit nach Unicode verwendet. Gibt es diese Codierung auch in DOS.

Ist erst mal nur eine Verständnisfrage, könnte aber für spätere Programme relevant werden, falls UNicode zukünftig auch für DOD berücksichtigt werden muss. Ist dem so?
DOSferatu
DOS-Übermensch
Beiträge: 1220
Registriert: Di 25. Sep 2007, 12:05
Kontaktdaten:

Re: Gibt es Unicode auch in DOS?

Beitrag von DOSferatu »

Naja, was genau meinst Du mit "gibt es"?
Unicode ist nicht an ein bestimmtes Betriebssystem gebunden. DOS selbst verwendet keine Unicode-Zeichen in seinen eigenen Programmen und Funktionen. Aber es ist natürlich jederzeit möglich, Programme zu schreiben, die Unicode verarbeiten und darstellen können, die Specs dafür sind ja offen.
Gast

Re: Gibt es Unicode auch in DOS?

Beitrag von Gast »

Hallo,

Wie soll ich das jetzt erklären? Wie werden oder wurden denn zu DOS Zeiten verschiedene Zeichensätze berücksichtigt.

Zum Beispiel die kyrillischen Buchstaben in Russland versus unsere Buchstaben. Haben die Chinesen damals nur den englischen Ascii code gehabt?

Heute gibt es in C/C++ zahlreiche Bibliotheken für DOS, die auch UNicodes berücksichtigen. Ich aber programmiere in Pascal und bin gerade dabei eine dieser Bibliotheken (Stringverarbeitung) nach Pascal zu übersetzen. Leisder haben die C/C++ Bibliotheken ien Format, das mein Compiler nicht schluckt. Linken der C Bibliotheken klappt also nicht. Schon probiert.

Ich muss den Code nach Pascal übersetzen.

Deshalb die Frage.

Reicht es, die Ascii Text Funktionen nach Pascal zu überführen oder lohnt es sich, die UNicode Teile auch zu portieren? Die sind ziemlich umfangreich und mit h2pas ist es leider nicht getan.

Ich hoffe, mein Probem jetzt verständlicher rüber gebracht zu haben. Leider dauert es oft mit der Antwort und ich habe die Ascii Funktionen bereits in Angriff genommen.

Warum aber auch die Unicode Funktionen mit übersetzen, wenn dann unter DOS (auch unter Freedos) nirgends UNicode verwendet wird?
idspispopd
Norton Commander
Beiträge: 108
Registriert: Fr 8. Mai 2015, 22:28
Wohnort: Hamburg

Re: Gibt es Unicode auch in DOS?

Beitrag von idspispopd »

Standardmäßig gab es da in DOS gar nichts. Das müsste alles ausprogrammiert werden, außerdem könnte man damit nur den Grafikmodus benutzen (oder müsste die Zeichentabelle für den Textmodus dynamisch umprogrammieren), der Textmodus hat ja nur einen 8-bit-Zeichensatz.
Für das kyrillische Alphabet wurde vermutlich eine andere Codepage verwendet, also einfach eine andere Belegung des 8-bit-Zeichensatzes. Spontan fallen mir die Codepages 437 (IBM USA) und 850 (IBM Mitteleuropa) ein, einen von denen dürften Rechner in Deutschland unter DOS benutzt haben.
Bei Chinesisch gab es glaube ich Speziallösungen, 8 bit reichen sicherlich nicht, ich glaube aber nicht dass das Unicode war.
DOSferatu
DOS-Übermensch
Beiträge: 1220
Registriert: Di 25. Sep 2007, 12:05
Kontaktdaten:

Re: Gibt es Unicode auch in DOS?

Beitrag von DOSferatu »

Ja, was viele nicht wissen: Eigentlich supportet der normale Textmode 512 Zeichen gleichzeitig.
Bit 3 des Farbbytes wird benutzt, um zwischen dem ersten und zweiten 256er-Block zu unterscheiden.
(Insgesamt kann man 8 256-Zeichen-Blocks (0 bis 7) haben und 2 davon gleichzeitig setzen für die ersten und zweiten 256 Zeichen.)
Das würde bedeuten, daß die ersten 256 Zeichen nur dunkle, die zweiten 256 Zeichen nur helle Vordergrundfarben haben können - aber per Default werden beide Bereiche auf Zeichensatz 0 gesetzt, so daß dies keine Rolle spielt. So hat man aber nur 256 Zeichen gleichzeitig.
Man kann in der Grafikkarte das Bit 3 (das "Intensity-Bit") für die Farbgebung ausschalten, so daß dann ALLE Zeichen nur 8 verschiedene Vordergrundfarben haben, und dann auf zwei verschiedene Zeichensätze umschalten, also insgesamt 512 Zeichen haben.
Ich habe mal irgendwo gehört/gelesen, daß die 512 Zeichen-Variante im chinesischen und japanischen Raum genutzt wurden - teilweise auch so, daß aus zwei nebeneinanderstehenden Zeichen ein Hiragana/Katagana/Kanji zusammengesetzt wurde. Leider ist es zu lange her, daß ich das gelesen habe, kann die Quelle nicht mehr angeben.

Falls Interesse an so Spielereien mit dem Textmode oder VGA-Modi besteht, bin ich wohl einer der Ansprechpartner für so etwas. (Ich habe da schon viele Experimente durchgeführt. Manchmal ist es schade, wenn man ganz spezielle Sachen herausfindet - wie den 256-Farb-Textmode, den ich auf meiner ET4000 entdeckt habe - und dann feststellt, daß das nicht überall verwendbar ist. Die oben beschriebenen Sachen sind aber Standard.)
Antworten