I have seen a strange behavior of Keil Debugger: when I try to step through
mov A,SBUF
SBUF is really two separate registers, you get the contents of the receive register when you read SBUF, however when you write to SBUF the value goes into the transmit register. In a nutshell you cannot read back what you have written. Stefan