You could have some corrupt files.
Simplest way to fix (that I know):
Try booting off your XP CD into repair mode and doing a chkdsk on your C:. Restart and see if it boots.
If that doesn’t work try a repair install of XP (or a format and clean install if you don’t have any data you want to keep).
Obviously if you’ve added any new hardware recently try removing that too.