VESA

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
nitroglycerin

VESA

Post by nitroglycerin »

hi!
this is my first post here, so don't flame me just yet, ok? ;)

well, lurking through posts for video modes I noticed that the best thing for that is this VESA thing. But I don't get it. I found website of VESA (corporation or sth), but I can't find any tuts or sources on implementing VESA into my pretty OS, I have A20 enabled, am in protected mode and loaded the kernel (with some lame I/O stuff). Now I would put some video, just for my satisfaction.
any help,links etc. appreciated!

bye!
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:VESA

Post by Pype.Clicker »

nitroglycerin wrote: hi!
this is my first post here, so don't flame me just yet, ok? ;)
Nobody will dare flaming you with such an X-ploZi\/e nick ;)

well, lurking through posts for video modes I noticed that the best thing for that is this VESA thing. But I don't get it. I found website of VESA (corporation or sth), but I can't find any tuts or sources on implementing VESA into my pretty OS (...)
Well, this is because enabling vesa from pmode is complex, and if a good amount of use are awaare of how they must do it, none (or almost) of us have already reached the stage of implementing it.

Before VBE 3.0, real-mode addressing (or VM86 mode) is required to access video mode setting. This is about to change with VBE 3, but this one still needs GDT runtime programming, and is only available with "modern" hardware...
slacker

Re:VESA

Post by slacker »

what exactly is VBE and VESA. i know that VBE is a part of VESA. does VESA attempt to map out individual video registers?
Perica
Member
Member
Posts: 454
Joined: Sat Nov 25, 2006 12:50 am

Re:VESA

Post by Perica »

..
Last edited by Perica on Fri Dec 01, 2006 8:43 pm, edited 1 time in total.
nitroglycerin

Re:VESA

Post by nitroglycerin »

So, basically, no one implemented VESA with protected mode, right? But how do then all those OSs use high graphics (linux,bsd,qnx...)?
Is it possible to start VESA in real mode, enable A20 and get into protected mode, And then continue using VESA in protected mode?
Curufir

Re:VESA

Post by Curufir »

nitroglycerin wrote: So, basically, no one implemented VESA with protected mode, right? But how do then all those OSs use high graphics (linux,bsd,qnx...)?
VESA functions haven't always been available in protected mode. This method of access is very card specific, or more correctly VESA version specific. So you can check the VESA version and use protected mode operations if they are available (Eg you'd have a VESA 3.0 driver and a VESA 1.0 driver).

You don't have to use protected mode to use the VESA functions. You can drop out of protected mode and into V86 mode, do whatever you want and switch back. Also, for example, the Nvidia driver on a Linux/Windows setup does NOT use VESA. It uses card specific port operations to control the card. VESA is just a standard, it provides a set of functions, and an API, that should be there if the card supports the standard. It's not the fastest, or the best, but more than VESA requires very specific hardware information.
nitroglycerin

Re:VESA

Post by nitroglycerin »

1. Let's say I want to make a driver for my OS and for a specific graphic card (i.e. ATI R9000). Is it possible to get this port infos for this (or some other) card to do so, or is it some kind of a "top secret". Bare in mind I'd only like to change to some higher res and plot pixels.

2. You say I can be in pmode, get out of it and so on. This means I can get into pmode, switch to kernel, and when I want to plot pixels to screen get to 16 bit, do it and then get back to 32 bit mode (pmode)?
jamescox3k

Re:VESA

Post by jamescox3k »

If ATI have linux drivers, they may also provide the soucr code. This might help you with what ports there using. I know NVidia provide souce code for the linuc drivers.
Perica
Member
Member
Posts: 454
Joined: Sat Nov 25, 2006 12:50 am

Re:VESA

Post by Perica »

..
Last edited by Perica on Fri Dec 01, 2006 8:43 pm, edited 1 time in total.
nitroglycerin

Re:VESA

Post by nitroglycerin »

well, thanks Perica. I'll do as you say then.
Post Reply