I dont have a zif, its sitting in a solderless breadboard directly in the place where the 16f877 was, I keep trying idea's, swapping them around, reloading the appropriate hex file but still get the error when I verify.

I am using conventional In circuit programming, hardly any components on the breadboard and smooth voltages.

What works perfectly for the 877 does not for the 877A.

Tried erase before write.

Made sure I have the low-voltage programming pin (RB3) pulled to
ground when programming the device.

Above it was suggested about the bootloader, is a bootloader required if using the older in circuit programming or on the 877A must it be used no matter how, just a thought.

Its doing my head in, got a project on the go and cant store the code in the chip :-(