The old Win98 used to grow stale after a year or so with incompatible driver changes, etc., dunno if that's a possibility with WinXP, ´with all the new memory handling 'n ****.
So, assuming you don't have a restore point from far, far away...
let me rephrase that, assuming you don't use the restore point function at all, like most people, a reformat/reinstall is in order, I'd say. Do that, if it ain't working, then check under the hood.
Oh, and an extra suggestion: If you do reformat, partition you HDD into 2 or more virtual drives. One to hold XP and a gig or so of swap space, and the other for data. That way, you next reformats will be a lot less painful.