mboot.c32:load ELF segments from the segment header
[syslinux.git] / README.menu
blob27ae0de2ecab8fd515cf56234fccb99018294238
1 $Id$
3 There are two menu systems included with SYSLINUX, the advanced menu
4 system, and the simple menu system.
7 +++ THE ADVANCED MENU SYSTEM +++
9 The advanced menu system, written by Murali Krishnan Ganapathy, is
10 located in the menu/ subdirectly.  It allows the user to create
11 hierarchial submenus, dynamic options, checkboxes, and just about
12 anything you want.  It requires that the menu is compiled from a
13 simple C file, see menu/simple.c and menu/complex.c for examples.
15 The advanced menu system doesn't support serial console at this time.
17 See menu/README for more information.
20 +++ THE SIMPLE MENU SYSTEM +++
22 The simple menu system is a single module located at
23 com32/modules/menu.c32.  It uses the same configuration file as the
24 regular SYSLINUX command line, and displays all the LABEL statements.
26 To use the menu system, simply make sure menu.c32 is in the
27 appropriate location for your boot medium (the same directory as the
28 configuration file for SYSLINUX, EXTLINUX and ISOLINUX, and the same
29 directory as pxelinux.0 for PXELINUX), and put the following options
30 in your configuration file:
32 DEFAULT menu.c32
33 PROMPT 0
36 There are a few menu additions to the command line, all starting with
37 the keyword MENU; like the rest of the SYSLINUX config file
38 language, it is case insensitive:
40 MENU TITLE title
42         Give the menu a title.  The title is presented at the top of
43         the menu.
45 MENU LABEL label
47         (Only valid after a LABEL statement.)
48         Changes the label displayed for a specific entry.  This allows
49         you to have a label that isn't suitable for the command line,
50         for example:
52         # Soft Cap Linux
53         LABEL softcap
54                 MENU LABEL Soft Cap ^Linux 9.6.36
55                 KERNEL softcap-9.6.36.bzi
56                 APPEND whatever
58         # A very dense operating system
59         LABEL brick
60                 MENU LABEL ^Windows CE/ME/NT
61                 KERNEL chain.c32
62                 APPEND hd0 2
64         The ^ symbol in a MENU LABEL statement defines a hotkey.
65         The hotkey will be highlighted in the menu and will move the
66         menu cursor immediately to that entry.
68         Reusing hotkeys is disallowed, subsequent entries will not be
69         highlighted, and will not work.
71         Keep in mind that the LABELs, not MENU LABELs, must be unique,
72         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 MENU PASSWD passwd
89         (Only valid after a LABEL statement.)
90         Sets a password on this menu entry.  "passwd" can be either a
91         cleartext password or a SHA-1 encrypted password; use the
92         included Perl script "sha1pass" to encrypt passwords.
93         (Obviously, if you don't encrypt your passwords they will not
94         be very secure at all.)
96         If you are using passwords, you want to make sure you also use
97         the settings "NOESCAPE 1", "PROMPT 0", and either set
98         "ALLOWOPTIONS 0" or use a master password (see below.)
100         If passwd is an empty string, this menu entry can only be
101         unlocked with the master password.
104 MENU MASTER PASSWD passwd
106         Sets a master password.  This password can be used to boot any
107         menu entry, and is required for the [Tab] and [Esc] keys to
108         work.
111 MENU WIDTH 80
112 MENU MARGIN 10
113 MENU PASSWORDMARGIN 3
114 MENU ROWS 12
115 MENU TABMSGROW 18
116 MENU CMDLINEROW 18
117 MENU ENDROW 24
118 MENU PASSWORDROW 11
119 MENU TIMEOUTROW 20
121         These options control the layout of the menu on the screen.
122         The values above are the defaults.
125 The menu system honours the TIMEOUT command; if TIMEOUT is specified
126 it will execute the ONTIMEOUT command if one exists, otherwise it will
127 pick the default menu option.
129 Normally, the user can press [Tab] to edit the menu entry, and [Esc]
130 to return to the SYSLINUX command line.  However, if the configuration
131 file specifies ALLOWOPTIONS 0, these keys will be disabled, and if
132 MENU MASTER PASSWD is set, they require the master password.
134 The simple menu system supports serial console, using the normal
135 SERIAL directive.  However, it can be quite slow over a slow serial
136 link; you probably want to set your baudrate to 38400 or higher if
137 possible.  It requires a Linux/VT220/ANSI-compatible terminal on the
138 other end.
140 It is also possible to load a secondary configuration file, to get to
141 another menu.  To do that, invoke menu.c32 with the name of the
142 secondary configuration file.
144 LABEL othermenu
145         MENU LABEL Another Menu
146         KERNEL menu.c32
147         APPEND othermenu.conf