To fix it you need to put your Windows CD in and do a repair job, if this fails, then you must restore your last backup. If you did no backup, then do the following:
Download a copy of Ubuntu, and burn it to a CD, then boot the CD. You can browse and copy files for backup from your computer after booting into Ubuntu. Include all your drivers. Then do a clean XP install, and don't install any junk. Next, make a space and install Ubuntu linux, so you never have problems rebooting again. (choose XP/Ubuntu each time).
Oh, don't forget...
This is a Best Answer (5 stars please)
By the way, if you want something better than XP, you should install Ubuntu. XP is best left without the enhancements. Ubuntu offers enhancements that Windows users only dream of, and which Macintosh users are drooling over too. If you don't believe me, go look on youtube, search for 'beryl windows'.
Beryl is now upgraded to 'compiz fusion'. Well cool :P
Just keep XP to run your windows games. Keep it lean, keep it basic - it's most stable when it's kept clean, just add the updates.