#1 improve timing: simulation ticks every 1ms