Implemented some more of the HAL