orinoco now. Uses a combination of tickdelay (where possible) and calibrated busywait (where necessary).