It's a nit, but this demo is "true" color cycling only in the sense of "faked" color cycling. The original hack used a series of color cells in the pallet to represent the object that was "moving", then updated the pallet (and <i>only</i> the palette) per-frame to effect the animation.<p>An HTML canvas has no palette. And in fact, for didactic emphasis, I just tried this on my phone -- where it works -- that has no color palette hardware at all. This code can only do what it does by doing what the original did not: modifying all the changed pixels every frame. It's emulating the original hack, not duplicating it.