Sorry to interrupt... I'm just following along for the sake of understanding how this is managed.

Do I read you right? Using sector 0 as a scratchpad? Reading X sector to 0 WITH changes, then erasing X sector, then writing sector 0 to X? Finally, erasing sector 0, so its blank for the next go-round? Or did I miss something?

I think I'll read your post a few more times... see if I can't follow your thinking better. Thanks.