Thanks for the info, I guess my problem remains that my game is running about 10 FPS faster on my older Motorola Triumph using android 2.2 than my S3 using 4.1.2.
I chopped my program down from 3000 lines to 550 to make it easier to read. Maybe someone could tell me what I'm doing wrong?
Depending on how often the screen is refreshed on a S3, you won't have the same number of FPS as on another device. Usually most devices have a maximum FPS of 60, but some never go over 40. That doesn't mean the player experience is different. So the right questions are: is it smooth? is it playable? do you have the same pleasure to play on the different devices?
I looked at your code and your FPS computation means nothing:
1) The FPS count must be computed in the draw routine, not in the Tick event. Since you don't have access to the draw routine, I'm afraid that you cannot compute reliably a FPS with GameView.
Currently, you are counting how often the Tick event is fired, not how often a frame is drawn. The Tick event is usually called more often than a frame is drawn.
2) Your formula is optimistic. If I replace your formula with a correct computation (all variables are long):
If DateTime.Now > oldtime Then
oldtime = DateTime.now + 1000
fps = framecount
framecount = 0
Else
framecount = framecount + 1
End If
I get a lower value, but still over 70 because we're not in the draw routine (my device shouldn't display a number higher than 62).
Conclusion: the FPS count means nothing in your case.