NOTE! This site uses cookies and similar technologies.

If you not change browser settings, you agree to it.

I understand

Welcome, Guest
Username: Password: Remember me

TOPIC: syslinux/extlinux bootloader - quiet boot without cursor and banner

syslinux/extlinux bootloader - quiet boot without cursor and banner 5 years 11 months ago #1

  • einhänder
  • einhänder's Avatar
  • Offline
  • Junior Boarder
  • Posts: 33
  • Thank you received: 4
  • Karma: 3
Hi all,

some of you might know we were looking for a solution to support a method in order to hide the blinking cursor and copyright banner shown by the syslinux/extlinux bootloader at the early boot stage.
Distractions like these might lower the home theatre experience. :)

Last night I was able to find a solution, owing to a syslinux developer (genec) on the syslinux irc channel.

There I was asking if syslinux would ever apply a patch to disable the cursor and banner or at least make it possible to disable both by an "QUIET" option for the configuration. The reply was unambiguous this would rather never happen in this way, because these solutions make it impossible to debug the bootloader process in cases where an error occurs. Available patches are rather hacks instead of convenient solutions. Above all these might be a gpl violation since the copyright information gets removed.

Just for the reference, here are some links to patches:
- Patch 1
- Patch 2

I was pointed to play around with colors and escape sequences to simulate the desired behavour, but unfortunately I was not able to get a sufficient result. It is easy to hide the banner but it's not for the cursor.

Finally genec remembered he created a little COMBOOT module last year which should do what I was looking for. Kindly he pushed the source to his public git repo and gave me support to get my hands on this.

Below is a step-by-step description to get things done:

a. Get the module source for clrcmd.asm
Clone the git repo or if you already have the 4.04 sources around just download the raw source for the clrcmd module located in modules.

b. build the module
cd into modules where clrcmd.asm is located and execute:
make clrcmd.com
This outputs clrcmd.com, clrcmd.lst and .clrcmd.com.d. You can savely ignore the .lst and .d tmp files.
Finally copy the clrcmd.com to /boot.

c. configure the bootloader
There are two ways to configure the bootloader now. The first is to use the clrcmd.com as kernel and append vmlinuz to it. The downside of this method is it only support ~120 characters counting spaces and everything. It takes the characters of APPEND and INITRD into account.

Sample configuration with ~120 character limitation:
DEFAULT openelec
PROMPT 0 

LABEL openelec
    KERNEL clrcmd.com 
    #INITRD #optional
    APPEND vmlinuz foo bar
Note that the var KERNEL could be replaced by var COMBOOT.

What most people would obviously need is a way to append more than ~120 characters. Luckily there's also a solution to circumvent this limitation by making use of a daisychain. In order to get this done copy the module linux.c32 to /boot.

Sample configuration without ~120 character limitation:
DEFAULT openelec-clr
PROMPT 0

LABEL openelec-clr
    COMBOOT clrcmd.com
    APPEND openelec

LABEL openelec
    COM32 linux.c32
    #INITRD #optional
    APPEND vmlinuz foo bar
d. test
Power on the system and recognize no cursor and no banner at all.

e. results and observations
What I recognized is the banner gets never visible. But under certain circumstances it might happen the cursor gets visible for 0,X seconds.

This might happen in situations like:
- sometimes if one halts the system and immediately powers it on again
- sometimes after a reboot
- sometimes when usb devices are attached and the bios post takes longer than normally
(EDIT: These issues are gone on my testsystem with syslinux-4.05)


I don't know whether or not this might be a bug, nevertheless I'm logging anomalies and will report back upstream.
According to the developer chances exist this module could make it in one of the future releases. So far this approach has been the one and only clean and working solution that has ever worked for me like desired.

Finally I would like to thank genec for pointing out this possibility and his great support.

Regards
einhänder
Last Edit: 5 years 8 months ago by einhänder.
The administrator has disabled public write access.
The following user(s) said Thank You: gasu, kenoi

Re: syslinux/extlinux bootloader - quiet boot without cursor and banner 5 years 9 months ago #2

  • gasu
  • gasu's Avatar
  • Offline
  • Junior Boarder
  • Posts: 21
  • Karma: 0
How can i achieve this under openelec ? i grabbed Openelec sources from git and compiled the clrcmd.com on the openelec 4.04 syslinux sources , and copied the linux.c32 too .

Then i did make release , added a copy of clrcmd.com and linux.c32 to create_usbimage and then installed openelec

Then went to /media/OpenelecTV and copied the clrcmd.com and linux.c32 to /flash/ and edited the syslinux.cfg to :

DEFAULT openelec-clr
PROMPT 0
TIMEOUT 0

LABEL openelec-clr
COMBOOT clrcmd.com
APPEND openelec

LABEL openelec
COM32 linux.c32
#INITRD #optional
APPEND /KERNEL boot=LABEL=System disk=LABEL=Storage quiet vga=792

The syslinux stays on screen for a shorter time but it's still there so it works partially but not 100% , am i missing something ?

Cheers
The administrator has disabled public write access.

Re: syslinux/extlinux bootloader - quiet boot without cursor and banner 5 years 9 months ago #3

  • gasu
  • gasu's Avatar
  • Offline
  • Junior Boarder
  • Posts: 21
  • Karma: 0
Did some more testing and the banner doesn't show up if i shutdown the system , on reboots tho it will always show for 0.x , also even on shutdown the cursor blinks for a very very short time .

Well while not perfect it's better than nothing for now , now i need to figure how to edit stuff to make it install in the right place of a usb stick
The administrator has disabled public write access.

Re: syslinux/extlinux bootloader - quiet boot without cursor and banner 5 years 8 months ago #4

  • einhänder
  • einhänder's Avatar
  • Offline
  • Junior Boarder
  • Posts: 33
  • Thank you received: 4
  • Karma: 3
Hey gasu,

thanks for testing.
The problem is I'm not really able to reproduce your issues. With this solution I never had trouble with the banner showing up again. The only glitches were certain situations where the cursor came up again (like mentioned above). Though these glitches are gone completely on my system with the latest release of syslinux-4.05. So the following issues are gone completely now:
- sometimes if one halts the system and immediately powers it on again
- sometimes after a reboot
- sometimes when usb devices are attached and the bios post takes longer than normally

Back to your problems:
Did some more testing and the banner doesn't show up if i shutdown the system , on reboots tho it will always show for 0.x , also even on shutdown the cursor blinks for a very very short time .

Let's say we have a default config without using the additional module. In this situation the banner will only show up after the bios post messages, let it be a fresh boot or a reboot. But it will never show up on a shutdown or a reboot while the system is going down.
With the additional module in use same as above applies but additionally it will hide the blinking cursor and banner that appears directly after the bios post as soon as the bootloader gets initialized.

If you experience a cursor while the system is going down for shutdown or reboot or between the bootloader initialization and the bootsplash then we are talking about a different cursor. This one is the console cursor while the earlier one is the hardware cursor provided by the bios itself afaik.

To get the console cursor hidden too you have to modify your "APPEND" line as follows:
APPEND boot=LABEL=System disk=LABEL=Storage quiet vga=792 vt.cur_default=1

See kernel parameter documentation for more information: Kernel parameters

The "vt.cur_default=1" tells the kernel to hide the soft cursor. Drawback is you will not see a cursor if you would switch to a console locally. You will still be able to type like normally but without a cursor. Nevertheless you will have a cursor if you login remotely via ssh.

Btw: I removed the "TIMEOUT" entry as it is superfluous.
Last Edit: 5 years 8 months ago by einhänder.
The administrator has disabled public write access.
The following user(s) said Thank You: gasu

Re: syslinux/extlinux bootloader - quiet boot without cursor and banner 5 years 8 months ago #5

  • gasu
  • gasu's Avatar
  • Offline
  • Junior Boarder
  • Posts: 21
  • Karma: 0
Thanks for the supplemental info einhänder , i will test it like that and see what happens.

Thank you very much :)
The administrator has disabled public write access.

Re: syslinux/extlinux bootloader - quiet boot without cursor and banner 5 years 5 months ago #6

  • ultraman
  • ultraman's Avatar
  • Offline
  • Platinum Boarder
  • Posts: 4647
  • Thank you received: 889
  • Karma: 324
I follow the instructions and now I have real small appliance. Just need to change image on next compile ;)
ultraman == vpeter
LAMP addon - Linux, Apache, MySQL PHP bundle
Sundtek and HDHomeRun DVB driver addons
The administrator has disabled public write access.

Re: syslinux/extlinux bootloader - quiet boot without cursor and banner 4 years 8 months ago #7

  • ultraman
  • ultraman's Avatar
  • Offline
  • Platinum Boarder
  • Posts: 4647
  • Thank you received: 889
  • Karma: 324
Seems syslinux 5.00 doesn't work with this clrcmd.com.
ultraman == vpeter
LAMP addon - Linux, Apache, MySQL PHP bundle
Sundtek and HDHomeRun DVB driver addons
The administrator has disabled public write access.

Re: syslinux/extlinux bootloader - quiet boot without cursor and banner 4 years 3 months ago #8

  • kenoi
  • kenoi's Avatar
  • Offline
  • Junior Boarder
  • Posts: 85
  • Karma: 0
Any news on this?

Is there any other way to silence syslinux?

I just don't understand why all the bootloaders have to be so damn noisy about their work. It's not like the user cares anyway. It's the developer who cares, not the end user. There's no point in being so verbose, unless there are actual system errors to consider.
The administrator has disabled public write access.

Re: syslinux/extlinux bootloader - quiet boot without cursor and banner 4 years 3 months ago #9

  • ultraman
  • ultraman's Avatar
  • Offline
  • Platinum Boarder
  • Posts: 4647
  • Thank you received: 889
  • Karma: 324
For 64 bit system:
wget -O /tmp/extlinux.bin http://dl.dropboxusercontent.com/u/8224157/public/syslinux_hide_cursor_5/extlinux_5.10
sync
mount -o remount,rw /flash
chmod 755 /tmp/extlinux.bin
/tmp/extlinux.bin -i /flash
sync
xbmc-send -a Reboot

For 32 bit system:
wget -O /tmp/extlinux.bin http://dl.dropboxusercontent.com/u/8224157/public/syslinux_hide_cursor_5/extlinux_5.01_hidden_i386
sync
mount -o remount,rw /flash
chmod 755 /tmp/extlinux.bin
/tmp/extlinux.bin -i /flash
sync
xbmc-send -a Reboot
ultraman == vpeter
LAMP addon - Linux, Apache, MySQL PHP bundle
Sundtek and HDHomeRun DVB driver addons
Last Edit: 3 years 11 months ago by ultraman.
The administrator has disabled public write access.
The following user(s) said Thank You: kenoi, AUJim

Re: syslinux/extlinux bootloader - quiet boot without cursor and banner 4 years 3 months ago #10

  • kenoi
  • kenoi's Avatar
  • Offline
  • Junior Boarder
  • Posts: 85
  • Karma: 0
You're a champ, Ultraman! :cheer:
The administrator has disabled public write access.

syslinux/extlinux bootloader - quiet boot without cursor and banner 4 years 1 month ago #11

  • piotrasd
  • piotrasd's Avatar
  • Offline
  • Junior Boarder
  • Posts: 42
  • Thank you received: 5
  • Karma: 0
wget -O /tmp/extlinux.bin dl.dropboxusercontent.com/u/8224157/public/syslinux_hide_cursor_5/extlinux_5.01_hidden
sync
mount -o remount,rw /flash
chmod 755 /tmp/extlinux.bin
/tmp/extlinux.bin -i /flash
sync
xbmc-send -a Reboot

Link to file dont work :(
The administrator has disabled public write access.

syslinux/extlinux bootloader - quiet boot without cursor and banner 4 years 1 month ago #12

  • ultraman
  • ultraman's Avatar
  • Offline
  • Platinum Boarder
  • Posts: 4647
  • Thank you received: 889
  • Karma: 324
http://dl.dropboxusercontent.com/u/8224157/public/syslinux_hide_cursor_5/extlinux_5.10
http://dl.dropboxusercontent.com/u/8224157/public/syslinux_hide_cursor_5/libcom32.c32
http://dl.dropboxusercontent.com/u/8224157/public/syslinux_hide_cursor_5/libutil.c32
http://dl.dropboxusercontent.com/u/8224157/public/syslinux_hide_cursor_5/vesamenu.c32
ultraman == vpeter
LAMP addon - Linux, Apache, MySQL PHP bundle
Sundtek and HDHomeRun DVB driver addons
The administrator has disabled public write access.

syslinux/extlinux bootloader - quiet boot without cursor and banner 4 years 1 month ago #13

  • piotrasd
  • piotrasd's Avatar
  • Offline
  • Junior Boarder
  • Posts: 42
  • Thank you received: 5
  • Karma: 0
this enough ?? without clrcmd.com ??

if clrcmd.com is need please also upload, big thanks
Last Edit: 4 years 1 month ago by piotrasd.
The administrator has disabled public write access.

syslinux/extlinux bootloader - quiet boot without cursor and banner 4 years 1 month ago #14

  • ultraman
  • ultraman's Avatar
  • Offline
  • Platinum Boarder
  • Posts: 4647
  • Thank you received: 889
  • Karma: 324
piotrasd wrote:
without clrcmd.com
I patched syslinux sources to remove cursor and banner and there is no need for clrcmd.com anymore. Actually it's not supported with latest syslinux anymore. Just use standard extlinux.conf without any change..
ultraman == vpeter
LAMP addon - Linux, Apache, MySQL PHP bundle
Sundtek and HDHomeRun DVB driver addons
The administrator has disabled public write access.
The following user(s) said Thank You: gasu

syslinux/extlinux bootloader - quiet boot without cursor and banner 4 years 1 week ago #15

  • gasu
  • gasu's Avatar
  • Offline
  • Junior Boarder
  • Posts: 21
  • Karma: 0
Oh awesome, glad to see you did some work here too, will try it :), has been a while since i had last tried this!
The administrator has disabled public write access.