Ahmed Amer's CSS-DOS project shows that a web browser can render and execute a Turing-complete IBM PC compatible emulator encoded entirely as a Cascading Style Sheet. The stylesheet is approximately 300 MB and contains a simulated Intel 8086 CPU, 640 kB of conventional RAM, a floppy-disk controller, and a VGA display controller. CSS now supports functions and conditional rules, but it is still an awkward foundation for ordinary sequential programs; Amer's key insight was that CSS's declarative, state-transition behavior maps more naturally onto hardware logic than onto software, making an emulator possible if not convenient.
The sheet is available at css-dos.ahmedamer.co.uk. It boots DOS, runs Windows 1.0, and starts id Software's DOOM. Performance is deliberately not the point: the emulated CPU executes about two machine instructions per second, not two frames per second. At that pace the article estimates a three-week DOS boot, a three-month level load, and DOOM rendered at roughly 0.0001 FPS. Amer has published a detailed write-up explaining the construction, including an interactive guide to the structure of the CSS file.
Comments
No comments yet — be the first.
Open the discussion
No account or password needed — just enter your e-mail and we’ll send you a one-time sign-in link. First time here? You’re set up automatically.
Your rating will be applied automatically after you sign in.
Check your inbox
We’ve sent a sign-in link to …. Open it on this device — this tab will sign you in automatically.
Nothing arrived? Check your spam folder — and mark the mail as "Not spam" so it lands in your inbox next time.