FWIW, here is an include file I put together (a long time ago) to use the Hardware I2C. It may be useful. It uses arrays as buffers to input and output data.
HI2C_Subs.bas
It uses arrays as buffers to input and output data. This real time clock include shows how the H12C is used.
RTC_Subs.bas
It's been a while since I've used/looked at it, so there is likely quite a bit that could be improved. But, it worked when I used it. I just can't remember all the details of how.