
var timer_objects=new Array();
var timer_active;
var timer_running=0;
var timer_objcount=0;
var timer_elapse=0;

function timer_timer() {
  var i;
  var r=0;
  if (timer_running)  {
    for (i=0;i<timer_objcount;i++) {
      if (timer_objects[i].timestep>0) {
        r++;
        timer_objects[i].timeval=(timer_objects[i].timeval+1)%timer_objects[i].timestep;
	    if (timer_objects[i].timeval==0) {
	      timer_objects[i].timeval=0;
	      timer_objects[i].TimerFunc();
        }
      }
    }
    if (r>0) timer_active=window.setTimeout("timer_timer()",timer_elapse);
  }
}

function timer_add_object(object) {
  if (object.TimerFunc)  {
    timer_objects[timer_objcount]=object;
    timer_objcount++;
  }
}

function timer_start(elapse) {
  timer_running=1;
  timer_active=window.setTimeout("timer_timer()",timer_elapse);
}

function timer_stop() {
  timer_running=0;
  timer_active=window.setTimeout("timer_timer()",timer_elapse);
}

function timer_Link() {

}