Hi Wouter, Thanks for your reply. Although it wasn't what I wished to hear it does clarify somewhat. However I do have a thought which may prove to be of help for my requirement. It all hinges on whether the PICSTART always does a bulk erase or not. If it does then I'll have to look at a more "flexible" programmer. On reading the programming spec I see that there is selective code protection for blocks of memory. This means that initially I can programme the first piece of code and protect the block (e.g. 400 -7ff). Now if I come along later and selectively write to the remaining memory(e.g. 0 -3ff) - but without doing a bulk erase first - I can get in the second part of the code. The issue I see here is that if I then want to protect all the code it could cause a bulk erase which puts me back at square one. My gut feel on this issue is that if I leave the configuration word at it's unprogrammed state ( all 1s - I'm assuming) and just write a zero to the one bit for the 400 - 7ff block protection, I can then set all the other bits (low) as required on the second programming run. I don't think this would constitute a "reset" of the configuration word and thus no bulk erase caused. What do you think? Slan John -- http://www.piclist.com hint: PICList Posts must start with ONE topic: [PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads