Boot from a bootable Puppy Linux CD (you can download and burn on e from the
Net) and see what you can read on the HDD etc
Buy a (dead cheap) USB disk enclosure (make sure its the right size for the laptop's
HDD), plug it into another PC and see if you can format it.
It might be the power supply.
It could be one of a number of internal connectors.
It could be a failing motherboard.
At this stage I'd either go to a hardware forum (Tom's Hardware is one I know
of, there are others) or a repair shop - -as it doesn't seem to be a Windows issue
after all.