Hello, i would like create a bootdisk , that can be boot from Old BIOS, EFI32 and EFI64. But for EFI Boot there is only one directory /EFI/BOOT/ In this directory I can copy BOOTia32.EFI and BOOTx64.EFI. But the *.c32 files for EFI32 & EFI64 , I can install to this directory at the same time. Is there a way to load the *.c32 from different directory ? Or is there a other solution ? Thanks Johann
> Hello, > > i would like create a bootdisk , that can be boot from Old BIOS, EFI32 and > EFI64. > > But for EFI Boot there is only one directory /EFI/BOOT/ > In this directory I can copy BOOTia32.EFI and BOOTx64.EFI. > > But the *.c32 files for EFI32 & EFI64 , I can install to this directory at the > same time. > > Is there a way to load the *.c32 from different directory ?Using Syslinux 6.04-pre1, you can use the PATH directive, together with SYSLIA32.CFG and SYSLX64.CFG. In the following example, the file "SYSLUEFI.CFG" is "in-common" to both UEFI platforms, and each of the other 2 cfg files is parsed by its respective "syslinux.efi" (renamed) only (i.e. depending on the platform you are booting). The respective c32 modules are then located under '/EFI/BOOT/X64/' and /EFI/BOOT/IA32/'. The core modules, LDLINUX.E{32,64} are located under '/EFI/BOOT/', together with the 2 "*.EFI" files and the CFG files. ### /EFI/BOOT/SYSLIA32.CFG start ### PATH IA32 INCLUDE SYSLUEFI.CFG ### /EFI/BOOT/SYSLIA32.CFG end ### ### /EFI/BOOT/SYSLX64.CFG start ### PATH X64 INCLUDE SYSLUEFI.CFG ### /EFI/BOOT/SYSLX64.CFG end ### ### /EFI/BOOT/SYSLUEFI.CFG start ### UI vesamenu.c32 LABEL catl COM32 cat.c32 APPEND SYSLUEFI.CFG LABEL mylabel LINUX mykernel INITRD myinitrd APPEND myoptions ### /EFI/BOOT/SYSLUEFI.CFG end ### Just in case someone was not reading carefully, this method is available in 6.04-pre1 (not in 6.03). About the PATH directive, see: www.syslinux.org/wiki/index.php/Config#PATH HTH, Ady.
Use the architecture-specific config files and a PATH statement On Mon, Apr 15, 2019, 6:53 AM Johann Obermayr via Syslinux < syslinux at syslinux.org> wrote:> Hello, > > i would like create a bootdisk , that can be boot from Old BIOS, EFI32 and > EFI64. > > But for EFI Boot there is only one directory /EFI/BOOT/ > In this directory I can copy BOOTia32.EFI and BOOTx64.EFI. > > But the *.c32 files for EFI32 & EFI64 , I can install to this directory at > the same time. > > Is there a way to load the *.c32 from different directory ? > > Or is there a other solution ? > > Thanks > Johann > > > _______________________________________________ > Syslinux mailing list > Submissions to Syslinux at syslinux.org > Unsubscribe or set options at: > https://lists.syslinux.org/syslinux >
Hello, Thank you, for this information. This is, what I need. So I will switch from 6.03 to the last 6.04 pre. Regards Johann> -----Urspr?ngliche Nachricht----- > Von: Syslinux <syslinux-bounces at syslinux.org> Im Auftrag von Ady Ady via > Syslinux > Gesendet: Montag, 15. April 2019 18:53 > An: syslinux at syslinux.org > Betreff: Re: [syslinux] EFI32, EFI64 on one disk > > > Hello, > > > > i would like create a bootdisk , that can be boot from Old BIOS, EFI32 > > and EFI64. > > > > But for EFI Boot there is only one directory /EFI/BOOT/ In this > > directory I can copy BOOTia32.EFI and BOOTx64.EFI. > > > > But the *.c32 files for EFI32 & EFI64 , I can install to this > > directory at the same time. > > > > Is there a way to load the *.c32 from different directory ? > > > Using Syslinux 6.04-pre1, you can use the PATH directive, together with > SYSLIA32.CFG and SYSLX64.CFG. > > In the following example, the file "SYSLUEFI.CFG" is "in-common" to both > UEFI platforms, and each of the other 2 cfg files is parsed by its respective > "syslinux.efi" (renamed) only (i.e. depending on the platform you are > booting). > The respective c32 modules are then located under '/EFI/BOOT/X64/' and > /EFI/BOOT/IA32/'. The core modules, LDLINUX.E{32,64} are located under > '/EFI/BOOT/', together with the 2 "*.EFI" files and the CFG files. > > ### /EFI/BOOT/SYSLIA32.CFG start ### > > PATH IA32 > INCLUDE SYSLUEFI.CFG > > ### /EFI/BOOT/SYSLIA32.CFG end ### > > > ### /EFI/BOOT/SYSLX64.CFG start ### > > PATH X64 > INCLUDE SYSLUEFI.CFG > > ### /EFI/BOOT/SYSLX64.CFG end ### > > > ### /EFI/BOOT/SYSLUEFI.CFG start ### > > UI vesamenu.c32 > > LABEL catl > COM32 cat.c32 > APPEND SYSLUEFI.CFG > > LABEL mylabel > LINUX mykernel > INITRD myinitrd > APPEND myoptions > > ### /EFI/BOOT/SYSLUEFI.CFG end ### > > Just in case someone was not reading carefully, this method is available in > 6.04-pre1 (not in 6.03). > > About the PATH directive, see: > > www.syslinux.org/wiki/index.php/Config#PATH > > HTH, > Ady. > > _______________________________________________ > Syslinux mailing list > Submissions to Syslinux at syslinux.org > Unsubscribe or set options at: > https://lists.syslinux.org/syslinux
Hello, PATH relative / absolute ? If I set PATH x86 -> /EFI/BOOT/x86 is search path ? What is the prefix for PATH <dir> ? Which files are search in the PATH ? Only *.c32 or also other one ? Thanks Regard Johann> -----Urspr?ngliche Nachricht----- > Von: Syslinux <syslinux-bounces at syslinux.org> Im Auftrag von Ady Ady via > Syslinux > Gesendet: Montag, 15. April 2019 18:53 > An: syslinux at syslinux.org > Betreff: Re: [syslinux] EFI32, EFI64 on one disk > > > Hello, > > > > i would like create a bootdisk , that can be boot from Old BIOS, EFI32 > > and EFI64. > > > > But for EFI Boot there is only one directory /EFI/BOOT/ In this > > directory I can copy BOOTia32.EFI and BOOTx64.EFI. > > > > But the *.c32 files for EFI32 & EFI64 , I can install to this > > directory at the same time. > > > > Is there a way to load the *.c32 from different directory ? > > > Using Syslinux 6.04-pre1, you can use the PATH directive, together with > SYSLIA32.CFG and SYSLX64.CFG. > > In the following example, the file "SYSLUEFI.CFG" is "in-common" to both > UEFI platforms, and each of the other 2 cfg files is parsed by its respective > "syslinux.efi" (renamed) only (i.e. depending on the platform you are > booting). > The respective c32 modules are then located under '/EFI/BOOT/X64/' and > /EFI/BOOT/IA32/'. The core modules, LDLINUX.E{32,64} are located under > '/EFI/BOOT/', together with the 2 "*.EFI" files and the CFG files. > > ### /EFI/BOOT/SYSLIA32.CFG start ### > > PATH IA32 > INCLUDE SYSLUEFI.CFG > > ### /EFI/BOOT/SYSLIA32.CFG end ### > > > ### /EFI/BOOT/SYSLX64.CFG start ### > > PATH X64 > INCLUDE SYSLUEFI.CFG > > ### /EFI/BOOT/SYSLX64.CFG end ### > > > ### /EFI/BOOT/SYSLUEFI.CFG start ### > > UI vesamenu.c32 > > LABEL catl > COM32 cat.c32 > APPEND SYSLUEFI.CFG > > LABEL mylabel > LINUX mykernel > INITRD myinitrd > APPEND myoptions > > ### /EFI/BOOT/SYSLUEFI.CFG end ### > > Just in case someone was not reading carefully, this method is available in > 6.04-pre1 (not in 6.03). > > About the PATH directive, see: > > www.syslinux.org/wiki/index.php/Config#PATH > > HTH, > Ady. > > _______________________________________________ > Syslinux mailing list > Submissions to Syslinux at syslinux.org > Unsubscribe or set options at: > https://lists.syslinux.org/syslinux