For the benefit of anyone reading this thread in future, I solved this with Phil's kind help over the phone. The problem was that at some time in the past I had started to add a loco to the ECoS, but I'd left it as an incomplete entry, so it was lurking in one of the other loco lists under the default name "New 0003". This itself wouldn't have been a problem, but unwittingly I'd left this 'ghost loco' with an address of 3, which was conflicting with the new loco I was trying to add, as it had the same address. Simple when you know how...!
Later tonight I also discovered that if you save a loco to a steam loco list, but then change the little loco picture to a diesel (a class 08 in this case), it automatically moves that loco to the diesel loco list. For a moment this had me scratching my head as to where my freshly programmed gronk had disappeared to!
Ant