Particle.news

Microsoft Azure CTO Streams Real DOOM Into Paint Using Windows Clipboard

The project makes Paint act as a display by feeding each headless ViZDoom frame through the Windows OLE clipboard.

Overview

  • DoomPaint, released earlier this week on GitHub by Microsoft Azure CTO Mark Russinovich, publishes code and instructions under an MIT license for anyone to run.
  • The tool runs the real DOOM engine headlessly via ViZDoom, captures each rendered frame as a bitmap, and supplies it to Paint by updating a single OLE clipboard object so Paint pastes each frame as a genuine document edit.
  • Russinovich added Windows-specific workarounds including a low-level keyboard hook to capture input while Paint is active and a clipboard update protocol to avoid race conditions when Paint reads pasted frames.
  • The experience uses the shareware DOOM1.WAD with BSD-licensed FreeDoom files for missing levels, includes converted MIDI music and sound effects, and displays at Doom’s native 35 Hz with frame-rate variability tied to resolution and machine performance.
  • The release highlights both a playful continuation of DOOM port culture and a practical demo of Windows internals, showing how clipboard and OLE behavior can be repurposed and likely inspiring similar tinkering by developers and hobbyists.