Hi Peter,
Your demos work well on my Vista PC (118 frames). To experiment with timing and performance I reduced the frame rate to 30 and introduced Sleep 5 into the WaitFrame cycle. This reduces the actual frame rate to aound 28 frames with a small amount of jitter which was not noticeable in the animation. But it reduced the CPU load from around 33% to around 15%. (1 core=25%)
Charles
Sub WaitFrames()
While (1)
QueryPerformanceCounter sys_cT2
iF sys_cT2 >= sys_cT1 + sys_Interval
QueryPerformanceCounter sys_cT1
Exit Sub
End iF
sleep 5
Wend
End Sub