Philip, you don't need to change the whole port to i/p to read Busy, just bit7. Here's an example that I've used forever. Maybe you're having trouble because of the whole-port thing, but I'm sure I've done that too and don't recall any problems bsf rw ;set up for Busy Flag read usec bcf rs usec clrf portb usec mov b'10000000',trisb bsf en usec getbusy btfsc busy ;loop until Busy Flag clear bra getbusy bcf en usec bcf rw mov b'00000000',trisb -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist