You are using an out of date browser. It may not display this or other websites correctly. You should upgrade or use an alternative browser.
timing bug
About this tag
The timing bug tag on WindowsForum.com covers discussions about software defects caused by incorrect timing assumptions, particularly in legacy Windows applications. A notable example is the Space Cadet Pinball port for Windows NT, which used a busy loop that caused the game to run at thousands of frames per second on modern hardware. This tag explores how such bugs arise from assumptions about CPU speed, the challenges of maintaining backward compatibility, and the engineering lessons learned from these issues. Topics include busy loops, frame rate spikes, and the impact of hardware evolution on software behavior.
Dave Plummer’s confession — that his Windows NT port of the beloved Space Cadet pinball ran “as fast as it could,” eventually spiking to “like, 5,000 frames per second” on modern hardware — is as entertaining as it is instructive, and it revisits a compact engineering lesson about timing...
busy loop
busy-wait
cpu usage
cross platform port
cross-platform
dave plummer
fixed timestep
fps cap
frame rate
gaming history
legacy code
legacy systems
old new thing
performance
performance engineering
pinball
porting
power management
pragmatic triage
raymond chen
software architecture
software development
space cadet
space cadet pinball
timing assumptions
timingbug
vsync
windows history
windows nt