Page 1 of 1

Implementing ANSI Symbols

Posted: Fri May 01, 2009 12:51 am
by bowenl2
Hello everyone
Currently my OS is limited to the standard 80x25 textmode. I understand some of the details of implementing a higher resolution CGA/VGA display. However, is it possible to implement ANSI characters using textmode? I looked at the upper 128 characters of ASCII (like at asciitable.com) but I seem to remember from many years ago that MS-DOS 'edit' had many different characters (playing cards, etc.) that would help with user interface.

This is the first part of my kernel where I don't even know where to start (do I need to write my own bitmaps or are these hidden on the VGA controller?). I searched the forum and wiki but could find nothing. Any help would be appreciated. Thanks!

Re: Implementing ANSI Symbols

Posted: Fri May 01, 2009 12:58 am
by ruisleipa
There are some symbols in the range 0-31. You have to write directly to video memory to be able to use them as normal printing functions interpret them as newlines, tabulators etc.

EDIT: http://en.wikipedia.org/wiki/Code_page_437

Re: Implementing ANSI Symbols

Posted: Fri May 01, 2009 1:35 am
by skyking
Have you tried to just use the text fonts that is loaded by the BIOS? I'd expect most BIOSes to load an original IBM codepage. BTW I don't think that these are any ANSI standard.

The VGA controller allows you to redefine the font in text mode, search for information on how to program the VGA controller (I think there is some information/references on the wiki).

Re: Implementing ANSI Symbols

Posted: Fri May 01, 2009 10:19 am
by egos
Look there.