some timer fixes

reset global start_time when time_diff is calculated