Help with 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
beyondsociety

Help with VESA

Post by beyondsociety »

Im in the process of trying to implement VESA 2.0 with a Linear Frame Buffer. I have successfully gotten my assembly code to detect the presence of VESA and store the VBE info structure in a chosen memory location. I would now like to print out the version of the VESA supported. In the VESA 2.0 docs, it says this:
The VbeVersion is a BCD value which specifies what level of the VBE standard is implemented in the software. The higher byte specifies the major version number. The lower byte specifies the minor version number.

Note: The BCD value for VBE 2.0 is 0200h and the BCD value for VBE 1.2 is 0102h. In the past we have had some applications misinterpreting these BCD values. For example, BCD 0102h was interpreted as 1.02, which is incorrect.
How do I display it?

I originally tried calling the '0200h' (VBE 2.0) from my real mode print_msg that uses bios int 10h, but it wouldnt display anything.

Thanks for the help in advance.
Dreamsmith

Re:Help with VESA

Post by Dreamsmith »

You print it the same way you'd print any integer. Until there are either 10 major versions or 10 minor versions of the VBE standard (read as: almost certainly never), you can pretty much ignore the fact that it's officially a BCD value. BCD encoding == normal encoding for values less than 10.
Post Reply