Key features :

The main IDEA of the project was taken from XP's VGA.SYS with generic VESA BIOS Extensions (VBE) 1.02/2.00/3.00+ support.
Original VBEMP.SYS driver exists as a part of ReactOS operating system (, which is somewhat compatible with XP's driver.
VBEMP.SYS is a standard Windows NT™ Video Miniport Kernel-Mode Driver.
It supports ALL of MS Windows NT™ Family (3.51,4.0,2000(5.0),XP(5.1),2003 Server(5.2),...)
Windows Preinstallation Environment (WinPE) is also supported.
Supports VBE 2.00+ compliant PCI/AGP/PCI-E video cards with linear framebuffer.
Supports VBE 1.02 ISA/VLB/PCI videocards with bank switching limited to 320x200x8bit mode. (Like Intel 810/815 cards, old ISA/VLB-bus cards).
For usermode part of the driver it uses standard framebuf.dll supplies with ANY Windows NT™
256color(8bit), 16bit, 24bit, 32bit truecolor modes support.
From 320x200x8bit to every resolution which your videocard's BIOS supports.
Under Windows NT 4.00™ and later it supports Write Combining (USWC MTRR).
Under Windows 2000™ and later it supports Power Management, Monitor & Child Devices Detection(testing...).
There are 3 versions:
for Windows XP™/2003 Server+ (Int10CallBios() API - documented in XP DDK).*
for Windows NT™ 3.51/4.0/2000+ (Ke386CallBios() API - undocumented).*
for Windows NT™ 3.51/4.0/2000+ (VideoPortInt10() API - documented in DDK, suitable only for "Manual" versions).**
* Universal driver version.

** But I have also made a "Manual" version of the driver. It requires making of a mode list for your particular card using BUILDVBE.EXE tool. You must run it from MS-DOS (Real Mode) before compiling.

Planned features :

VBE 1.02 Support (Banked FB > 64Kb)
VBE 3.00+ support: refresh rate switching (Riva128, TNT & Later nVidia Cards for example)
DirectDraw Suppport
Hardware/Software Direct3D Support
Hardware Video Overlay Support
Feature to install the driver without reboot
More than one device for output (display, video out device)
2-bit (mono) and 4-bit (16 colors) support for testing purposes only
Old adapters support like EGA, CGA, Hercules etc. for testing purposes only