Quote: " Is there anything I can check other than the FPS to see if the changes I am making are improving the performance?"
Yes, you can use a padding loop to eat up the spare cycles.
Basically a loop which does some unneeded but time consuming maths stuff.
The number of loops is increased until the frame rate drops below a certain value, then it is increased until the frame rate restores - a bit like how they measure blood pressure.
Any performance changes done to the rest of your code will be shown by the change in the number of padding loops - which indicates spare cpu time.
I posted some code somewhere for this.
Edit: From
http://forum.thegamecreators.com/?m=forum_view&t=204311&b=41&msg=2442810#m2442810
padLoops = 0
a# = 1.0
b# = 2.0
do
if Screenfps() > 50 then inc padloops, 1000
print("Padding Loops: + str(padloops))
print("FPS: "+str(Screenfps())
for thisLoop = 1 to padloops
a# = a#^b#
b# = b#^a#
next thisLoop
// Rest of your code here
sync()
loop
This is slightly different - it aims to get the frame rate to fluctuate - i.e. get the loop to exceed the available frame time.
As such it doesn't restore frame rate once it's dropped.