Checking for data on the I2C bus (without Wire.h)

Because I don't want the overhead (I don't need error checking etc. and I do need every last drop of performance), don't want the interrupt (a while loop fits me better in this case), but do want complete control and, more importantly, do want to teach myself how to do I2C without using the library as I might need that outside the Arduino universe - and it's a challenge! :slight_smile:

Just to prevent the potential avalanche of responses regarding the many benefits of Wire.h, let me just say that I know, but it is a final design decision :slight_smile:

I am simply trying to find out, without the help of libraries, how can I perform the (I sincerely hope) simple act of checking non-destructively for data on the I2C bus directly, and ideally if that data is a particular value, 0xde in my case.