Yes, but there is a good workaround...Just read in the program words you want to keep and re-write them. Similar situation on the PICF24 and DsPIC. --Bob > I started working on a bootstrap for the PIC18F44J10, and was surprised > to find that the size of a block erase is 1024 bytes. The datasheet > says that the block erase is required for at least every third write > which makes me think I have to use it rather than writing a block of all > FFFF to a 64 byte flash write block to do a pseudo erase. The problem I > have with that is that if I want to maintain memory on the part that is > never erased, the size of that memory must be at least 1K. So, if I > want to have the boot block at the start of memory to encompass the > reset and interrupt vectors, that's 1K of codespace that I can't erase > at the start, and in addition, if I want to maintain the configuration > bytes at the end of program memory, that's another 1K of code that I > don't want to ever erase. That leaves me with only 14K of usable code > space for the part. I can live with that for my current application, > but it seems pretty wasteful. Am I not thinking about this correctly? > Will a 64 byte block write of all 1's effectively substitute for a cell > erase? I've looked at the App note 851, and although it claims to apply > to all PIC18F devices, it was released in 2002, and refers to > configuration bytes in different memory spaces so I don't think it > covers this part. > > Thanks, > > Tony > > -- > http://www.piclist.com PIC/SX FAQ & list archive > View/change your membership options at > http://mailman.mit.edu/mailman/listinfo/piclist > -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist