OK, we’ve seen Linux and a GameBoy Color emulator running on JavaScript. What’s next? The original DOOM, apparently. Alon Zakai has ported DOOM to the browser. You can play it here. It works in Firefox and Safari.
According to Zakai, “Loading and saving games do work, but only until you leave the page. TODO: Use IndexedDB for persistent storage.”
Zakai compiled the DOOM source code from C to JavaScript using Emscripten and Clang and optimized it with Closure Compiler. The video output is handled by Canvas. You can find more technical details here and the source code here.
I remember when I first read about 3D games on cell phones. Now running Quake on a smart phone is old hat. I wonder what sort of games we’ll be seeing in the browser a year from now.