Cant install bootcamp in MBR after internal SSD upgrade

Solution 1:

You could install rEFInd as by default this will automatically identify legacy Windows installations on internal or external disks.

Alternatively you could create a hybrid member on your internal SSD using gdisk and set at least one partition bootable.

This will cause the firmware to initialize the BIOS/CSM/legacy support.

You can pick any partitions as macOS will ignore it when booting. If you have EFI, Macintosh HD and Recovery you could pick 2 and 3. For example :

  1. sudo gdisk /dev/disk0
  2. take option r for recovery menu.
  3. take option h to create hybrid member. Here partitions 2 and 3 are chosen with 2 set bootable.
Type from one to three GPT partition numbers, separated by spaces, to be
added to the hybrid MBR, in sequence: 2 3
Place EFI GPT (0xEE) partition first in MBR (good for GRUB)? (Y/N): Y

Creating entry for GPT partition #2 (MBR partition #2)
Enter an MBR hex code (default AF): AF
Set the bootable flag? (Y/N): Y

Creating entry for GPT partition #3 (MBR partition #3)
Enter an MBR hex code (default AF): AF
Set the bootable flag? (Y/N): N
  1. take option w to write changes and exit.

Depending on your version of macOS you may need to disable SIP to use either gdisk or install rEFInd but you can enable it again after.