0

I am trying to build a Hobby Operating System and I have successfully built my own two stage bootloader which handles control to the kernel after switching to protected mode. I am able to display characters on the screen by writing at 0x000B0000 - 0x000B7777. Now I want to draw individual pixels on the screen. I want to control pixels at the native resolution of my monitor(1366x768) and not at some downscaled resolution like 640x320. I wanted to ask how this is done in a real Operating System like Windows or Linux. Also some guidance on VESA BIOS Extensions would be helpful although I don't want to use VBE.

  • 1
    Video memory at b0000 is usually a monochrome display adapter. Are you doing this on real hardware? Anyway, you might wish to read https://wiki.osdev.org/VESA_Video_Modes . If using VESA it is generally better to get a list of all the supported video modes and then search the list programmatically for the mode that closest matches what resolution and color depth you want. You'd also choose a video mode that uses the linear frame buffer (LFB). – Michael Petch May 01 '23 at 03:22

0 Answers0