That sounds like a plausible explanation...thank you.
I managed to get some more information last night so see what you think of this:
I went to work yesterday and in the morning turned the heating off manually by physically sliding the switch on the programmer to off. (I have a sliding switch for the heating and the hot water and the usual override 'buttons' etc).
When i came home the heating was still on!? What I then did (or to be fair my better half did), was to flick the HOT WATER sliding switch on and off a few times (it had been on the whole time), and left it in the on position. This, strangely enough, resulted in the HEATING turning off. Throughout this period the thermostat has been on the lowest setting.
I then set both heating and hot water to timed, coming on early the next morning. When i woke up the hot water appeared to be working but not the heating, suggesting that the automatic switch on and off does not seem to work...
I then tried the trick of the previous night to try and get the heating back on, sliding both the heating and hot water switches backwards and forwards, leaving them both in the 'continuously on' position. This did not work. Neither did hitting the override button or 'extra hour' button.
I then realised that the thermostat was still in the lowest possible setting, so I set it higher (higher than the point where it makes that clicking noise), and repeated the above. This time the heating came on. I suspect that when I go home tonight that it will still be on no matter how hot the house is.
So, in summary, the hot water seems to switch on and off fine. The heating does not switch on or off unless the hot water sliding button is slid backwards and forwards a bit, and it seems to be sensitive to the thermostat position, even when set to continuous, which I would have thought should ignore the thermostat as we also have a setting called automatic....It seems like the automatic heating on and off is broken, but some sort of manual intervention helps...
Hope you can make some sense of this, got a feeling the programmer is simply *&$%!ered.
Thanks for your help so far...much appreciated.