This is a very novice level example of updating elements within a program consistently using the timer instead of relying on a steady sync rate, which everyone knows can suddenly drop.
The 'TimeGap' variable, as well as the object's speed, should be experimented with to optimize event scheduling and desired movement.
make object cube 1,1:set object wireframe 1,1
make object sphere 2,1:turn object left 2,40
SyncRate=60:sync on:sync rate SyncRate
oldTimer#=abs(timer())
do
increment#=abs(timer())-oldTimer#
inc TimeCount#,increment#
TimeGap=int(TimeCount#*.1)
if TimeGap>0
for m=1 to TimeGap
move object 2,.001
next
TimeCount#=0
endif
oldTimer#=abs(timer())
if lower$(inkey$())="r" then position object 2,0,0,0
if inkey$()="+" then inc SyncRate
if inkey$()="-" then dec SyncRate:if SyncRate<20 then SyncRate=20
if OldSync<>SyncRate then sync rate SyncRate:OldSync=SyncRate
set cursor 0,0
print "Press 'R' to reset object"
print "Press (+) or (-) to change the sync rate"
print
print "SyncRate: ";SyncRate
print "Screen FPS: ";screen fps()
sync
loop