A good start would be acknowledging that is UEFI (and not EUFI) .
As long as you are not going to multiboot, but just want to boot a single OS or a PE (4.x or 5.x) the "requisites" are relatively simple:
- there must be a FAT partition on the stick (the stick can be either of MBR or GPT)
- in it there must be a folder structure of \EFI\BOOT\[*]
- in the folder there must be an .EFI executable named after the architecture of the machine (typically BOOTx64.EFI or BOOTIA32.EFI)
- see, for a list of files needed for a PE : http://reboot.pro/to...files/?p=185244 (the \EFI\boot\bootx64.efi or \EFI\boot\bootia32.efi is a copy of \Windows\boot\EFI\bootmgfw.efi) see also: http://reboot.pro/to...n-uefi-systems/
The UEFI is an "evolution" (please note the double quotes) of the EFI specification which is (supposed to be) an "evolution" (please note the double quotes again) of BIOS, here are some details that may help in understanding the (perverted) mechanisms used:
[*] Not really-really as a number of alternate paths are possible and are registered in the UEFI (was EFI) ESP registry:
though the \EFI\BOOT is "universal" (I am going to need a replacement key as the paint is peeling off from the amount of times I needed to use double quotes in this post) for removable devices and the Registry is described as:
This is an industry registry of vendor-specific subdirectory names in the EFI system partition described in the UEFI Specification. The registry aims to ensure fair, orderly, consistent and conflict free naming of files as well as help facilitate industry-wide best practices for the Directory Structure in the EFI system partition.
Originally implemented by the DIG64 Consortium, this registry of vendor specific subdirectory names in the EFI system partition is used to help companies avoid unnecessary collisions in implementation. This list is voluntary and minimally administered. Participation in the Registry or use of this information is at your own risk.