Bootloader For Windows 10 Extra Quality -

// Load and start bootmgfw.efi Status = gBS->LoadImage(FALSE, ImageHandle, FullPath, NULL, 0, &BootMgrHandle); if (EFI_ERROR(Status)) return Status;

// Get device path of the file Status = gBS->HandleProtocol(LoadedImage->DeviceHandle, &gEfiDevicePathProtocolGuid, (VOID**)&FilePath); if (EFI_ERROR(Status)) return Status; bootloader for windows 10

msg db 'Not a Windows 10 bootloader', 0 times 510 - ($-$$) db 0 dw 0xaa55 // Load and start bootmgfw

[org 0x7c00] start: mov si, msg call print hlt print: lodsb or al, al jz done mov ah, 0x0e int 0x10 jmp print done: ret if (EFI_ERROR(Status)) return Status

// Build full device path (file path appended) EFI_DEVICE_PATH_PROTOCOL *FullPath = FileDevicePath(LoadedImage->DeviceHandle, L"\\EFI\\Microsoft\\Boot\\bootmgfw.efi");

// Open simple file system on the same device (ESP) Status = gBS->HandleProtocol(LoadedImage->DeviceHandle, &gEfiSimpleFileSystemProtocolGuid, (VOID**)&Volume); if (EFI_ERROR(Status)) return Status;

// Open Windows Boot Manager file Status = Root->Open(Root, &File, L"\\EFI\\Microsoft\\Boot\\bootmgfw.efi", EFI_FILE_MODE_READ, 0); if (EFI_ERROR(Status)) Print(L"Error: bootmgfw.efi not found\n"); return Status;