Ethersel must use the pci com32 module instead of builtin pci detection code
[syslinux.git] / README.menu
blob18e93c6e9d5fb0040b1639e58b8da127f89bf71a
1 There are two menu systems included with SYSLINUX, the advanced menu
2 system, and the simple menu system.
5 +++ THE ADVANCED MENU SYSTEM +++
7 The advanced menu system, written by Murali Krishnan Ganapathy, is
8 located in the menu/ subdirectly.  It allows the user to create
9 hierarchial submenus, dynamic options, checkboxes, and just about
10 anything you want.  It requires that the menu is compiled from a
11 simple C file, see menu/simple.c and menu/complex.c for examples.
13 The advanced menu system doesn't support serial console at this time.
15 See menu/README for more information.
18 +++ THE SIMPLE MENU SYSTEM +++
20 The simple menu system is a single module located at
21 com32/modules/vesamenu.c32 (graphical) or com32/modules/menu.c32 (text
22 mode only).  It uses the same configuration file as the regular
23 SYSLINUX command line, and displays all the LABEL statements.
25 To use the menu system, simply make sure [vesa]menu.c32 is in the
26 appropriate location for your boot medium (the same directory as the
27 configuration file for SYSLINUX, EXTLINUX and ISOLINUX, and the same
28 directory as pxelinux.0 for PXELINUX), and put the following options
29 in your configuration file:
31 DEFAULT menu.c32
32 PROMPT 0
35 There are a few menu additions to the command line, all starting with
36 the keywords MENU or TEXT; like the rest of the SYSLINUX config file
37 language, it is case insensitive:
39 MENU TITLE title
41         Give the menu a title.  The title is presented at the top of
42         the menu.
44 MENU LABEL label
46         (Only valid after a LABEL statement.)
47         Changes the label displayed for a specific entry.  This allows
48         you to have a label that isn't suitable for the command line,
49         for example:
51         # Soft Cap Linux
52         LABEL softcap
53                 MENU LABEL Soft Cap ^Linux 9.6.36
54                 KERNEL softcap-9.6.36.bzi
55                 APPEND whatever
57         # A very dense operating system
58         LABEL brick
59                 MENU LABEL ^Windows CE/ME/NT
60                 KERNEL chain.c32
61                 APPEND hd0 2
63         The ^ symbol in a MENU LABEL statement defines a hotkey.
64         The hotkey will be highlighted in the menu and will move the
65         menu cursor immediately to that entry.
67         Reusing hotkeys is disallowed, subsequent entries will not be
68         highlighted, and will not work.
70         Keep in mind that the LABELs, not MENU LABELs, must be unique,
71         or odd things will happen to the command-line.
74 MENU HIDE
76         (Only valid after a LABEL statement.)
77         Suppresses a particular LABEL entry from the menu.
80 MENU DEFAULT
82         (Only valid after a LABEL statement.)
83         Indicates that this entry should be the default.  If no
84         default is specified, use the first one.
87 TEXT HELP
88 Help text ...
89 ... which can span multiple lines
90 ENDTEXT
92         (Only valid after a LABEL statement.)
93         Specifies a help text that should be displayed when a particular
94         selection is highlighted.
97 MENU PASSWD passwd
99         (Only valid after a LABEL statement.)
100         Sets a password on this menu entry.  "passwd" can be either a
101         cleartext password or a SHA-1 encrypted password; use the
102         included Perl script "sha1pass" to encrypt passwords.
103         (Obviously, if you don't encrypt your passwords they will not
104         be very secure at all.)
106         If you are using passwords, you want to make sure you also use
107         the settings "NOESCAPE 1", "PROMPT 0", and either set
108         "ALLOWOPTIONS 0" or use a master password (see below.)
110         If passwd is an empty string, this menu entry can only be
111         unlocked with the master password.
114 MENU MASTER PASSWD passwd
116         Sets a master password.  This password can be used to boot any
117         menu entry, and is required for the [Tab] and [Esc] keys to
118         work.
121 MENU BACKGROUND filename
123         For vesamenu.c32, sets the background image.  The image should
124         be 640x480 pixels and either in PNG or JPEG format.
127 MENU INCLUDE filename
129         Include the contents of the configuration file filename at
130         this point.  Keep in mind that the included data is only seen
131         by the menu system; the core syslinux code does not parse this
132         command, so any labels defined in it are unavailable.
135 MENU AUTOBOOT message
137         Replaces the message "Automatic boot in # seconds".  The
138         symbol # is replaced with the number of seconds remaining.
141 MENU TABMSG message
143         Replaces the message "Press [Tab] to edit options".
146 MENU NOTABMSG message
148         Takes the place of the TABMSG message if option editing is
149         disabled.  Defaults to blank.
152 MENU PASSPROMPT message
154         Replaces the message "Password required".
157 MENU COLOR element ansi foreground background shadow
159         Sets the color of element "element" to the specified color
160         sequence:
162         screen          Rest of the screen
163         border          Border area
164         title           Title bar
165         unsel           Unselected menu item
166         hotkey          Unselected hotkey
167         sel             Selection bar
168         hotsel          Selected hotkey
169         scrollbar       Scroll bar
170         tabmsg          Press [Tab] message
171         cmdmark         Command line marker
172         cmdline         Command line
173         pwdborder       Password box border
174         pwdheader       Password box header
175         pwdentry        Password box contents
176         timeout_msg     Timeout message
177         timeout         Timeout counter
178         help            Help text
181         "ansi" is a sequence of semicolon-separated ECMA-48 Set
182         Graphics Rendition (<ESC>[m) sequences:
184         0     reset all attributes to their defaults
185         1     set bold
186         4     set underscore (simulated with color on a color display)
187         5     set blink
188         7     set reverse video
189         22    set normal intensity
190         24    underline off
191         25    blink off
192         27    reverse video off
193         30    set black foreground
194         31    set red foreground
195         32    set green foreground
196         33    set brown foreground
197         34    set blue foreground
198         35    set magenta foreground
199         36    set cyan foreground
200         37    set white foreground
201         38    set underscore on, set default foreground color
202         39    set underscore off, set default foreground color
203         40    set black background
204         41    set red background
205         42    set green background
206         43    set brown background
207         44    set blue background
208         45    set magenta background
209         46    set cyan background
210         47    set white background
211         49    set default background color
213         These are used (a) in text mode, and (b) on the serial
214         console.
217         "foreground" and "background" are color codes in #AARRGGBB
218         notation, where AA RR GG BB are hexadecimal digits for alpha
219         (opacity), red, green and blue, respectively.  #00000000
220         represents fully transparent, and #ffffffff represents opaque
221         white.
224         "shadow" controls the handling of the graphical console text
225         shadow.  Permitted values are "none" (no shadowing), "std" or
226         "standard" (standard shadowing - foreground pixels are
227         raised), "all" (both background and foreground raised), and
228         "rev" or "reverse" (background pixels are raised.)
231         If any field is set to "*" or omitted (at the end of the line)
232         then that field is left unchanged.
235         The current defaults are:
237         menu color screen       37;40      #80ffffff #00000000 std
238         menu color border       30;44      #40000000 #00000000 std
239         menu color title        1;36;44    #c00090f0 #00000000 std
240         menu color unsel        37;44      #90ffffff #00000000 std
241         menu color hotkey       1;37;44    #ffffffff #00000000 std
242         menu color sel          7;37;40    #e0000000 #20ff8000 all
243         menu color hotsel       1;7;37;40  #e0400000 #20ff8000 all
244         menu color scrollbar    30;44      #40000000 #00000000 std
245         menu color tabmsg       31;40      #90ffff00 #00000000 std
246         menu color cmdmark      1;36;40    #c000ffff #00000000 std
247         menu color cmdline      37;40      #c0ffffff #00000000 std
248         menu color pwdborder    30;47      #80ffffff #20ffffff std
249         menu color pwdheader    31;47      #80ff8080 #20ffffff std
250         menu color pwdentry     30;47      #80ffffff #20ffffff std
251         menu color timeout_msg  37;40      #80ffffff #00000000 std
252         menu color timeout      1;37;40    #c0ffffff #00000000 std
253         menu color help         37;40      #c0ffffff #00000000 std
256 MENU WIDTH 80
257 MENU MARGIN 10
258 MENU PASSWORDMARGIN 3
259 MENU ROWS 12
260 MENU TABMSGROW 18
261 MENU CMDLINEROW 18
262 MENU ENDROW -1
263 MENU PASSWORDROW 11
264 MENU TIMEOUTROW 20
265 MENU HELPMSGROW 22
266 MENU HELPMSGENDROW -1
268         These options control the layout of the menu on the screen.
269         The values above are the defaults.
271         A negative value is relative to the calculated length of the
272         screen (25 for text mode, 28 for VESA graphics mode.)
275 The menu system honours the TIMEOUT command; if TIMEOUT is specified
276 it will execute the ONTIMEOUT command if one exists, otherwise it will
277 pick the default menu option.
279 Normally, the user can press [Tab] to edit the menu entry, and [Esc]
280 to return to the SYSLINUX command line.  However, if the configuration
281 file specifies ALLOWOPTIONS 0, these keys will be disabled, and if
282 MENU MASTER PASSWD is set, they require the master password.
284 The simple menu system supports serial console, using the normal
285 SERIAL directive.  However, it can be quite slow over a slow serial
286 link; you probably want to set your baudrate to 38400 or higher if
287 possible.  It requires a Linux/VT220/ANSI-compatible terminal on the
288 other end.
291         +++ USING AN ALTERNATE CONFIGURATION FILE +++
294 It is also possible to load a secondary configuration file, to get to
295 another menu.  To do that, invoke menu.c32 with the name of the
296 secondary configuration file.
298 LABEL othermenu
299         MENU LABEL Another Menu
300         KERNEL menu.c32
301         APPEND othermenu.conf
303 If you specify more than one file, they will all be read, in the order
304 specified.  The dummy filename ~ (tilde) is replaced with the filename
305 of the main configuration file.
307 # The file graphics.conf contains common color and layout commands for
308 # all menus.
309 LABEL othermenu
310         MENU LABEL Another Menu
311         KERNEL vesamenu.c32
312         APPEND graphics.conf othermenu.conf
314 # Return to the main menu
315 LABEL mainmenu
316         MENU LABEL Return to Main Menu
317         KERNEL vesamenu.c32
318         APPEND graphics.conf ~
320 See also the MENU INCLUDE directive above.