Awesome!!! Thanks a lot for the reply. You really cleared that up for me to understand better.
I’ll be putting windows on the same ssd. When I move the EFI folder from the EFI partition to the new 200mb FAT32 partition, should I delete it from the EFI partition in case it causes any confusion?
I think you only need one copy of OpenCore.
It might be less confusing for Windows if you did not remove the EFI folder.
Just make sure you have the OpenCore in the OpenCore partition as the blessed OpenCore. You can give each OpenCore a different background color in the config.plist. Make sure the new OpenCore is the one that boots from cold boot.
Do you have boot screen? If not, does OpenCore add boot screen support for you? If not, then the background color idea isn't going to be helpful. If it is helpful, then I would choose colors that are not white, black, or gray, so you know it's OpenCore doing stuff and not gray from old Apple Startup Manager, or black from non functioning GPU, or white from something weird.
Then begin your Windows install process. Let Windows muck up the EFI partition however it likes, then when it's installed and working, you can clean things up in macOS by comparing the EFI partition with your OpenCore partition. In the EFI partition, see what bits were put in the EFI folder by Windows and just remove the OpenCore bits.
Now, if by some weird unexpected circumstance Windows decided to muck with your OpenCore partition, I suppose you could move the Windows bits to the EFI partition and restore any missing OpenCore bits in the OpenCore partition.
It's all about being aware of what was there before, what is there after, and what you want to be there.
So you need to know what's in your EFI partitions and in your bootvars before and after.
I use the
mountEFIpartitions
and
dumpallbootvars
commands from these scripts:
https://gist.github.com/joevt/477fe842d16095c2bfd839e2ab4794ff
https://gist.github.com/joevt/6d7a0ede45106345a39bdfa0ac10ffd6
If possible, I would like the dumpallbootvars command to be able to show the bootvars that are being hidden/protected by OpenCore - because the current results won't show, for example, that OpenCore is actually the currently blessed boot file if OpenCore was used during boot.