Search code examples
assemblyx86interruptbiosvga

Enter graphics mode without interrupts in assembly


How can I enter graphics mode (mode 13h) without using BIOS interrupts? I'm targeting 32-bit protected mode where BIOS interrupts aren't available. I found a tutorial on web, but it only gives me hints such as VGA registers.

I want to know how VGA registers are accessed? I'm using x86 assembly in NASM. I know how to enter graphics mode using INT 13h/INT 10h BIOS interrupts.


Solution

  • This would be very hardware dependent. Realistic if you limit yourself to VGA-compatible adapters, but not if you want to support the whole gamut of video hardware out there. But then again, if you were, you probably won't be writing for DOS in the first place.

    For VGA, read up here. The registers are accessed via assembler's IN/OUT commands, read up on them.