fix unsigned to signed 16bits conversion