> >We eventually found the problem - the 4414 has 256 bytes eeprom, so it has >no EEADRH register, and therefore no code to initialise it. The 8515 has >512 bytes, but EEADRH is initialised to 0 on reset, so no problem- no code >change needed. However on the Mega8515, this register is not initialised >and powers up in a random state. This was not highlighted in the >'differences' section of the datasheet. This is why I try never to depend on a power up state. I init everything, unless I am forced, by space requirements, to remove that code. I've done that for Zilog, 8051 variants, PIC, and Atmel. Also, you'll hit another issue on early AVR parts, where X wasn't implemented as a 16 bit register. You CAN still use it as two 8 bit registers, but code written for the early parts will assume that XL will never increment XH, which is no longer true, or they will use XL as a pointer and XH to store other data, with somewhat bizarre results. Still, pretty minor when jumping 8-10 years in processors. _______________________________________________ http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist