OFFSET_STEP
*offset = ((long)val) * OFFSET_STEP;
if (offset > OFFSET_STEP * 127)
else if (offset < OFFSET_STEP * -128)
reg = DIV_ROUND_CLOSEST(offset, OFFSET_STEP);