]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - etc/rc.syscons
This commit was generated by cvs2svn to compensate for changes in r98567,
[FreeBSD/FreeBSD.git] / etc / rc.syscons
1 #!/bin/sh -
2 #
3 # Copyright (c) 2000  The FreeBSD Project
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.
11 # 2. Redistributions in binary form must reproduce the above copyright
12 #    notice, this list of conditions and the following disclaimer in the
13 #    documentation and/or other materials provided with the distribution.
14 #
15 # THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
16 # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18 # ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
19 # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21 # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22 # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 # SUCH DAMAGE.
26 #
27 # $FreeBSD$
28 #       Do syscons configuration
29 #
30
31 # stdin must be redirected because it might be for a serial console
32 #
33 kbddev=/dev/ttyv0
34 viddev=/dev/ttyv0
35
36 # Handle diskless boots, and other situations where syscons is not present
37 #
38 if [ ! -c "${kbddev}" ]; then
39         exit 0
40 fi
41
42 echo -n 'Configuring syscons:'
43
44 # keymap
45 #
46 case ${keymap} in
47 [Nn][Oo] | '')
48         ;;
49 *)
50         echo -n ' keymap';      kbdcontrol < ${kbddev} -l ${keymap}
51         ;;
52 esac
53
54 # keyrate
55 #
56 case ${keyrate} in
57 [Nn][Oo] | '')
58         ;;
59 *)
60         echo -n ' keyrate';     kbdcontrol < ${kbddev} -r ${keyrate}
61         ;;
62 esac
63
64 # keybell
65 #
66 case ${keybell} in
67 [Nn][Oo] | '')
68         ;;
69 *)
70         echo -n ' keybell';     kbdcontrol < ${kbddev} -b ${keybell}
71         ;;
72 esac
73
74 # change function keys
75 #
76 case ${keychange} in
77 [Nn][Oo] | '')
78         ;;
79 *)
80         echo -n ' keychange'
81         set - ${keychange}
82         while [ $# -gt 0 ]; do
83                 kbdcontrol <${kbddev} -f "$1" "$2"
84                 shift; shift
85         done
86         ;;
87 esac
88
89 # cursor type
90 #
91 case ${cursor} in
92 [Nn][Oo] | '')
93         ;;
94 *)
95         echo -n ' cursor';      vidcontrol < ${viddev} -c ${cursor}
96         ;;
97 esac
98
99 # screen mapping
100 #
101 case ${scrnmap} in
102 [Nn][Oo] | '')
103         ;;
104 *)
105         echo -n ' scrnmap';     vidcontrol < ${viddev} -l ${scrnmap}
106         ;;
107 esac
108
109 # font 8x16
110 #
111 case ${font8x16} in
112 [Nn][Oo] | '')
113         ;;
114 *)
115         echo -n ' font8x16';    vidcontrol < ${viddev} -f 8x16 ${font8x16}
116         ;;
117 esac
118
119 # font 8x14
120 #
121 case ${font8x14} in
122 [Nn][Oo] | '')
123         ;;
124 *)
125         echo -n ' font8x14';    vidcontrol < ${viddev} -f 8x14 ${font8x14}
126         ;;
127 esac
128
129 # font 8x8
130 #
131 case ${font8x8} in
132 [Nn][Oo] | '')
133         ;;
134 *)
135         echo -n ' font8x8';     vidcontrol < ${viddev} -f 8x8 ${font8x8}
136         ;;
137 esac
138
139 # blank time
140 #
141 case ${blanktime} in
142 [Nn][Oo] | '')
143         ;;
144 *)
145         echo -n ' blanktime';   vidcontrol < ${viddev} -t ${blanktime}
146         ;;
147 esac
148
149 # screen saver
150 #
151 case ${saver} in
152 [Nn][Oo] | '')
153         ;;
154 *)
155         echo -n ' screensaver'
156         for i in `kldstat | awk '$5 ~ "^splash_.*$" { print $5 }'`; do
157                 kldunload ${i}
158         done
159         kldstat -v | grep -q _saver || kldload ${saver}_saver
160         ;;
161 esac
162
163 # mouse daemon
164 #
165 case ${moused_enable} in
166 [Yy][Ee][Ss])
167         echo -n ' moused'
168         moused ${moused_flags} -p ${moused_port} -t ${moused_type}
169         case ${mousechar_start} in
170         [Nn][Oo] | '')
171                 ;;
172         *)
173                 echo -n ' mousechar_start';  vidcontrol < ${viddev} -M ${mousechar_start}
174                 ;;
175         esac
176         vidcontrol < ${viddev} -m on
177         ;;
178 esac
179
180 # set this mode for all virtual screens
181 #
182 if [ -n "${allscreens_flags}" ]; then
183         echo -n ' allscreens'
184         for ttyv in /dev/ttyv*; do
185                 vidcontrol ${allscreens_flags} < ${ttyv} > ${ttyv} 2>&1
186         done
187 fi
188
189 # set this keyboard mode for all virtual terminals
190 #
191 if [ -n "${allscreens_kbdflags}" ]; then
192         echo -n ' allscreens_kbd'
193         for ttyv in /dev/ttyv*; do
194                 kbdcontrol ${allscreens_kbdflags} < ${ttyv} > ${ttyv} 2>&1
195         done
196 fi
197
198 echo '.'