--- topblock.c	2006-07-05 12:54:33.000000000 +0000
+++ ../../../topBlock/1.2/topblock.c_1.2.neat	2006-06-19 22:32:39.000000000 +0000
@@ -309,11 +309,12 @@
 
 	generateNewBlock(mi);
 
-	if (rotate && (!tb->button_down_p)) { tb->rotation += rotateSpeed; } 
+	if (rotate) { tb->rotation += rotateSpeed; } 
 	if (tb->rotation>=360) { tb->rotation=tb->rotation-360; } 
 
 	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);		/* clear current */
 	glLoadIdentity();	/* resets directions, do it every time ! */
+  gltrackball_rotate (tb->trackball);
 	if (!follow) {
 		if (tb->highest>tb->eyeLine) { tb->eyeLine+=((tb->highest-tb->eyeLine)/100);	} /* creates a smooth camera transition */
 		gluLookAt(camX, camY+tb->eyeLine, camZ, tb->eyeX, tb->eyeY+tb->eyeLine, tb->eyeZ, 0.0, 1.0, 0.0);		/* setup viewer, xyz cam, xyz looking at and where is up normaly 0,1,0 */
@@ -322,10 +323,6 @@
 		glRotatef(90, 0.0, 0.0, 1.0);     /* z axis */
 		followBlock(mi);
 	}
-	glRotatef(-90, 1.0, 0.0, 0.0);		
-  gltrackball_rotate (tb->trackball);
-	glRotatef(90, 1.0, 0.0, 0.0);		
-
 	/* rotate the world */
 	glRotatef(tb->rotation, 0.0, 0.0, 1.0);		
 
