Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories

Welcome to the new platform of Programmer's Heaven! We apologize for the inconvenience caused, if you visited us from a broken link of the previous version. The main reason to move to a new platform is to provide more effective and collaborative experience to you all. Please feel free to experience the new platform and use its exciting features. Contact us for any issue that you need to get clarified. We are more than happy to help you.

Text in graphical mode?

ZpixelZpixel Posts: 28Member
what is the idea to write a desired text in different sizes,colors or languages in graphical mode in 8086 asmbly?

for example letter 'C', we want to make a bitmap table for it and then to show it in small size on the screen. i saw somwhere 'C' could be defined like this:

; C
DW 07000H,08800H,08000H,08000H,08000H,08800H,07000H

but how do this values can make letter 'c'.
and if so, what is the next step to show just this single letter on the screen.
thanks for any code.


Comments

  • AsmGuru62AsmGuru62 Posts: 6,519Member
    : what is the idea to write a desired text in different sizes,colors
    : or languages in graphical mode in 8086 asmbly?
    :
    : for example letter 'C', we want to make a bitmap table for it and
    : then to show it in small size on the screen. i saw somwhere 'C'
    : could be defined like this:
    :
    : ; C
    : DW 07000H,08800H,08000H,08000H,08000H,08800H,07000H
    :
    : but how do this values can make letter 'c'.
    : and if so, what is the next step to show just this single letter on
    : the screen.
    : thanks for any code.
    :
    :
    : [color=Blue]
    Here you can find the addresses of font maps, like the one you presented for 'C':
    [link=http://www.ctyme.com/intr/rb-0158.htm]http://www.ctyme.com/intr/rb-0158.htm[/link]

    It is also possible to create a completely your own fonts - just write a font editor - a simple pixel matrix editor.

    To show symbols, simply use the symbol code as an index into a map of data and then using masks write it to screen - the code for it will depend on the graphics mode you are using.

    I do not have codes right now - I had the font system once (for simplest mode 13h) but it is lost now.
    [/color]
  • BretBret Posts: 114Member
    : : what is the idea to write a desired text in different sizes,colors
    : : or languages in graphical mode in 8086 asmbly?
    : :
    : : for example letter 'C', we want to make a bitmap table for it and
    : : then to show it in small size on the screen. i saw somwhere 'C'
    : : could be defined like this:
    : :
    : : ; C
    : : DW 07000H,08800H,08000H,08000H,08000H,08800H,07000H
    : :
    : : but how do this values can make letter 'c'.
    : : and if so, what is the next step to show just this single letter on
    : : the screen.
    : : thanks for any code.
    : :
    : :
    : : [color=Blue]
    : Here you can find the addresses of font maps, like the one you
    : presented for 'C':
    : [link=http://www.ctyme.com/intr/rb-0158.htm]http://www.ctyme.com/intr
    : /rb-0158.htm[/link]
    :
    : It is also possible to create a completely your own fonts - just
    : write a font editor - a simple pixel matrix editor.
    :
    : To show symbols, simply use the symbol code as an index into a map
    : of data and then using masks write it to screen - the code for it
    : will depend on the graphics mode you are using.
    :
    : I do not have codes right now - I had the font system once (for
    : simplest mode 13h) but it is lost now.
    : [/color]

    If you're simply looking to draw text characters on the screen, you can use the video BIOS (INT 10h, functions 09h or 0Ah), which will draw text characters on the screen even when it is in graphics mode. Creating your own fonts gives you more flexibility, but is also much more complicated than using the built-in BIOS functions.
  • ZpixelZpixel Posts: 28Member
    thanks. i think it can be easy if we cosider letters as an array of pixels, and then send those pixels to the screen. i did it for advertising boards using LEDs and C programming. for example a C letter can be defined in a 8*8 matix. then there are 8 bytes to define letter C. now we can send them to the screen. somthing like this!?

    int 10 works, but letters would be BOLD an awful in this case. is it correct? or i'm wrong!
  • AsmGuru62AsmGuru62 Posts: 6,519Member
    : thanks. i think it can be easy if we cosider letters as an array of
    : pixels, and then send those pixels to the screen. i did it for
    : advertising boards using LEDs and C programming. for example a C
    : letter can be defined in a 8*8 matix. then there are 8 bytes to
    : define letter C. now we can send them to the screen. somthing like
    : this!?
    :
    : int 10 works, but letters would be BOLD an awful in this case. is it
    : correct? or i'm wrong!
    :
    [color=Blue]Try different modes. The letters are bad in 320x200 mode, try 640x480.[/color]
Sign In or Register to comment.