The splash pseudo device driver adds support for the splash screen and screen savers to the kernel. This
driver is required if the splash bitmap image is to be loaded or any screen saver is to be used.
Splashscreen
You can load and display an arbitrary bitmap image file as a welcome banner on the screen when the system
is about to start. This image will remain on the screen during kernel initialization process until the
login prompt appears on the screen or until a screen saver is loaded and initialized. The image will
also disappear if you hit any key, although this may not work immediately if the kernel is still probing
devices.
If you specify the -c or -v boot option when loading the kernel, the splash image will not appear.
However, it is still loaded and can be used as a screen saver later: see below.
In order to display the bitmap, the bitmap file itself and the matching splash image decoder module must
be loaded by the boot loader. Currently the following decoder modules are available:
splash_bmp.ko Windows BMP file decoder. While the BMP file format allows images of various color
depths, this decoder currently only handles 256 color bitmaps. Bitmaps of other color
depths will not be displayed.
splash_pcx.ko ZSoft PCX decoder. This decoder currently only supports version 5 8-bpp single-plane
images.
splash_txt.ko TheDraw binary ASCII drawing file decoder. Displays a text-mode 80x25 ASCII drawing,
such as that produced by the Binary save format in TheDraw. This format consists of a
sequence of two byte pairs representing the 80x25 display, where the first byte is the
ASCII character to draw and the second byte indicates the colors/attributes to use when
drawing the character.
The “EXAMPLES” section illustrates how to set up the splash screen.
If the standard VGA video mode is used, the size of the bitmap must be 320x200 or less. If you enable
the VESA mode support in the kernel, either by statically linking the VESA module or by loading the VESA
module (see vga(4)), you can load bitmaps up to a resolution of 1024x768, depending on the VESA BIOS and
the amount of video memory on the video card.
Screensaver
The screen saver will activate when the system is considered idle: i.e. when the user has not typed a key
or moved the mouse for a specified period of time. As the screen saver is an optional module, it must be
explicitly loaded into memory. Currently the following screen saver modules are available:
blank_saver.ko This screen saver simply blanks the screen.
beastie_saver.ko Animated graphical BSD Daemon.
daemon_saver.ko Animated BSD Daemon screen saver.
dragon_saver.ko Draws a random dragon curve.
fade_saver.ko The screen will gradually fade away.
fire_saver.ko A fire which becomes higher as load increases.
green_saver.ko The screen will be blanked, similar to blank_saver.ko. If the monitor and the video
card's BIOS support it the screen will also be powered off.
logo_saver.ko Animated graphical FreeBSD logo.
plasma_saver.ko Draws an animated interference pattern.
rain_saver.ko Draws a shower on the screen.
snake_saver.ko Draws a snake of string.
star_saver.ko Twinkling stars.
warp_saver.ko Streaking stars.
Screen saver modules can be loaded using kldload(8):
kldloadlogo_saver
The timeout value in seconds can be specified as follows:
vidcontrol-tN
Alternatively, you can set the saver variable in the /etc/rc.conf to the screen saver of your choice and
the timeout value to the blanktime variable so that the screen saver is automatically loaded and the
timeout value is set when the system starts.
The screen saver may be instantly activated by hitting the saver key: the defaults are Shift-Pause on the
AT enhanced keyboard and Shift-Ctrl-NumLock/Pause on the AT 84 keyboard. You can change the saver key by
modifying the keymap (see kbdcontrol(1), keymap(5)), and assign the saver function to a key of your
preference.
The screen saver will not run if the screen is not in text mode.
Splashscreenasascreensaver
If you load a splash image but do not load a screen saver, you can continue using the splash module as a
screen saver. The screen blanking interval can be specified as described in the “Screen saver” section
above.