1 .\" 2 .\" Copyright (c) 1999 3 .\" Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp> 4 .\" All rights reserved. 5 .\" 6 .\" Redistribution and use in source and binary forms, with or without 7 .\" modification, are permitted provided that the following conditions 8 .\" are met: 9 .\" 1. Redistributions of source code must retain the above copyright 10 .\" notice, this list of conditions and the following disclaimer as 11 .\" the first lines of this file unmodified. 12 .\" 2. Redistributions in binary form must reproduce the above copyright 13 .\" notice, this list of conditions and the following disclaimer in the 14 .\" documentation and/or other materials provided with the distribution. 15 .\" 16 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 17 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 18 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 19 .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 20 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 21 .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 22 .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 23 .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 24 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 25 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 .\" 27 .\" $FreeBSD$ 28 .\" 29 .Dd January 15, 2006 30 .Dt SPLASH 4 31 .Os 32 .Sh NAME 33 .Nm splash 34 .Nd splash screen / screen saver interface 35 .Sh SYNOPSIS 36 .Cd "device splash" 37 .Sh DESCRIPTION 38 The 39 .Nm 40 pseudo device driver adds support for the splash screen and screen 41 savers to the kernel. 42 This driver is required if the splash bitmap image is to be loaded or 43 any screen saver is to be used. 44 .Ss Splash screen 45 You can load and display an arbitrary bitmap image file as a welcome banner 46 on the screen when the system is about to start. 47 This image will remain on the screen 48 during kernel initialization process 49 until the login prompt appears on the screen 50 or until a screen saver is loaded and initialized. 51 The image will also disappear if you hit any key, 52 although this may not work immediately 53 if the kernel is still probing devices. 54 .Pp 55 If you specify the 56 .Fl c 57 or 58 .Fl v 59 boot option when loading the kernel, the splash image will not appear. 60 However, it 61 is still loaded and can be used as a screen saver later: see below. 62 .Pp 63 In order to display the bitmap, the bitmap file itself and the 64 matching splash image decoder module must be loaded by the boot loader. 65 Currently the following decoder modules are available: 66 .Pp 67 .Bl -tag -width splash_decoder -compact 68 .It Pa splash_bmp.ko 69 W*ndows BMP file decoder. 70 While the BMP file format allows images of various color depths, this 71 decoder currently only handles 256 color bitmaps. 72 Bitmaps of other color depths will not be displayed. 73 .It Pa splash_pcx.ko 74 ZSoft PCX decoder. 75 This decoder currently only supports version 5 8-bpp single-plane 76 images. 77 .El 78 .Pp 79 The 80 .Sx EXAMPLES 81 section illustrates how to set up the splash screen. 82 .Pp 83 If the standard VGA video mode is used, 84 the size of the bitmap must be 320x200 or less. 85 If you enable the VESA mode support in the kernel, 86 either by statically linking the VESA module or by loading the VESA module 87 (see 88 .Xr vga 4 ) , 89 you can load bitmaps up to a resolution of 1024x768, depending on the VESA 90 BIOS and the amount of video memory on the video card. 91 .Ss Screen saver 92 The screen saver will activate when the system is considered idle: i.e.\& 93 when the user has not typed a key or moved the mouse for a specified period 94 of time. 95 As the screen saver is an optional module, 96 it must be explicitly loaded into memory. 97 Currently the following screen saver modules are available: 98 .Pp 99 .Bl -tag -width splash_module.ko -compact 100 .It Pa blank_saver.ko 101 This screen saver simply blanks the screen. 102 .It Pa daemon_saver.ko 103 Animated 104 .Bx 105 Daemon screen saver. 106 .It Pa fade_saver.ko 107 The screen will gradually fade away. 108 .It Pa fire_saver.ko 109 A fire which becomes higher as load increases. 110 .It Pa green_saver.ko 111 If the monitor supports power saving mode, it will be turned off. 112 .It Pa logo_saver.ko 113 Animated graphical 114 .Bx 115 Daemon. 116 .It Pa rain_saver.ko 117 Draws a shower on the screen. 118 .It Pa snake_saver.ko 119 Draws a snake of string. 120 .It Pa star_saver.ko 121 Twinkling stars. 122 .It Pa warp_saver.ko 123 Streaking stars. 124 .El 125 .Pp 126 Screen saver modules can be loaded using 127 .Xr kldload 8 : 128 .Pp 129 .Dl kldload logo_saver 130 .Pp 131 The timeout value in seconds can be specified as follows: 132 .Pp 133 .Dl vidcontrol -t N 134 .Pp 135 Alternatively, you can set the 136 .Ar saver 137 variable in the 138 .Pa /etc/rc.conf 139 to the screen saver of your choice and 140 the timeout value to the 141 .Ar blanktime 142 variable so that the screen saver is automatically loaded 143 and the timeout value is set when the system starts. 144 .Pp 145 The screen saver may be instantly activated by hitting the 146 .Ar saver 147 key: the defaults are 148 .Em Shift-Pause 149 on the AT enhanced keyboard and 150 .Em Shift-Ctrl-NumLock/Pause 151 on the AT 84 keyboard. 152 You can change the 153 .Ar saver 154 key by modifying the keymap 155 (see 156 .Xr kbdcontrol 1 , 157 .Xr keymap 5 ) , 158 and assign the 159 .Ar saver 160 function to a key of your preference. 161 .Pp 162 The screen saver will not run if the screen is not in text mode. 163 .Ss Splash screen as a screen saver 164 If you load a splash image but do not load a screen saver, 165 you can continue using the splash module as a screen saver. 166 The screen blanking interval can be specified as described in the 167 .Sx Screen saver 168 section above. 169 .\".Sh DRIVER CONFIGURATION 170 .Sh FILES 171 .Bl -tag -width /boot/kernel/splash_xxxx.ko -compact 172 .It Pa /boot/defaults/loader.conf 173 boot loader configuration defaults 174 .It Pa /etc/rc.conf 175 system configuration information 176 .It Pa /boot/kernel/splash_*.ko 177 splash image decoder modules 178 .It Pa /boot/kernel/*_saver.ko 179 screen saver modules 180 .It Pa /boot/kernel/vesa.ko 181 the VESA support module 182 .El 183 .Sh EXAMPLES 184 In order to load the splash screen or the screen saver, you must 185 have the following line in the kernel configuration file. 186 .Pp 187 .Dl device splash 188 .Pp 189 Next, edit 190 .Pa /boot/loader.conf 191 (see 192 .Xr loader.conf 5 ) 193 and include the following lines: 194 .Bd -literal -offset indent 195 splash_bmp_load="YES" 196 bitmap_load="YES" 197 bitmap_name="/boot/chuck.bmp" 198 .Ed 199 .Pp 200 In the above example, the file 201 .Pa /boot/chuck.bmp 202 is loaded. 203 In the following example, the VESA module 204 is loaded so that a bitmap file which cannot be displayed in standard 205 VGA modes may be shown using one of the VESA video modes. 206 .Bd -literal -offset indent 207 splash_pcx_load="YES" 208 vesa_load="YES" 209 bitmap_load="YES" 210 bitmap_name="/boot/chuck.pcx" 211 .Ed 212 .Pp 213 If the VESA support is statically linked to the kernel, it is not 214 necessary to load the VESA module. 215 Just load the bitmap file and the splash decoder module as in the 216 first example above. 217 .\".Sh DIAGNOSTICS 218 .Sh CAVEATS 219 Both the splash screen and the screen saver work with 220 .Xr syscons 4 221 only. 222 They are not available for the alternative console driver 223 .Xr pcvt 4 . 224 .Sh SEE ALSO 225 .Xr vidcontrol 1 , 226 .Xr syscons 4 , 227 .Xr vga 4 , 228 .Xr loader.conf 5 , 229 .Xr rc.conf 5 , 230 .Xr kldload 8 , 231 .Xr kldunload 8 232 .Sh HISTORY 233 The 234 .Nm 235 driver first appeared in 236 .Fx 3.1 . 237 .Sh AUTHORS 238 .An -nosplit 239 The 240 .Nm 241 driver and this manual page were written by 242 .An Kazutaka Yokota Aq yokota@FreeBSD.org . 243 The 244 .Pa splash_bmp 245 module was written by 246 .An Michael Smith Aq msmith@FreeBSD.org 247 and 248 .An Kazutaka Yokota . 249 The 250 .Pa splash_pcx 251 module was written by 252 .An Dag-Erling Sm\(/orgrav Aq des@FreeBSD.org 253 based on the 254 .Pa splash_bmp 255 code. 256 .Sh BUGS 257 If you load a screen saver while another screen saver has already 258 been loaded, the first screen saver will not be automatically unloaded 259 and will remain in memory, wasting kernel memory space. 260