> If I read EEADR 0x00 and store it in a register it equals AA. Then if I > read EEADR 0x01 and store it in a register it also equals AA. If I step > through the program, EEADR 0x01 = 55. Just to test it, I put a 10uS delay > between reads - no change. Then I tried to read EEADR 0x00 then 0x04 - no > change. EEADR is just a RAM location in terms of reading/writing from the firmware. If you write AA to it, you will read AA from it. However, if have no idea what you mean by the phrase "read EEADR 0x01" verus "read EEADR 0x00. EEADR is at a fixed address specified by Microchip, and you can't control the value you *read* from a register, so this makes absolutely no sense to me. ******************************************************************** Olin Lathrop, embedded systems consultant in Littleton Massachusetts (978) 742-9014, olin@embedinc.com, http://www.embedinc.com -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.