> Use a delay loop in combination with more speed.
It seems doing this you could guarantee no flicker... I just glanced at the source and the DT/ST (delay/sound) special registers are decremented right after the browser does a redraw (which is with a 60 FPS setTimeout)... so if you say you have a traditional update/render loop and just put off the render until immediately after DT hits 0 then as long as you're done drawing in 16ms you shouldn't see any flicker at all. IE for 60fps: render, set delay 1, process input, etc... when delay is 0, render... rinse repeat. That's my understanding from just a quick look.
To be clear I'm more interested in the VM on modern hardware... so if you're targeting say a HP-48 this might be much harder in practice.