Skip to content
Velocity9x
VelocityNT: Windows 2000 and XP graphics driver (in development) - Velocity Drivers

Windows 2000 · Windows XP · in development

VelocityNT

A new display-driver project for Windows 2000 SP4 x86, starting with the S3 Trio64 PCI that Velocity9x started on. Windows XP x86 is the next planned platform; earlier Windows NT releases are a future compatibility effort.

Project goals

What it is aiming for

  • A family-based driver, as in Velocity9x: one backend per chip family.
  • GDI, DirectDraw, Direct3D, OpenGL and Glide support across multiple GPU families, over time.
  • Measure before advertising. Each feature is implemented and measured before it is offered.
  • Free software under the GPL, keeping compatibility for future ports of Velocity9x code.

Architecture

An NT display driver, from first principles

Windows 2000 and XP use a different driver model from Windows 98, so VelocityNT is a new driver rather than a port. It is split along the NT model's own lines:

Driver layout
miniport
The kernel VIDEO miniport, integrated with videoprt.sys: discovery, modes, memory.
display
The kernel GDI display driver, with DirectDraw and later Direct3D integration.
chipsets
Hardware-family backends; S3 Trio64 first.
common
Portable validation and policy, checked on the host.
render, opengl, glide
Planned: a shared render core, a user-mode OpenGL ICD and Glide.

Development status

Milestones

Each milestone has an acceptance gate. "Verified in emulator" means the gate passed in a virtual machine, not on physical hardware, and is not a support claim.

  1. M0

    Build and stub load

    Verified in emulator

    The driver builds and its stub loads on Windows 2000.

  2. M1

    First desktop and lifecycle

    Verified in emulator

    A first desktop, mode pairs, return from the full-screen console, restore, clean-up and reinstall.

  3. M2

    Driver-owned GDI

    Verified in emulator

    Four modes, palette, cursor, mode transitions and console round trips, checked against reference images.

  4. M3

    Acceleration and DirectDraw

    Verified in emulator

    GDI fills and copies on the Trio64’s engine with software fallback, and a DirectDraw surface allocator with locks, loss and restore.

  5. M4

    Windows XP SP3

    Verified in emulator

    The GDI, console and DirectDraw matrices pass on both Windows 2000 SP4 and Windows XP SP3.

  6. M5

    Physical hardware

    In progress

    Bring-up on a physical test machine: PCI discovery, framebuffer, owned GDI, video memory and more modes. Under way; not yet released.

  7. Next

    3D interfaces

    Planned

    Direct3D, OpenGL and Glide begin on a later, 3D-capable GPU family. The Trio64 has no 3D engine.

Future compatibility

What will be listed, and when

Windows 2000 SP4 x86

First target. Experimental, S3 Trio64 only.

Windows XP x86

Next platform. Emulator gates pass for the Trio64; not released.

Earlier Windows NT

A future compatibility effort. Not started.

VelocityNT results will appear in the hardware database as separate records from Velocity9x's, once they are measured on physical hardware.