better animate rate (Marcelo Magallon)
diff --git a/progs/demos/geartrain.c b/progs/demos/geartrain.c
index ec31e74..3feb2a0 100644
--- a/progs/demos/geartrain.c
+++ b/progs/demos/geartrain.c
@@ -912,14 +912,18 @@
 }
 
 
-
-
 static void
 idle (void)
 {
     int i;
+    static double t0 = -1.;
+    double dt, t = glutGet(GLUT_ELAPSED_TIME) / 1000.0;
+    if (t0 < 0.0)
+       t0 = t;
+    dt = t - t0;
+    t0 = t;
     for (i = 0; i < number_of_gears; i++)
-      g[i].angle += g[i].angular_velocity;
+      g[i].angle += g[i].angular_velocity * dt;
     glutPostRedisplay();
 }