pic12si2c.asm follow repeated start from an other chip

The repeated start is used by some chips to read values from registers.
This case was not handeled correctly by the PiPIC I2C code and this resulted
in failure to read the chip when PiPIC is connected on the same bus. The
assembly code for repeated start is experimental like the I2C slave
implementation here.