I remember that back in the days of MS-DOS, some programs used special characters to draw borders. Norton Commander comes to mind.
The OSDev Wiki states that these symbols are part of the IBM Extended ASCII character set.
My question: is there some way to test that they are available, or should I just assume that they are, while giving the user the option to switch back to plain ASCII at any time?
Additionally, do you know about computers out there that don't support the extended table?
I have a hunch that the Raspberry Pi doesn't, for example.
Testing if IBM Extended ASCII symbols are available?
Re: Testing if IBM Extended ASCII symbols are available?
Briefly speaking, computers just support calculations and I/O. Character set support is only a feature of software and, possibly, graphical devices (video cards and printers).
Text mode output is rarely used nowadays, people prefer framebuffer as one can draw any characters.
And if you a limited to text mode (because you're on old PC hardware), then you can load (in most cases) your own font with any 8-bit character set.
Text mode output is rarely used nowadays, people prefer framebuffer as one can draw any characters.
And if you a limited to text mode (because you're on old PC hardware), then you can load (in most cases) your own font with any 8-bit character set.
Re: Testing if IBM Extended ASCII symbols are available?
The vga text mode font uses Code page 437, which is a ASCII-compatible encoding with unprintable characters replaced with various symbols, and 128 upper characters with some additional symbols. This is the symbols in the vga font. You can simply load another font to change what characters map to which symbols. I would just unconditionally assume they are available, perhaps uploading a VGA font if you want to be sure. In real graphics modes, you do your own text rendering anyways.