time problem??

hii eveyone…
I hv drawn a Beam which must complete it’s rotation n 8sec…to with that i hav used the sec value of sys time…so that the beam completes 45deg in 1sec…Thus,makes 1 complete rotation (360deg) in 8sec…

 but the problem is it looks like clock tick..I wana make it as sweep how can i do that??   

or another option s ther any function to acess the mili second value of time so that my beam can make 10deg rotation in each 20mSec ?? so plz…can any 1 help me out…??

here s my snippet of code…

void display(void)

time(&ltime); // Get time
newtime = localtime(&ltime);


glColor3f( 1.0, 0.0, 1.0);
bitmap_output(-r_max,-r_max, asctime(newtime),GLUT_BITMAP_TIMES_ROMAN_24);

glRotatef( 180, 1.0, 0.0, 0.0);
glRotatef( (360/8) * (newtime->tm_sec), 0.0, 0.0, 1.0);
drawBeam(0.0,0.0,0.0, 12);

glutSwapBuffers() ;