Unable to boot Porteus 5.0 rc3 in Legacy mode

Post here if you are a new Porteus member and you're looking for some help.
jroovy
White ninja
White ninja
Posts: 14
Joined: 25 Jul 2021, 12:12
Distribution: archlinux

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#1 by jroovy » 25 Jul 2021, 12:25

Hi! So i created a Porteus usb using Rufus. UEFI mode works fine but when I boot in Legacy mode it says: "Failed to load COM32 file vesamenu.c32"

User avatar
Ed_P
Contributor
Contributor
Posts: 8315
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 5.01 ISO
Location: Western NY, USA

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#2 by Ed_P » 25 Jul 2021, 16:10

Check the drive's Partition Table and be sure it's not GPT. Legacy systems don't support it.

This thread may help you. UEFI and Legacy - at the same time?
Ed

Rapha_
Shogun
Shogun
Posts: 238
Joined: 12 Jun 2021, 21:59
Distribution: Xfce 4.12 - 5.rc3 - x86_64
Location: France

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#3 by Rapha_ » 25 Jul 2021, 22:10

I don't think using Rufus is a good way to install Porteus (it could be not the same Syslinux version ) :(

Now, you have to complete the installation of Porteus with the script inside the Usb :

From Linux: in command line (in the good directory) :

Code: Select all

sh Porteus.installer-for-Linux.com
From Windows:

Code: Select all

Porteus-installer-for-Windows.exe
Every things is explained with "install.txt" (in boot/docs )

(I believe that "UEFI mode" don't need install)

jroovy
White ninja
White ninja
Posts: 14
Joined: 25 Jul 2021, 12:12
Distribution: archlinux

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#4 by jroovy » 26 Jul 2021, 02:21

Ok, so I tried the steps in Ed_P's post, but now I got this in Legacy: "vesamenu.c32: not a COM32R image"

jroovy
White ninja
White ninja
Posts: 14
Joined: 25 Jul 2021, 12:12
Distribution: archlinux

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#5 by jroovy » 26 Jul 2021, 02:24

So i created an MBR on my flash drive, format as Fat32, copied iso contents to the drive, then run the Porteus-installer-for-Windows.exe, and it gives me that error above when I boot to Legacy.

User avatar
Ed_P
Contributor
Contributor
Posts: 8315
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 5.01 ISO
Location: Western NY, USA

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#6 by Ed_P » 26 Jul 2021, 04:11

I admire your persistence jroovy. :good: Which DE ISO are you working with?
Ed

jroovy
White ninja
White ninja
Posts: 14
Joined: 25 Jul 2021, 12:12
Distribution: archlinux

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#7 by jroovy » 26 Jul 2021, 04:35

MATE iso

jroovy
White ninja
White ninja
Posts: 14
Joined: 25 Jul 2021, 12:12
Distribution: archlinux

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#8 by jroovy » 26 Jul 2021, 07:28

Ok, so I solved the problem by doing this:

1) Copy the Porteus 5.0 rc3 iso contents to the flash drive
2) Run the Porteus-installer-for-Windows.exe
3) Replace all matching .c32 files in the drive's "./boot/syslinux/" with the ones from a Porteus 4.0 iso

And now it boots in both Legacy and UEFI mode :)


So I think the problem is this:

On Porteus 5.0 iso, the .c32 files are:

Code: Select all

$ file *.c32
chain.c32:    ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped
ldlinux.c32:  ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped
libcom32.c32: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped
libutil.c32:  ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped
reboot.c32:   ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped
vesamenu.c32: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped
While on the Porteus 4.0 iso:

Code: Select all

$ file *.c32
chain.c32:    COM executable (32-bit COMBOOT, relocatable)
vesamenu.c32: COM executable (32-bit COMBOOT, relocatable)
Legacy BIOS can't read ELF files, is what I'm guessing

Hope this helps :)

raja
Shogun
Shogun
Posts: 434
Joined: 02 May 2017, 09:51
Distribution: v3.2.2-32 and Porteus-Artix-64
Location: Chennai,India

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#9 by raja » 26 Jul 2021, 09:06

blaze, I think ,Porteus Insataller for windows.exe,still has syslinux-4.07 version of syslinux,where as you have replaced all files in syslinux folder with version -6.03.

This link gives all files including syslinux.exe (32bit) and syslinux64.exe downloaded from kernel.org. version-6.03

Please redo windows installer with these two exe files. At present , it has got syslinux.com file for windows95 and syslinux.exe for winNT, (both 4.07 version) The batch file to be modified, find system architecture, if win32 ,goto andf execute "syslinux.exe, else if it is 64bit goto and execute, syslinux64.exe

Since many people land into trouble, with this, please attend.

https://www.mediafire.com/file/to0iadpk ... ar.gz/file

The 'bios' folder has got all files needed .
Linux Kernel-4.4.272 -32 bit; Linux Kernel-5.4.185 - 64 bit

User avatar
Ed_P
Contributor
Contributor
Posts: 8315
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 5.01 ISO
Location: Western NY, USA

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#10 by Ed_P » 26 Jul 2021, 12:27

Wow! :o Good analysis guys. :thumbsup: Thank you.
Ed

User avatar
ncmprhnsbl
DEV Team
DEV Team
Posts: 3918
Joined: 20 Mar 2012, 03:42
Distribution: v5.0-64bit
Location: australia
Contact:

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#11 by ncmprhnsbl » 27 Jul 2021, 00:18

thanks raja,
here's a quick one to try: p-i-f-w.zip
i just changed the syslinux.com and syslinux.exe files and didn't touch the installer.bat for now, so it's 32bit only still(i'm guessing windows 64 is still backwards compatible with this)
raja wrote:
26 Jul 2021, 09:06
The batch file to be modified, find system architecture, if win32 ,goto andf execute "syslinux.exe, else if it is 64bit goto and execute, syslinux64.exe
the question is, how exactly?
this is what it looks like now: (relevant section)
installer.bat:

Code: Select all

if %OS% == Windows_NT goto SetupNT
goto Setup95

:SetupNT
%~dp0syslinux.exe -maf -d \%folder%\boot\syslinux %drive%:
if %ERRORLEVEL% == 0 goto Done
goto Error

:Setup95
%~dp0syslinux.com -maf -d \%folder%\boot\syslinux %drive%:
if %ERRORLEVEL% == 0 goto Done
goto Error
what should "%OS% == ?" be to detect windows architecture?
or some other query to specifically ask architecture?
another question is: do we need to support windows 95 with syslinux.com? does anybody still use that?
i'm guessing that "Windows_NT" catches any post XP version of windows ..?
to mess around with this, i've used file-roller and p7zip, since .exe is apparently an archive format..
here's p7zip for 5.0rc3: p7zip-16.02-x86_64-4_ncm.xzm
(since 7-zip doesn't play nice)
Forum Rules : https://forum.porteus.org/viewtopic.php?f=35&t=44

raja
Shogun
Shogun
Posts: 434
Joined: 02 May 2017, 09:51
Distribution: v3.2.2-32 and Porteus-Artix-64
Location: Chennai,India

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#12 by raja » 27 Jul 2021, 11:14

Hope this will work.

Code: Select all

IF EXIST "%PROGRAMFILES(X86)%" GOTO 64BIT ELSE GOTO 32BIT

:64BIT
%~dp0syslinux64.exe -maf -d \%folder%\boot\syslinux %drive%:
if %ERRORLEVEL% == 0 goto Done
goto Error

:32BIT
%~dp0syslinux.exe -maf -d \%folder%\boot\syslinux %drive%:
if %ERRORLEVEL% == 0 goto Done
goto Error

error and done to be added.

*info

echo %PROCESSOR_ARCHITECTURE%
if %PROCESSOR_ARCHITECTURE% == x86 GOTO 32BIT ELSE GOTO 64BIT

* after thought made me to discourage above, since ,there could be people who may be running winxp 32 bit in a 64 bit processor machine.
Anyway as you said, syslinux.exe can be executed in both and should suffice. Moreover , both use same syslinux.c source and only elf info inputted during compile.
Linux Kernel-4.4.272 -32 bit; Linux Kernel-5.4.185 - 64 bit

User avatar
ncmprhnsbl
DEV Team
DEV Team
Posts: 3918
Joined: 20 Mar 2012, 03:42
Distribution: v5.0-64bit
Location: australia
Contact:

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#13 by ncmprhnsbl » 27 Jul 2021, 11:55

thanks again raja,
here: p-i-f-w-2.zip is with the above in the installer.bat with syslinux.exe and syslinux64.exe.
for windows users to test please..
Forum Rules : https://forum.porteus.org/viewtopic.php?f=35&t=44

jroovy
White ninja
White ninja
Posts: 14
Joined: 25 Jul 2021, 12:12
Distribution: archlinux

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#14 by jroovy » 27 Jul 2021, 13:36

ncmprhnsbl I've just tried it, doesn't work :(
Tried running it as normal user and administrator, doesn't work
It gives me the popup: "This app can't run on your PC"

I'm on Windows 10 64bit (LTSC 2019)

beny
Full of knowledge
Full of knowledge
Posts: 2083
Joined: 02 Jan 2011, 11:33
Location: italy

Unable to boot Porteus 5.0 rc3 in Legacy mode

Post#15 by beny » 27 Jul 2021, 15:57

hi jroovy when you have this message on desktop "vesamenu.c32: not a COM32R image" hit the tab key maybe you have a list of boot option you can choose one,try if work for you..

Post Reply