I myself had a very similar problem. The instructions on SuSE's support database that sergio_sg mentioned (http://portal.suse.com/sdb/en/2004/0...booting91.html) seemed to solve my problem, and now both windows and linux will boot.

I went back a few weeks later, wanting to resize the partitions on the drive to make room for a FAT32 partition for my documents and music--one that both Linux and Windows can access. I have tried many different repartitioning tools including BootMagic 8.0, Paragon Partition Manager 6, and Partition Table Doctor. All of them report errors with the MBR--BootMagic will not even open, and Paragon reports that the three partitions are "invalid."

I used the PartitionInfo tool included in Partition Magic. When I open it it displays three error messages in succession:

1. Disk Error(s) were detected on the drive. See the 'Errors:' list for more details.
2. Disk Geometry Error(s) were detected on this drive.
3. Partition Error(s) were detected on this drive.

This is the information that the program gives about the hard drive and the error messages:
====================================
Partition Information
====================================
Volume: C:
Partition Type: NTFS
Status: Primary, Boot
Size:65318.9 MB
Start Sector: 63
Total Sectors: 133,773,192
Errors: No partition errors detected.

Volume: *:SWAPSPACE2
Partition Type: Linux Swap
Status: Primary,
Size: 799.8 MB
Start Sector: 133,770,672
Total Sectors: 1,638,000
Errors:
Error #113: Primary partition starting at 133770672 overlaps previous partition.

Volume: (left blank)
Partition Type: Linux Ext2
Status: Primary,
Size: 10201.6 MB
Start Sector: 135,408,672
Total Sectors: 20,892,816
Errors:
No partition errors detected.

====================================
Disk Geometry Information
Cylinders: 9729
Heads: 255
Sectors/Track: 63
====================================

Partition 1
Startsect: 63
Info:
End C,H,S values were large drive placeholders.
Actual values are:
0 0 80 0 1 1 07 8326 254 63 63 133773192

Swapspace 2
Startsect: 133,770,672
Info: Begin C,H,S values were large drive placeholders.
Info: End C,H,S values were large drive placeholders.
Actual values are:
0 1 00 8326 214 1 82 8428 203 63 133770672 1638000
Info: Partition didn't begin on head boundary.
ucBeginHead expected to be 0 or 1, not 214.
Info: Partition didn't end on cylinder boundary.
ucEndHead expected to be 254, not 203.

Partition 3
Startsect: 135,408,672
Info: Begin C,H,S values were large drive placeholders.
Info: End C,H,S values were large drive placeholders.
Actual values are:
0 2 00 8428 204 1 83 9729 80 63 135408672 20892816
Info: Partition didn't begin on head boundary.
ucBeginHead expected to be 0 or 1, not 204.
Error #109: Partition ends after end of disk.
ucEndCylinder (9729) must be less than 9729.
Info: Partition didn't end on cylinder boundary.
ucEndHead expected to be 254, not 80.

I sense that our problems are related, but I have no idea how to fix either of them. Any ideas?

-Andrew