added basic HAL support