Various changes to HAL