Причина проблемы в размещении MBR на Ext4 диске. Windows просто не могут записать свой загрузчик в Ext4.
По аналогии с MacOS и её BootCamp единственный и вручную весьма трудоёмкий процесс...
- Создать небольшой раздел FAT32 перед Ext4 (сдвиг будет длиться долго, не исключено, что часами). MacOS зачем-то откусывает 200 метров, но это, похоже, издержки EFI, хватит и пары десятков.
- Создать NTFS (или FAT32 для XP) раздел после Ext4.
- Перенести метку boot на первый маленький раздел.
- Установить винды на NTFS-раздел (загрузчик запишется на первый раздел)
- Установить GRUB и сделать мультазагрузку.
Не знаю, если настроек и данных немного, может проще переставить Ubuntu. Кстати, если на диске сейчас один Ext4 раздел, где хранится всё, то, чтобы заново не настраивать большинство программ, достаточно выделить Ext3/4 раздел в конце существующего. Затем скопировать туда содержимое текущей папки home, а при переустановке Ubuntu не форматировать этот раздел(!), а указать в ручной разметке, что это точка монтирования /home. Естественно, надо завести пользователя (-ей) с тем же логином, чтобы домашняя папка подцепилась сама (или снова выполнить перенос содержимого).
P.S.: Если ставишь XP с диска без интегрированных SATA драйверов, то винды просто могут не уметь работать с контроллером. Симптом - сообщение "Системе не удалось обнаружить диски", то есть жесткого диска, по мнению, windows просто нет.