I've spent 2 days trying to get to the bottom of this one, and it's really beginning to annoy me. Oh sure, I can do the good old "thanks for making a crap OS M$ - reformat" thing, but it's a big job and I'd just as soon leave everything else where it is rather than having to setup again from scratch.
The problem is this: I've tried many different mice & keyboards. All work fine in BIOS, DOS and the various UBCD-style linux distros. The PS/2 keyboard & mouse ports work fine. All other USB devices plug in and work no problems at all. So, it's definitely a problem tied ONLY to the USB keyboard & mouse part of the Registry. The odd thing is that XP (Pro, SP3) WILL recognise all the USB keyboards & mice I try to plug in - it's just that they don't work after I do. There is the occasional spark of life, but it's very irregular and very short-lived when it happens. Also, if I delete the keyboard or mouse I just installed (after unplugging it) in device manager (with show hidden devices switched on), and then put the same or different keyboard / mouse in a different port, there's a wait of some 10-20 seconds, then the found new hardware wizard proceeds as normal and completes (although it does feel a little slower than it should be), but once the process finishes, apart from a momentary 1 second spurt of life, the keyboard or mouse is largely dead - PS/2 keyboard & mouse sail happily on with no probs.
I think what lead to this was a BSoD that I got when I resumed from standby - this PC has been unhappy with it's nvidia motherboard drivers (oh, surprise... NOT), so I was trying some roll-backs (which all seemed to go fine incl a reboot). I did a repair install after the BSoD (since the USB keyboard & mouse failed after the BSoD), but it made no difference. Initially straight after the BSoD & reboot Windows would try to install the USB keyboard & mouse, only to have both with exclamation marks. I fixed that using some method I found on the 'net at the time, but it hasn't fixed the overall problem.
Surely there must be a tool that is capable of scanning and fixing basic errors like this? Or did M$ just take too many shortcuts in this version of Windows for it to be recoverable?