Sync with FreeBSD's rev. 1.12. This works around an mdoc(7) bug which
[dragonfly.git] / share / man / man4 / splash.4
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: src/share/man/man4/splash.4,v 1.9.2.7 2001/08/17 13:08:39 ru Exp $
28 .\" $DragonFly: src/share/man/man4/splash.4,v 1.3 2005/05/07 17:38:33 swildner Exp $
29 .\"
30 .Dd February 9, 1999
31 .Dt SPLASH 4
32 .Os
33 .Sh NAME
34 .Nm splash
35 .Nd splash screen / screen saver interface
36 .Sh SYNOPSIS
37 .Cd "pseudo-device splash"
38 .Sh DESCRIPTION
39 The
40 .Nm
41 pseudo device driver adds support for the splash screen and screen
42 savers to the kernel.
43 This driver is required if the splash bitmap image is to be loaded or
44 any screen saver is to be used.
45 .Ss Splash screen
46 You can load and display an arbitrary bitmap image file as a welcome banner
47 on the screen when the system is about to start.
48 This image will remain on the screen
49 during kernel initialization process
50 until the login prompt appears on the screen
51 or until a screen saver is loaded and initialized.
52 The image will also disappear if you hit any key,
53 although this may not work immediately
54 if the kernel is still probing devices.
55 .Pp
56 If you specify the
57 .Fl c
58 or
59 .Fl v
60 boot option when loading the kernel, the splash image will not appear.
61 However, it
62 is still loaded and can be used as a screen saver later: see below.
63 .Pp
64 In order to display the bitmap, the bitmap file itself and the
65 matching splash image decoder module must be loaded by the boot loader.
66 Currently the following decoder modules are available:
67 .Pp
68 .Bl -tag -width splash_decoder -compact
69 .It Pa splash_bmp.ko
70 W*ndows BMP file decoder.
71 While the BMP file format allows images of various color depths, this
72 decoder currently only handles 256 color bitmaps.
73 Bitmaps of other color depths will not be displayed.
74 .It Pa splash_pcx.ko
75 ZSoft PCX decoder.
76 This decoder currently only supports version 5 8-bpp single-plane
77 images.
78 .El
79 .Pp
80 The
81 .Sx EXAMPLES
82 section illustrates how to set up the splash screen.
83 .Pp
84 If the standard VGA video mode is used,
85 the size of the bitmap must be 320x200 or less.
86 If you enable the VESA mode support in the kernel,
87 either by statically linking the VESA module or by loading the VESA module
88 (see
89 .Xr vga 4 ) ,
90 you can load bitmaps up to a resolution of 1024x768, depending on the VESA
91 BIOS and the amount of video memory on the video card.
92 .Ss Screen saver
93 The screen saver will activate when the system is considered idle: i.e.\&
94 when the user has not typed a key or moved the mouse for a specified period
95 of time.
96 As the screen saver is an optional module,
97 it must be explicitly loaded into memory.
98 Currently the following screen saver modules are available:
99 .Pp
100 .Bl -tag -width splash_module.ko -compact
101 .It Pa blank_saver.ko
102 This screen saver simply blanks the screen.
103 .It Pa daemon_saver.ko
104 Animated
105 .Bx
106 Daemon screen saver.
107 .It Pa fade_saver.ko
108 The screen will gradually fade away.
109 .It Pa green_saver.ko
110 If the monitor supports power saving mode, it will be turned off.
111 .It Pa logo_saver.ko
112 Animated graphical
113 .Bx
114 Daemon.
115 .It Pa rain_saver.ko
116 Draws a shower on the screen.
117 .It Pa snake_saver.ko
118 Draws a snake of string.
119 .It Pa star_saver.ko
120 Twinkling stars.
121 .It Pa warp_saver.ko
122 Streaking stars.
123 .El
124 .Pp
125 Screen saver modules can be loaded using
126 .Xr kldload 8 :
127 .Pp
128 .Dl kldload logo_saver
129 .Pp
130 The timeout value in seconds can be specified as follows:
131 .Pp
132 .Dl vidcontrol -t N
133 .Pp
134 Alternatively, you can set the
135 .Ar saver
136 variable in the
137 .Pa /etc/rc.conf
138 to the screen saver of your choice and
139 the timeout value to the
140 .Ar blanktime
141 variable so that the screen saver is automatically loaded
142 and the timeout value is set when the system starts.
143 .Pp
144 The screen saver may be instantly activated by hitting the
145 .Ar saver
146 key: the defaults are
147 .Em Shift-Pause
148 on the AT enhanced keyboard and
149 .Em Shift-Ctrl-NumLock/Pause
150 on the AT 84 keyboard.
151 You can change the
152 .Ar saver
153 key by modifying the keymap
154 (see
155 .Xr kbdcontrol 1 ,
156 .Xr keymap 5 ) ,
157 and assign the
158 .Ar saver
159 function to a key of your preference.
160 .Pp
161 The screen saver will not run if the screen is not in text mode.
162 .Ss Splash screen as a screen saver
163 If you load a splash image but do not load a screen saver,
164 you can continue using the splash module as a screen saver.
165 The screen blanking interval can be specified as described in the
166 .Sx Screen saver
167 section above.
168 .\".Sh DRIVER CONFIGURATION
169 .Sh FILES
170 .Bl -tag -width /boot/defaults/loader.conf -compact
171 .It Pa /boot/defaults/loader.conf
172 boot loader configuration defaults
173 .It Pa /etc/rc.conf
174 system configuration information
175 .It Pa /modules/splash_*.ko
176 splash image decoder modules
177 .It Pa /modules/*_saver.ko
178 screen saver modules
179 .It Pa /modules/vesa.ko
180 the VESA support module
181 .El
182 .Sh EXAMPLES
183 In order to load the splash screen or the screen saver, you must
184 have the following line in the kernel configuration file.
185 .Pp
186 .Dl pseudo-device splash
187 .Pp
188 Next, edit
189 .Pa /boot/loader.conf
190 (see
191 .Xr loader.conf 5 )
192 and include the following lines:
193 .Bd -literal -offset indent
194 splash_bmp_load="YES"
195 bitmap_load="YES"
196 bitmap_name="chuck.bmp"
197 .Ed
198 .Pp
199 In the above example, the file
200 .Pa chuck.bmp
201 is loaded.
202 In the following example, the VESA module
203 is loaded so that a bitmap file which cannot be displayed in standard
204 VGA modes may be shown using one of the VESA video modes.
205 .Bd -literal -offset indent
206 splash_pcx_load="YES"
207 vesa_load="YES"
208 bitmap_load="YES"
209 bitmap_name="chuck.pcx"
210 .Ed
211 .Pp
212 If the VESA support is statically linked to the kernel, it is not
213 necessary to load the VESA module.
214 Just load the bitmap file and the splash decoder module as in the
215 first example above.
216 .\".Sh DIAGNOSTICS
217 .Sh BUGS
218 If you load a screen saver while another screen saver has already
219 been loaded, the first screen saver will not be automatically unloaded
220 and will remain in memory, wasting kernel memory space.
221 .Sh SEE ALSO
222 .Xr vidcontrol 1 ,
223 .Xr syscons 4 ,
224 .Xr vga 4 ,
225 .Xr loader.conf 5 ,
226 .Xr rc.conf 5 ,
227 .Xr kldload 8 ,
228 .Xr kldunload 8
229 .Sh HISTORY
230 The
231 .Nm
232 driver first appeared in
233 .Fx 3.1 .
234 .Sh AUTHORS
235 .An -nosplit
236 The
237 .Nm
238 driver and this manual page were written by
239 .An Kazutaka Yokota Aq yokota@FreeBSD.org .
240 The
241 .Pa splash_bmp
242 module was written by
243 .An Michael Smith Aq msmith@FreeBSD.org
244 and
245 .An Kazutaka Yokota .
246 The
247 .Pa splash_pcx
248 module was written by
249 .An Dag-Erling Sm\(/orgrav Aq des@FreeBSD.org
250 based on the
251 .Pa splash_bmp
252 code.