The SYNC command simply tells DarkBASIC to refresh the screen. So at that point in your program, whatever has happened since the last refresh is then displayed.
It's nothing to do with "speeding up" your program, more to do with controlling it.
If you use "SYNC OFF" then DB itself will control when it refreshes the display.
If you set "SYNC RATE" to 0 then the program will execute as fast as possible - as in when it hits a SYNC command it'll refresh instantly. If you set "SYNC RATE" to something like 30 then when it hits a sync it will check to see if 30 frames have elapsed since the last refresh and then time it accordingly.
DB can and will refresh the screen of it's own accord as well if you leave your program long enough (basically the video memory fills up).
So - yes your "gravity" will appear to run faster because you've opened up the throttle, but if you make your main loop run on a timer system this won't be an issue - it's all down to how you code.
Cheers,
Rich
"Gentlemen, we are about to short-circuit the Universe!"
DB Team / Atari ST / DarkForge / Retro Gaming