Given a procedure to read a number of bytes from 16F87x internal eeprom to a given address :=20 void readeeprom(char address,char nbytes,char *dest) { EEADR=3Daddress; EECON1=3D0; do { RD=3D1; *dest++=3DEEDATA; EEADR++;} while(--nbytes); } The following calls give "illegal conversion of integer to pointer (warning)" but do generate correct code and work correctly :=20 readeeprom(rxbuffer[2],8,&rxbuffer[0]); readeeprom(rxbuffer[2],8,(char)&rxbuffer[0]); It's not a major problem but it would be nice to know the 'correct' way to do it to avoid the warning messages. -- http://www.piclist.com hint: PICList Posts must start with ONE topic: [PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads