About the boot splash on FreeBSD 8.0 amd64

ericbsd

Developer
About the boot splash on FreeBSD 8.0 amd64. I try to put a boot splash. But its boot on the normal boot.

Is it only for i386?
 
IIRC, it requires VESA and should work on 9.0-CURRENT amd64, too.
 
I edited /boot/loader.conf and added the following:


Code:
bitmap_load="YES"
bitmap_name="splash.bmp"
splash_bmp_load="YES"
vesa_load="YES"


2. I edited the wallpaper found at http://www.freebsd.org/logo/wall3.jpg to make it 256 colors and 1024x768.

3. I moved the wallpaper to /boot/kernel/splash.bmp

4. Rebooted

and this don't working.
 
Well, you need SC_PIXEL_MODE, too. It's a PITA that you need to recompile kernel just to be able to switch to graphic modes[1]. This option really needs to be in GENERIC kernel or mentioned in splash(4).

[1] while splash device is already in GENERIC
 
nothing change. I add option SC_PIXEL_MODE and splash was their but noting change.
 
Can you show output from [cmd=]lsmod[/cmd] command in loader and boot in verbose mode? dmesg should contain smth like
Code:
sc0: <System console> at flags 0x100 on isa0
splash: image@0xffffffff80b77f30, size:475926
splash_bmp: beyond screen capacity (960x768, 256 colors)
splash_bmp: beyond screen capacity (960x768, 256 colors)
bmp_start(): splash_mode:261
splash: image decoder found: splash_bmp
sc0: VGA <16 virtual consoles, flags=0x100>
 
what you mean lsmod don't work. and i but to verbose and I not time to see that because my computer is a little to fast.
and please be a little bit more clear. I'm using since 2 years. But I'm not fully know all. Be more specific please.
 
I check my kernel directories and i don't find splash on it.

http://pastebin.com/f648e519e

this my /boot/loader.conf
Code:
sem_load="YES"

nvidia_load="YES"

vesa_load="YES"
splash_bmp_load="YES"
bitmap_load="YES"
bitmap_name="/boot/dual_chuck-40.bmp"
 
I need this in /boot/kernel
Code:
/boot/kernel/splash_*.ko	  splash image decoder modules
     /boot/kernel/*_saver.ko	  screen saver modules
     /boot/kernel/vesa.ko	  the VESA support module
But the only one i find is
Code:
boot/kernel/*_saver.ko
and is my GENERIC
http://pastebin.com/f1fdc556

I don't understand.
 
Code:
eric# kldstat
Id Refs Address            Size     Name
 1   16 0xffffffff80100000 e08700   kernel
 2    1 0xffffffff80f54000 d3cac8   nvidia.ko
 3    3 0xffffffff81c91000 413b0    linux.ko
 4    1 0xffffffff81e22000 3a28     linprocfs.ko
 
I am having a similar problem.

I understand that the VESA module does not exist in 8.0-RELEASE amd64 but I am trying to use a 256-colour 320x200 image.

I have the following in /boot/loader.conf
Code:
splash_bmp_load="YES"
bitmap_load="YES"
bitmap_name="/boot/splash.bmp"

The kernel is compiled with device splash and options SC_PIXEL_MODE and I am using one of the splash images linked to in the handbook.
Code:
$ file /boot/splash.bmp 
/boot/splash.bmp: PC bitmap, Windows 3.x format, 320 x 200 x 8

Confirming it is the right size and format.

Yet I still get no splash screen. Suggestions?
 
lsmod is to list loaded modules in Linux. Use kldstat to view loaded modules in FreeBSD.

Nope, lsmod is used inside loader to list loaded modules. See handbook section 12.3.3.2.
 
I haven't been able to make it work. Followed all the instructions here carefully, and those in the handbook. I made a 320x200 256 color indexed bitmap with gimp as described, I am certain my kernel has "device splash" and "SC_PIXEL_MODE". I tried disabling the nvidia module. I tried copying the "splash.bmp" file to several places. I tried dropping to the boot prompt and doing an "lsmod" and it did indeed show the bitmap data ... I even did "more splash.bmp" just to see and it works. The bitmap is there.

I did notice that there is no "bitmap.ko" in the kernel/ directory which I was expecting because of the syntax...

i.e. snd_hda_load="YES" corresponds to a file kernel/snd_hda.ko
the docs say to put bitmap_load="YES" in there but there is no such kernel/bitmap.ko file ... a problem? I do not know, I am new to FreeBSD.

Any other hints? I really like the "think correctly" splash as most of my coworkers use macs ...

thanks in advance
 
same issue here,i followed the instruction but i didn't make it.

this is the context of my loader.conf file

Code:
vesa_load="YES"
bitmap_load="YES"
splash_bmp_load="YES"
bitmap_name="/boot/image.bmp"

in my kernel's configuration file i have loaded the "device splash"..

that are we doing wrong?

any help would be appreciated :)
 
It took me a while to get a splash working on my intel machine. If I remember right, most of my issues were with the type of bmp. Below is the splash that is now working. (Zipped for upload).

I wouldn't mind a higher quality bitmap, so I will experiment with that a bit now.

Code:
vesa_load="YES"
splash_bmp_load="YES"
bitmap_load="YES"
bitmap_name="/boot/splash/boot2.bmp"
 

Attachments

  • boot2.bmp.tar.gz
    6 KB · Views: 439
Okay, I have this working.

My system does the splash nicely with a 800x600 bmp. I think the bmp still has to be of a certain type, but I am not sure about that. It also worked with 800x600 pcx.

My screen is 1024x600, and the 800x600 is just stretched to fit. So I start with an image that looks nice in 1024x600, and scale it to 800x600.

I am using the GENERIC kernel.

Does my 320x200 bmp work for anyone?
 
My amd desktop works with bmps of the following sizes:

320x200
640x400
640x480

These are not scalled, but are centered, except for 640x480 which fills the screen. That is still pretty grainy for this lcd, but so far I havn't found a higher resolution that still works on this computer.
 
Back
Top