> Yes, it makes sense, except for one thing. If you're using a 4-bit > interface, > you'll have to send 0x31h in nibbles. So, what you can do is TRIS PortB so > it's 01000000b. Then all you have to do is read it in, AND with 0x80h and > if > Z of the STATUS register is 1, then it's still busy. Understand? If not, > I > could try to write code to duplicate this. If, in the end it doesn't work, > the longest operation for the display is I think 1.64mS, so...delay =) > Aha. That's exactly what I tried to do. However, I think a problem will occur when you TRIS portB. Correct me if i'm wrong, but: If I set portB as an output (say 0011 0001b), and the LCD is driving (or trying to) the pins the other way (say 1011 0001b), we have a problem, right? If this is not correct, then I guess everything should work. But assuming you have to change from input to output, depending on if you are reading or writing, you are going to have a problem, as per my previous messages.