Skip to content
← All workHistorical project · 2005

QD Guy Game

A C++ and x86 Assembly game built to understand the machinery beneath a playable experience.

Gameplay still from the 2005 QD Guy Game demonstration, showing a character navigating a platform level

The supporting systems mattered as much as the game.

That early desire to see below the abstraction still shows up in today’s work: understand the constraints precisely, own the awkward integration points, and build only the machinery the problem actually needs.

  1. 01C++ and x86 Assembly tooling
  2. 02Virtual-screen and VGA graphics
  3. 03Keyboard and mouse input
  4. 04Sprites, animation, timing, and gameplay
  5. 05Sprite-editor workflow

The local 2005 project tree preserves readable graphics and game modules, project metadata, sprite data, compiled artifacts, and editor/game executables. Some original source modules are no longer readable, so this page limits detailed claims to surviving material and confirmed authorship.

Gameplay still from the public 2005 demonstration.
Alternate crop from the public 2005 demonstration.
Role
Independent game and tools developer
Sector
Early systems and game development
Constraints
DOS-era graphics, direct input handling, and building the supporting tools from scratch
Stack
C++ · x86 Assembly · DJGPP · DOS/VGA graphics · Keyboard and mouse input
Result
A playable 2005 project and demonstration that document an early commitment to learning systems deeply enough to build the supporting pieces when no higher-level shortcut would do.

The solution followed the shape of the problem.

A compact project map showing what constrained the work, what changed, and the useful outcome.

Operational friction

DOS-era graphics, direct input handling, and building the supporting tools from scratch

Intervention

Built QD Guy from the ground up with C++ and x86 Assembly-era tooling, including the game engine, graphics, keyboard and mouse libraries, sprite handling, and a sprite editor. The surviving source demonstrates virtual-screen and VGA work alongside game-specific character, timing, animation, and input components.

Result

A playable 2005 project and demonstration that document an early commitment to learning systems deeply enough to build the supporting pieces when no higher-level shortcut would do.

What was getting in the way

QD Guy Game—named as a play on QD DOS—began as a challenge from my brother, who said I could not make a game. At the time, all I had managed was a green dot rendered by writing directly to video memory. Built when I was 16 years old, it was deliberately a quick-and-dirty proof of concept: I was focused on getting a playable game working with the bare minimum, not polishing a complete product. Some surviving sprites are therefore not even fully coloured. The project helped support my acceptance to study Computer Science at Dominica State College.

What changed and why

Built QD Guy from the ground up with C++ and x86 Assembly-era tooling, including the game engine, graphics, keyboard and mouse libraries, sprite handling, and a sprite editor. The surviving source demonstrates virtual-screen and VGA work alongside game-specific character, timing, animation, and input components.

A playable 2005 project and demonstration that document an early commitment to learning systems deeply enough to build the supporting pieces when no higher-level shortcut would do.

Technology used

  • C++
  • x86 Assembly
  • DJGPP
  • DOS/VGA graphics
  • Keyboard and mouse input

Have a workflow that has outgrown the workaround?

Show me where the process slows, repeats, or loses information. We can shape the right intervention from there.

Describe the workflow