This is very easy if you use one of the open source programmers (or a homebrew roll-your-own like me). The way I have implemented this is I have two vectors of data when I load a INHX16 file to be burned. One vector contains the data bytes proper, the other contains flags, a 1 for a location seen in the file, 0 otherwise. When programming the algorythm just issues an increment instead of burning for a location with flag 0. It is your responsability to make sure that the locations can indeed be programmed... but my driver gives a warning and you need to -f (force) to make it work like that. If it fails, then it fails, and the programmer gives an error message and stops. Good luck. Peter -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu