OK a bit of an update.

I had problems with two more f628a's where the programmer threw up a Bad Rom error. So i borrowed a friends identical programmer and it programmed the f628s just fine. I did some more code work and attempted to program the chips for about the fifth time when the error appeared again using my friends programmer.
From then on every time I tried I got an error.

I couldn't work it out. I then closed the laptop etc and went away leaving it all for a day.
When i returned first thing i did was to try programming a 628 and it worked fine! More code changes etc and then somewhere further down the line the eeprom code error appeared again. I closed down, waited a while and restarted the laptop. Same again it programmed just fine for quite a while before the code error appeared again. (I'm working on three projects in 628s)

So something is wrong either with the code, laptop, MPASM compiling or the programmer software. I suspect the programmer software as it's a cheapo.

I haven't yet tested the 877s which have been programmed indepenently elsewhere. The pcb isn't finished and I don't want to disturb anything.

I now think static has nothing to do with my problems, especially after Darrels info.

In use:
MicroCode Studio Editor
MPASM for compiling (at moment DDS asm files)
Ebay 149 kit type programmer. (Always been fine)