[WiP] Various changes to HAL