Yes, that's how it is designed to work currently.

I uncommented that Sleep(1) routine at the timer update method so it drops the maximum framerates around to 500 or so.

Also I changed the way how frames per second is calculated and that's the reason for it's behavior. Calculation is done only once in a second so, in theory it could be change *dadaa* once in a second , but as you noticed it should not, and doesn't do that. That's why it keeps it in one reading and then may change it to another after a while.

I'm still wondering those Pauls 55 or so frame rate, because I get near 400 even with old 1,6GHz Duron and 9600 Radeon, but if it runs smoothly that doesn't really matter.

But I will explore more about timing and I will develop more sophisticated version after the 'game' is up and running. Until then let's keep this one.

edit: Ouh, forgot to mention... thank's guys (I assume you are guys ) for your very valuable feedback.