Booting IFL iso from Grub2 menu entry

User discussion and information resource forum for Image products.
Kempy
Posts: 16
Joined: Sat Mar 01, 2014 9:29 am

Booting IFL iso from Grub2 menu entry

Post by Kempy »

Hi,

I want to boot the IFL iso, stored on a HDD, from a Grub2 menu entry.

With the lines in grub.cfg

>
menuentry "Image for Linux ISO" {
set root=(hd2,msdos4)
set isofile="/iso/Image_for_Linux_Net_GUI_2.93_de.iso"
loopback loop (hd2,msdos4)$isofile
linux (loop)/vmlinuz vga=791 switchx=yes iflkmap=de-latin1-nodeadkeys ktl=qwertz initrd=initrmfs.gz iflbflag=0 ProductKey=xxxx
initrd (loop)/initrmfs.gz
}
<
(parameters behind /vmlinuz are taken from isolinux.cfg inside the IFL iso)

I'm able to boot, but lost the IFL menu for setting up the different graphic modes.

I assume that Grub2 booting the IFL iso must be set in an other way, e.g. booting isolinux.bin inside the IFL iso, to get the menu.

Any ideas ?.

regards
TeraByte Support(TP)
Posts: 305
Joined: Wed Aug 31, 2011 4:22 pm

Re: Booting IFL iso from Grub2 menu entry

Post by TeraByte Support(TP) »

Kempy wrote:
> Hi,
>
> I want to boot the IFL iso, stored on a HDD, from a Grub2 menu entry.
>
> With the lines in grub.cfg
>
> >
> menuentry "Image for Linux ISO" {
> set root=(hd2,msdos4)
> set isofile="/iso/Image_for_Linux_Net_GUI_2.93_de.iso"
> loopback loop (hd2,msdos4)$isofile
> linux (loop)/vmlinuz vga=791 switchx=yes iflkmap=de-latin1-nodeadkeys ktl=qwertz
> initrd=initrmfs.gz iflbflag=0 ProductKey=xxxx
> initrd (loop)/initrmfs.gz
> }
> <
> (parameters behind /vmlinuz are taken from isolinux.cfg inside the IFL iso)
>
> I'm able to boot, but lost the IFL menu for setting up the different graphic modes.
>
> I assume that Grub2 booting the IFL iso must be set in an other way, e.g. booting
> isolinux.bin inside the IFL iso, to get the menu.
>
> Any ideas ?.
>
> regards

On a normal boot (for BIOS-based systems), the graphics mode is selected from the isolinux boot menu, which is configured in the file isolinux.cfg in the root of the ISO file. The corresponding menu text that is displayed at boot can be found in the file menu.txt, also in the root of the ISO. To be able to select a graphics mode, I believe you would need a stanza in grub.cfg for each resolution that you wanted to make available at boot.

The boot parameters required to specify the graphics mode for IFL (GUI) are one or more of the following for each resolution: 'vga', 'xres', and 'switchx'. You can see which ones you need for each graphics mode by matching the text in menu.txt with the corresponding 'append' line in isolinux.cfg. The stanza you show above is using 1024x768 framebuffer mode (menu item 2fb in isolinux.cfg).
Kempy
Posts: 16
Joined: Sat Mar 01, 2014 9:29 am

Re: Booting IFL iso from Grub2 menu entry

Post by Kempy »

Thanks Tom,

I did it in that way.

Generated 3 entries in grub.cfg.

One for >best available graphics mode< and two in a submenu for >1024x768 graphics mode< and >1024x768 frame buffer mode<.

Parameters behind /vmlinuz are always taken from isolinux.cfg inside the IFL iso.

regards

ps:
Is there any way to prevent IFL with included german language pack (ifl_de_gui.zip) to display strange characters instead of the german mutated vowels for (Ü,ü, Ö, ö, Ä,ä). Screenshot attached.

Kpoieren looks like a typing mistake, correct is Kopieren.
Attachments
Screenshot.png
Screenshot.png (26.31 KiB) Viewed 6589 times
TeraByte Support
Posts: 3629
Joined: Thu May 05, 2011 10:37 pm

Re: Booting IFL iso from Grub2 menu entry

Post by TeraByte Support »

Can you type in any of those characters and have them show? (fonts
loaded?) ... What about the CUI version?


"Kempy" wrote in message news:9212@public.image...

Thanks Tom,

I did it in that way.

Generated 3 entries in grub.cfg.

One for >best available graphics mode1024x768
graphics mode1024x768 frame buffer mode<.

Parameters behind /vmlinuz are always taken from isolinux.cfg inside the IFL
iso.

regards

ps:
Is there any way to prevent IFL with included german language pack
(ifl_de_gui.zip) to display strange characters instead of the german mutated
vowels for (?,?, ?, ?, ?,?). Screenshot attached.

Kpoieren looks like a typing mistake, correct is Kopieren.

Kempy
Posts: 16
Joined: Sat Mar 01, 2014 9:29 am

Re: Booting IFL iso from Grub2 menu entry

Post by Kempy »

TeraByte Support wrote:
> Can you type in any of those characters and have them show? (fonts
> loaded?) ... What about the CUI version?
>

Hi,

I tried to type any of that strange characters in a Linux text editor but didn't get them on my laptop.

I faced this problem since I started with IFL which was v2.88.

I had a look into the text_de.h file which is included in text_ansi.zip which is included in ifl_de_gui.zip, found and corrected that Kpoieren/Kopieren typing mistake and generated a new custom iso (from Linux Mint 17.1 x64), but the Kpoieren/Kopieren typing mistake is still there.
I think it is hardcoded in the imagel file inside ifl_de_gui.zip.

But for what reason is that text_de.h file included ?, as it seems not to be considered.

I checked IFL_cui_v2.93_de, setup in Mint 17.1 too, and it behaves similar. Setting up IFL GUI/CUI from PCLinuxOS x64 made no difference.

In the good old DOS times I would say, it looks like the wrong codepage.

An other thing I found is, that the Mint gedit text editor repots the text_de.h file as character coded in western ISO-8859-15, perhaps it needs to be UTF-8.

Screenshot attached
Attachments
Screenshot_cui.png
Screenshot_cui.png (25.87 KiB) Viewed 6563 times
TeraByte Support
Posts: 3629
Joined: Thu May 05, 2011 10:37 pm

Re: Booting IFL iso from Grub2 menu entry

Post by TeraByte Support »

The file is there incase someone wants to volunteer corrections or
additional translations. The file needs to be ANSI and not ASCII or UTF.
You can try typing those characters at a prompt for the file name or
description of the backup. That will indicate if it's more of a font issue
than the ANSI character set used. You're using the IFL boot disk ??

"Kempy" wrote in message news:9218@public.image...

TeraByte Support wrote:
> Can you type in any of those characters and have them show? (fonts
> loaded?) ... What about the CUI version?
>

Hi,

I tried to type any of that strange characters in a Linux text editor but
didn't get them on my laptop.

I faced this problem since I started with IFL which was v2.88.

I had a look into the text_de.h file which is included in text_ansi.zip
which is included in ifl_de_gui.zip, found and corrected that
Kpoieren/Kopieren typing mistake and generated a new custom iso (from Linux
Mint 17.1 x64), but the Kpoieren/Kopieren typing mistake is still there.
I think it is hardcoded in the imagel file inside ifl_de_gui.zip.

But for what reason is that text_de.h file included ?, as it seems not to be
considered.

I checked IFL_cui_v2.93_de, setup in Mint 17.1 too, and it behaves similar.
Setting up IFL GUI/CUI from PCLinuxOS x64 made no difference.

In the good old DOS times I would say, it looks like the wrong codepage.

An other thing I found is, that the Mint gedit text editor repots the
text_de.h file as character coded in western ISO-8859-15, perhaps it needs
to be UTF-8.

Screenshot attached

Kempy
Posts: 16
Joined: Sat Mar 01, 2014 9:29 am

Re: Booting IFL iso from Grub2 menu entry

Post by Kempy »

TeraByte Support wrote:
> The file is there incase someone wants to volunteer corrections or
> additional translations. The file needs to be ANSI and not ASCII or UTF.
> You can try typing those characters at a prompt for the file name or
> description of the backup. That will indicate if it's more of a font issue
>
> than the ANSI character set used. You're using the IFL boot disk ??
>

Thanks for your explanation.

I'm running the IFL iso most of the time, but attached screenshot is taken running imagel within Linux. Both behave in the same way.

I could successfully type the german mutated vowels in the filename textbox (Linux and ISO), but you can find a faulty character at the description of the back button, 'Zurück' in german, too.

The western ISO-8859-15 character-set is the right for germany, the german mutated vowels fully covered.

regards
Attachments
Screenshot3.png
Screenshot3.png (53.89 KiB) Viewed 6540 times
Kempy
Posts: 16
Joined: Sat Mar 01, 2014 9:29 am

Re: Booting IFL iso from Grub2 menu entry

Post by Kempy »

Hi,

I did a little research and I think i found something.

I write that in hex (dec) notation because I don't know if the characters will get through the browser.

Informations taken from wiki.

a)
The german mutated vowel from DOS cp437/cp850 at position 0x9A (154) is displayed in the german imagel (IFL) as the character at position 0x9A (154) in windows cp1252. Position 0x9A (154) is undefined in western ISO-8859-15, the correct german mutated vowel is at position 0xDC (220) in western ISO-8859-15 and windows cp1252.

b)
The german mutated vowel from DOS cp437/cp850 at position 0x84 (132) is displayed in the german imagel (IFL) as the character at position 0x84 (132) in windows cp1252. Position 0x84 (132) is undefined in western ISO-8859-15, the correct german mutated vowel is at position 0xE4 (228) in western ISO-8859-15 and windows cp1252.

c)
The german mutated vowel from DOS cp437/cp850 at position 0x81 (129) is displayed in the german imagel (IFL) as the character at position 0x81 (129) in windows cp1252, what is wrong, as position 0x81 (129) is undefined in windows cp1252. Position 0x81 (129) is undefined in western ISO-8859-15, the correct german mutated vowel is at position 0xFC (252) in western ISO-8859-15 and windows cp1252.

d)
The german mutated vowel from DOS cp437/cp850 at position 0x94 (148) is displayed in the german imagel (IFL) as the character at position 0x94 (148) in windows cp1252. Position 0x94 (148) is undefined in western ISO-8859-15, the correct german mutated vowel is at position 0xF6 (246) in western ISO-8859-15 and windows cp1252.

To make it complete

0x8E (142) (DOS cp437/cp850) = 0xC4 (196) (western ISO-8859-15 and windows cp1252)
0x99 (153) (DOS cp437/cp850) = 0xD6 (214) (western ISO-8859-15 and windows cp1252)
0xE1 (225) (DOS cp437/cp850) = 0xDF (223) (western ISO-8859-15 and windows cp1252)

I think that's the way to go/look for.

regards.
Kempy
Posts: 16
Joined: Sat Mar 01, 2014 9:29 am

Re: Booting IFL iso from Grub2 menu entry

Post by Kempy »

Hi,

perhaps somebody from Terabyte can take out the entries regarding the

german mutated vowels = german Umlauts

an move them to a new topic, so that we can proceed here with the original subject.

Thanks.
Kempy
Posts: 16
Joined: Sat Mar 01, 2014 9:29 am

Re: Booting IFL iso from Grub2 menu entry

Post by Kempy »

I found a more elegant way to boot the IFL iso in BIOS or UEFI mode, without flooding my main grub.cfg with IFL stanzas, by make use of grub2's configfile function, which means to chainload a second grub2 config-file that can be named what ever you want, but needs be in grub2 syntax.

For UEFI mode it is quit simple by chainloading the grub.cfg inside the IFL iso. That is where the cfgfile variable points to, isopath and isofile adjusted to your needs

main grub.cfg entry for UEFI mode
>
menuentry "Image for Linux GUI ISO (UEFI) Mode" {
isopath="hd2,msdos4"
isofile="/iso/Image_for_Linux_Net_GUI_2.93_de.iso"
cfgfile="/boot/grub/grub.cfg"
export isofile
loopback loop ($isopath)$isofile
root=(loop)
configfile $cfgfile
loopback --delete loop
}
<


BIOS mode needs a bit more work as no usable grub.cfg is available for BIOS mode in the IFL iso. So I made one (cfgfile) and saved it at the same location (isopath) as the IFL iso.

main grub.cfg entry for BIOS mode
>
menuentry "Image for Linux GUI ISO (BIOS) Mode" {
isopath="hd2,msdos4"
isofile="/iso/Image_for_Linux_Net_GUI_2.93_de.iso"
cfgfile="/iso/Image_for_Linux_Net_GUI_2.93_de_BIOS.cfg"
export isofile
loopback loop ($isopath)$isofile
root=(loop)
configfile ($isopath)$cfgfile
loopback --delete loop
}
<

Contents of .......BIOS.cfg

>
set menu_color_normal=cyan/black
set menu_color_highlight=white/black
set pager=1
set default=5
set timeout=8
menuentry "IFL (GUI) Network Boot Disk - best available graphics mode" {
linux (loop)/vmlinuz vga=773 iflkmap=de-latin1-nodeadkeys ktl=qwertz initrd=initrmfs.gz iflbflag=0 ProductKey=xxxx
initrd (loop)/initrmfs.gz
}
menuentry "IFL (GUI) Network Boot Disk - 1024x768 graphics mode" {
linux (loop)/vmlinuz vga=773 xres=1024 iflkmap=de-latin1-nodeadkeys ktl=qwertz initrd=initrmfs.gz iflbflag=0 ProductKey=xxxx
initrd (loop)/initrmfs.gz
}
<

You can prepare an menuentry for every graphic mode you would need, parameters behind /vmlinuz are taken from isolinux.cfg inside the IFL iso.
It is important here to have the (loop) variable in the linux and initrd line.

regards
Post Reply