High-resolution text

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
Mastermind

High-resolution text

Post by Mastermind »

Hi, I?ve got a question:
How could I display more text on a page (more than 80*25)? I noticed that in low-res mode, only alternate rows of pixels are used. I think that this is a big waste of screen space. I need to be able to utilize these wasted lines. Please help me.
Thanks
Therx

Re:High-resolution text

Post by Therx »

Well the only way I can think of is to program the video card to a hi-res graphics mode then use an algorithm with a font to turn it back to a standard console. Enless you write a driver for every card or the BIOS VESA extensions(rare in old cards) the high resolution is 640x480 with 16 colors. If you were to use a 8x8 font (fairly standard, square) then you would get the equivelent of a 80x60 with 16 background and foreground text mode.

Still Interested?
Mastermind

Re:High-resolution text

Post by Mastermind »

Therx wrote: Still Interested?
Well, I guessed that it wouldn't be easy... However, I am still interested and I'll do some research on that :)
Slasher

Re:High-resolution text

Post by Slasher »

Don't Waste Your Time, Men! As Threx is saying, ITs not going to be of much use without PAIN STAKINGLY writing drivers for EVERY CHIPSET you plan to run your Os on! And again in the end, might still have problems on monitors!!!!
User avatar
Pype.Clicker
Member
Member
Posts: 5964
Joined: Wed Oct 18, 2006 2:31 am
Location: In a galaxy, far, far away
Contact:

Re:High-resolution text

Post by Pype.Clicker »

there are some well-known techniques (and video modes) that allow you to switch to 80x43 or something alike. It must be in the BIOS as even MS-DOS can handle it...

I can remember V2OS was using that trick. Maybe you could learn how to do it from its sources...
_mark

Re:High-resolution text

Post by _mark »

Pype.Clicker wrote: there are some well-known techniques (and video modes) that allow you to switch to 80x43 or something alike. It must be in the BIOS as even MS-DOS can handle it...

I can remember V2OS was using that trick. Maybe you could learn how to do it from its sources...
I would be interesting in this also but do not have the time to look into it. If anyone looks into this, please post your findings.

Thanks
_mark()
engine252

Re:High-resolution text

Post by engine252 »

If you wan't your os to get in high res graphics mode with true color support (which is possibel for new graphics cards)without having to write a different drivers for different cards (not all can be supported thou) You should write just 1 driver for Vesa since thas is a standard for new cards if done some research on that this pdf should get you on the why
Vesa uses "vbe" -> i don't know what that is but it is build in on new cards so you should worry about it what you should worry is about the version and that is 3.0
i hope this could help you

ftp://ftp.dreamlandbbs.com/filegate/pdn ... VESA30.ZIP
;)
btw . if you can write an os you probably won't mind the
driver thing
User avatar
Pype.Clicker
Member
Member
Posts: 5964
Joined: Wed Oct 18, 2006 2:31 am
Location: In a galaxy, far, far away
Contact:

Re:High-resolution text

Post by Pype.Clicker »

VBE stands for "Vesa Bios Extensions." It mainly brings an API for protected-mode programming and the ability to access VRAM out of the 0xA000 64K bank, so that the whole video memory can be addressed at once.
Mastermind

Re:High-resolution text

Post by Mastermind »

Well, I don't have much time to dissect v2os, so I'll probably put this off for a while. Thanks for your help though.
Therx

Re:High-resolution text

Post by Therx »

If you want an easier way you could the change to mode 12h(640x480x16) or 13h(340x200x256) in rmode in the boot sector then just plot the pixels from pmode. Plotting pixels in mode 13h is easy because it linear from 0xA0000 and one byte per pixel. For 12h you need to access four planes(red, green, blue, intense) but this is also quite easy. I had a stab at this a while ago here is my code(it actually sets up 12h from pmode but you could ignore that part) most of my info came from the OSD (my.execpc.com/~geezer/osd) and a program called Tweak which gave me all the register info

[attachment deleted by admin]
User avatar
df
Member
Member
Posts: 1076
Joined: Fri Oct 22, 2004 11:00 pm
Contact:

Re:High-resolution text

Post by df »

you can use ega video modes with give you more text, or you can switch into 80x43, 80x50, 80x132

these are standard bios calls.
-- Stu --
LOneWoolF

Re:High-resolution text

Post by LOneWoolF »

reading this i'll add MY ketchup ::) :

how can I set a single pixel to a color? and where can a list for the screen modes? ???
Mastermind

Re:High-resolution text

Post by Mastermind »

LOneWoolF wrote: reading this i'll add MY ketchup ::) :

how can I set a single pixel to a color? and where can a list for the screen modes? ???
For color, I think you could use Therx's tutorial.
Chris Giese

Re:High-resolution text

Post by Chris Giese »

If you mean true VGA text modes, you can get up to 90x60 using plain VGA: http://my.execpc.com/~geezer/software/index.htm

(Oh yes, I fixed the blue-line bug in 90X30.ASM :)

VESAINFO reports that these high-res text modes are available on my system:
Mode 0x109: 132x25 4 bpp text
Mode 0x10A: 132x43 4 bpp text

In graphics mode, you can have nearly any resolution you want, depending on the graphics resolution and font size.
Post Reply