DOS internationalization support (Developers)
> As the programs are now, if the user selects a different code page the
> program will use it.
Correct and a codepage is 256 ascii points max (some of them unprintable)
> The standard solution for supporting additional characters in this case is
> Unicode, which gets embedded in the data stream as UTF-8.
> When Unicode is used the problem then becomes a matter of mapping the
> Unicode character to a character that can be displayed on the current
> machine.
Yes, or any character set larger than a VGA can display in an hardware manner.
> This involves sensing the currently active display code page and
> then having a mapping table from Unicode to the characters available in the
> code page. Not everything can be mapped, so characters that can not be
> displayed have to be shown in some encoded format. (In a limited
> environment like on a real CGA or MDA card only CP437 is available.)
Correct, unless you go to a framebuffer textmode solution and forgo the hardware textmode, as many *nixes do.
> Is my understanding correct? If so, are there libraries that make the
> mapping of Unicode to code pages easier?
libiconv is the standard answer, but if you can only display 256 chars, you don't need that much library support. (since even if you render certain accented characters to their non accented equivalent, there are still only 500 something mappings for a given codepage)
We use such solutions to provide some minimal unicode awareness for little programs and programs involved in bootstrapping the system. The tables are postloadable, so new codepages can be added without recompiling the binaries.
For fuller unicode support we usually try to tap in whatever system unicode library there is, to avoid
Complete thread:
- DOS internationalization support - mbbrutman, 25.11.2012, 01:06 (Developers)
![Open in board view [Board]](img/board_d.gif)
![Open in mix view [Mix]](img/mix_d.gif)
- DOS internationalization support - Rugxulo, 25.11.2012, 04:19
- DOS internationalization support - mbbrutman, 25.11.2012, 19:52
- DOS internationalization support - marcov, 25.11.2012, 13:15
- DOS internationalization support - mbbrutman, 25.11.2012, 20:05
- DOS internationalization support - Rugxulo, 27.11.2012, 07:55
- DOS internationalization support - marcov, 27.11.2012, 09:35
- DOS internationalization support - mbbrutman, 25.11.2012, 20:05
- DOS internationalization support - Laaca, 25.11.2012, 14:41
- DOS internationalization support - Rugxulo, 25.11.2012, 04:19
Mix view