var TpsInterTick = 75;
var rollBoxOut = false;
var rollBoxIn = false;
var boxOutHeight;
var boxInHeight;
var boxObjects = new Array();
var defaultSpeed = false;
function boxTick(boxId){
    var topPos = boxObjects[boxId]['objRef'].style.top.replace(/[^\-0-9]/g,'');
    topPos = topPos - boxObjects[boxId]['rollSpeed'];
    if (topPos/1 + boxObjects[boxId]['boxInHeight']/1<0) topPos = boxObjects[boxId]['boxOutHeight'];
    boxObjects[boxId]['objRef'].style.top = topPos + 'px';
    setTimeout('boxTick("' + boxId + '")',TpsInterTick);
}
function stopTick(){
    var boxId = this.id;
    boxObjects[boxId]['rollSpeed'] = 0;
}
function startTick(){
    var boxId = this.id;
    boxObjects[boxId]['rollSpeed'] = boxObjects[boxId]['oldSpeed'];
}
function rollInit(boxId,rollSpeed){
    rollBoxOut = document.getElementById(boxId);
    rollBoxIn = rollBoxOut.getElementsByTagName('DIV')[0];
    rollBoxOut.style.position = 'relative';
    rollBoxOut.style.overflow = 'hidden';
    rollBoxIn.style.position = 'relative';
    rollBoxOut.onmouseover = stopTick;
    rollBoxOut.onmouseout = startTick;
    defaultSpeed = rollSpeed;
    rollBoxIn.style.top = '0px';
    boxObjects[boxId] = new Array();
    boxObjects[boxId]['objRef'] = rollBoxIn;
    boxObjects[boxId]['boxInHeight'] = rollBoxIn.offsetHeight;
    boxObjects[boxId]['boxOutHeight'] = rollBoxOut.clientHeight;
    boxObjects[boxId]['rollSpeed'] = rollSpeed;
    boxObjects[boxId]['oldSpeed'] = rollSpeed;
    boxTick(boxId);
}