Thanks for the reply, Panama.
The two Microsoft KB articles aren't much help though. The first one is about a keyboard issue on hibernate - my issue is on bootup, and has different parameters in the error message. The keyboard is a very plain, vanilla UK keyboard which came with the PC 5 years ago (none of yer fancy bluetooth or wireless stuff here

)
The second again talks about hibernation, and advises updating to the latest XP service pack (which I have already). It also points towards another article on internal_power_error relating to hibernation (Q331958), which has a fix attached - I've tried applying this, but XP quite rightly informs me that I'm on a later service pack and don't need this fix.
I guess I could try swapping a different keyboard in - what have I got to lose ?