I have two hard disks, one SATA and another IDE.
I have windows XP and 7 on the SATA one, and Ubuntu on the IDE. Both of them boot and work, the bios recognizes them.
After I installed Windows 7, and connected the IDE drive, it freezes on "Starting Windows" (the black screen with the Windows logo). I unplug the IDE drive, and it starts normally.
Windows XP starts normally on both situations (with or without the IDE one connected), same for Ubuntu (it works with both disks connected or just the IDE where it is).
The IDE drive is on good status according to SMART.
The IDE is first on boot order. It goes to the Ubuntu's grub first, then by default it goes to the Windows 7 bootloader, and then to XP. I think the problem is not about the bootloader or grub.
I just read that it can be solved formatting the "problematic" hard disk because Windows 7 cannot handle so many active partitions or something like that. But that's not an option for me, I don't want to lose my Ubuntu nor have it unbootable.
I connected both disks, booted from the SATA disk directly instead of the IDE one first, and Windows 7 boots well. It worked but I can't figure out why.
I can live with it but I will have to choose booting from the SATA one directly if I want to use Windows 7, for some reason it won't work passing through Ubuntu's grub first.
How can I solve this without this consequences I mentioned?