I'm a novice on Knoppix so can not help with their hdd tools.
"ERROR: sector 0 does not have an msdos signature" indicates the last 2 bytes of sector 0 does not have the needed "AA55" code. If you run 'fixmbr' from the XP's recovery conlole it will fix that problem but it can (not usually) cause other problems that would then need fixed (miss identfies partition types).

How many and what type are the partitions on hdd ?

"/dev/sda: unrecognized partition table type" do not know if that is from the missing msdos signature bytes or not, but sespect it is a different problem. As "Harry Kuhman" posts I also have not knowlege of SATA hdd's but would look into "TESTDISK" , it will check the hdd for Volume Boot Records and rebuild the partition table , unknown if it works on Satas hdds. Be sure to read the How to use on site. http://www.cgsecurity.org/wiki/TestDisk

It has worked for me for FAT32,NTFS,Linux,Linux swap partitions on a 120g IDE hdd.

Can try a pay for program "Partition Doctor", have not used. There are many more.

If the bad sectors are in the MBR or any Volume Boot Record sectors (first sectors of all volumes) , unknown what will help you out.