Yeah the problem is that my player sprites are moving around the screen fast, I tried 60 fps but the movement is jittery... and then with vsync we have the problem of it refreshing at monitors rate and I have yet to fully understand how I can achieve time based movement when I have a timer that is constantly changing depending on ppls monitor refreshes I will send you a small sample of what I mean, you will probably then be able to tell me if I have done something wrong?

Your help has been great btw.

I have looked at queryperformancecounter. Is this the best way of making my own timer? What is the best way for compatibility, reliabilty and speed?

TEST TO SEE SPRITE JITTER: http://www.uploading.com/?get=5TJ8Y0P0

Above is a file/source that I have quickly put together to demonstrate the jitter at 60 fps. This is the maximum speed the the sprite roams the screen but the jitter is unnacceptable. Maybe I have done something wrong?

-----
edit: actually moving on I have devised a nice way to get around this. I can just say Player1.x:=Player1.x + (1/Refresh rate of monitor) * 600 (where 600 is the amount of pixels to be moved a second).

This should mean the speeds involved when vsync is ON will always be the same does it not?