How to access vbe video memory?
-
15-04-2021 - |
Pergunta
I am wondering how to create a pointer to the vbe video memory so I can display graphics from my 32-bit os kernel. Can anyone help me?
Solução
Download the VBE 3.0 standard (Wikipedia has all the links). Using it, write code to call function 2 to set a graphics mode, making sure you bitwise-OR the mode number with 4000h to tell the BIOS to use a flat linear frame buffer instead of windowed/segmented. Use function 1 to obtain the address of the video buffer (it should be in ModeInfoBlock.PhysBasePtr
).
There should be plenty of reference code online for things like this.
I suggest to call VBE functions prior to going into protected mode as it will be harder to do afterwards.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow