# About the boot splash on FreeBSD 8.0 amd64



## ericbsd (Dec 16, 2009)

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?


----------



## john_doe (Dec 16, 2009)

IIRC, it requires VESA and should work on 9.0-CURRENT amd64, too.


----------



## ericbsd (Dec 16, 2009)

I edited /boot/loader.conf and added the following:



```
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.


----------



## DutchDaemon (Dec 16, 2009)

Do you have 
	
	



```
device splash
```
 in the kernel?


----------



## john_doe (Dec 16, 2009)

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


----------



## ericbsd (Dec 17, 2009)

Thanks for the tips I compile A new kernel.


----------



## ericbsd (Dec 17, 2009)

nothing change. I add option  SC_PIXEL_MODE and splash was their but noting change.


----------



## john_doe (Dec 17, 2009)

Can you show output from [cmd=]lsmod[/cmd] command in loader and boot in verbose mode? dmesg should contain smth like

```
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>
```


----------



## ericbsd (Dec 18, 2009)

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.


----------



## ericbsd (Dec 18, 2009)

I check my kernel directories and i don't find splash on it. 

http://pastebin.com/f648e519e

this my /boot/loader.conf

```
sem_load="YES"

nvidia_load="YES"

vesa_load="YES"
splash_bmp_load="YES"
bitmap_load="YES"
bitmap_name="/boot/dual_chuck-40.bmp"
```


----------



## ericbsd (Dec 21, 2009)

I need this in /boot/kernel

```
/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 

```
boot/kernel/*_saver.ko
```
and is my GENERIC
http://pastebin.com/f1fdc556

I don't understand.


----------



## sixtydoses (Dec 21, 2009)

john_doe said:
			
		

> Can you show output from [cmd=]lsmod[/cmd] command in loader and boot in verbose mode?



`lsmod` is to list loaded modules in Linux. Use `kldstat` to view loaded modules in FreeBSD.


----------



## ericbsd (Dec 21, 2009)

```
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
```


----------



## RedGhost (Apr 14, 2010)

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

```
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.

```
$ 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?


----------



## Zare (Apr 14, 2010)

> 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.


----------



## oliverh (Apr 14, 2010)

There is no VESA for AMD64 in 8.0-Release, you have to use 8-stable to get VESA.

@zero it's kldstat within FreeBSD: http://www.freebsd.org/cgi/man.cgi?...tion=0&manpath=FreeBSD+8.0-stable&format=html

Most people don't use a command in the loader to get this kind information, so it's confusing.


----------



## RedGhost (Apr 15, 2010)

oliverh said:
			
		

> There is no VESA for AMD64 in 8.0-Release, you have to use 8-stable to get VESA.
> 
> @zero it's kldstat within FreeBSD: http://www.freebsd.org/cgi/man.cgi?...tion=0&manpath=FreeBSD+8.0-stable&format=html
> 
> Most people don't use a command in the loader to get this kind information, so it's confusing.



Indeed. If you read my above post however you will see I am trying to use a splash screen that does not depend on VESA (320x200) according to the Handbook.


----------



## oliverh (Apr 15, 2010)

Well, bmp without rle compression (in Gimp) is usually a good decision.


----------



## blak3mill3r (May 22, 2010)

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


----------



## terietor (Jul 9, 2010)

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

this is the context of my loader.conf file


```
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


----------



## mdg583 (Jan 8, 2011)

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.


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


----------



## mdg583 (Jan 8, 2011)

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?


----------



## mdg583 (Jan 8, 2011)

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.


----------

