Chainload Windows boot manager from another?
BOOTMGR will look for the hive \boot\bcd
on the partition it believes to be the active boot partition (usually the active partition on disk 0). On EFI machines, the EFI version of bootmgr will load \boot\bcd
from the ESP (EFI System Partition) which is always FAT32 and usually around 100 MiB or so.
Your question is, however, very confusing. You state
that reads C:\boot\BCD to chainload another boot manager D:\bootmgr that uses D:\boot\BCD
But then say
Huh? I'm trying to avoid having two BCD stores if possible
In the example you give of what you're trying to achieve, aren't those two different BCD files on two different partitions?
So I'm not sure exactly what you're trying to do. If you're trying to make the legacy BOOTMGR load the same BCD database that the EFI BOOTMGR uses, yes, that would be possible. You'll need to modify the emulation bootrecord on your disk (the fake MBR that's used to stop machines that don't understand GPT from reinitializing disks and losing data) to indicate the presence of at least two partitions, being the ESP and the Windows partition, with the ESP marked as active.
That way, if a BIOS in legacy mode (or a BIOS that doesn't support UEFI) attempts to start your machine from a GPT disk with your modified emulation MBR, it'll see the ESP partition as a "regular" boot partition and load from it (via its bootsector, which you would need to make sure was correctly written with a tool like bootsect
or bootrec
) BOOTMGR which, in turn, would read the \boot\bcd
on the self-same partition.