Put 'bsf status,rp0' before clrf PIR1 and 'bcf status,rp0' after clrf PIE1 These values may be defined as 8ch and 8dh in the include file at the start of your program. The compiler will only accept 7 bit RAM addresses so it truncates the 8th bit. This 8th bit is taken care of when you set the rp0 bit in the status register. Can't understand t1con giving an error unless it is defined wrong somewhere. Regards Tony Just when I thought I knew it all, I learned that I didn't.