Add a new Sub-Menu folder
E2B SUBMENU Maker.cmd
An easy way to add a new Main Menu entry for a new folder, is to use the \_ISO\E2B SUBMENU Maker.cmd file - just run this or drag-and-drop your new \_ISO\MSDART folder onto it, to make a Main menu entry for it.
You can edit the new file using NotePad afterwards (save as UTF-8 to preserve any special characters if using a non-English language).
Watch the YouTube video above or read the Blog for more details.
Note: If the new menu folder is completely empty, then there will be no menu entry for it in the Main menu - you must copy an ISO or .mnu file, etc. into the new sub-folder before the menu entry will be displayed.
ADMIN Menus (secret and password protected menu folders)
You can edit the .mnu file so that the sub-menu entry is only displayed under certain conditions.
For instance, if the SCROLL LOCK LED is on, then an ADMIN Menu entry will be displayed in the Main Menu.
1. Use the E2B SUBMENU Maker to make a \_ISO\ADMIN folder and a ZZSubMenu$ADMIN.mnu file as detailed above.
2. Edit the iftitle line in the new \_ISO\MAINMENU\xxxx .mnu file as shown below (the extra text to add is shown in red):
#Check 0x40 for CAPS LOCK on - use 0x20 for NUM-LOCK or 0x10 for SCROLL-LOCK, 0x08 for ALT, 0x04 for CTRL
iftitle [calc *0x417 & 0x10 > nul && ls (bd)/_ISO/ADMIN/ > (md)0x9F00+1 && checkrange 1:-1 read 0x13E0000 > nul] ^Alt+A ADMIN Menu [Alt+A]\nThis menu is only visible in Admin mode.
set HDG=Admin Menu
This example will only display the Admin menu entry in the Main Menu when SCROLL-LOCK is on.
Whenever the Main Menu is loaded, the status of the keyboard will be checked.
You can change the 0x10 number to test for CAPS LOCK or NUM LOCK or the ALT or CTRL keys being held down. Note that some systems will turn on NUM LOCK when they boot.
0x02 for L-SHIFT, 0x01 for R-SHIFT can also be used, but you must not hold down the SHIFT key until just before the Main Menu starts to load, otherwise the grub4dos USB 2 driver will be loaded because E2B checks for the SHIFT keys at an early stage.
If using CTRL or ALT or SHIFT, you must press F8 first and then hold down the special key just before the Main Menu is loaded.
You can create more sub-menus in the same way if you wish, so that many extra menus will be visible in the MAIN MENU when the secret key is activated.
You can request a password before a sub-menu will be loaded by adding the line:
password fred || configfile (md)0xA000+0xA0
just below the iftitle line.
Change 'fred' to your own password or use %pwd% to use the E2B menu password.
Manually add a new sub-menu
IMPORTANT: Ensure that the 'set MFOLDER=.....' line does not end with a SPACE character as this may cause problems (e.g. loading wallpaper files, etc.)
Ensure you save it as UTF-8 encoded if you use non-ASCII characters (use NotePad- File - Save As...).
Add new 'AUTO' Payload folders
The folders do not have to be below /_ISO, but this example uses \_ISO\LinuxISO\Ubuntu and \_ISO\LinuxISO\Fedora to hold Ubuntu and Fedora payload files...
Enumerate only one folder
Add a sub-sub-me nu folder
The \_ISO\UTILITIES_MEMTEST folder is actually a sub-sub-menu folder for the Memory Test menu which can only be reached via the Utilities menu.
The \_ISO\UTILITIES\Utilities_MemTest.mnu file is used to add a menu item in the Utilities Menu which will take you to the UTILITIES_MEMTEST menu.
In the UTILITIES_MEMTEST folder there is a ZZBackTo_Utils.mnu file which will take you back to the Utilities Menu from the Memory Test menu.
If you want your own sub-sub-menu, then you will need to create two similar files...
Example for Linux - Ubuntu sub-sub-menu
You want a new UBUNTU sub-sub-menu in the Linux Menu for Ubuntu ISOs
1. Use the \_ISO\docs\E2B Utilities\E2B SUBMENU Maker.cmd to create a LINUX_UBUNTU folder
Yoy can specify a hotkey (e.g. Ctrl+U) if you wish.
2. Move the file created in the \_ISO\MAINMENU folder (ZZSubMenu$LINUX_UBUNTU.mnu) to the \_ISO\LINUX folder
3. Copy your Ubuntu ISO files into the new, empty \_ISO\LINUX_UBUNTU folder
4. You can now test your menu, but you can only go back to the Main menu using F8.
To return to the LINUX menu from the LINUX_UBUNTU menu, add a new \_ISO\LINUX_UBUNTU\ZZReturn.mnu file:
title Return to Linux Menu\n Go back to the previous menu
set HDG=Linux Menu
#HDG will be the heading for the menu
You can define a hotkey too, by using a different title line, e.g.
title ^Ctrl+F9 Return to Linux Menu [Ctrl+F9]\n Go back to the previous menu
*Ctrl+F9 should now be used because Ctrl+F8 will now reload E2B in later versions!
To change the order of the menu entries, start the .mnu file name with either $ or ZZZZ as files are sorted alphabetically (the actual name of .mnu files does not matter).
You can edit the new .mnu files if you wish to change them (if you edit existing E2B .mnu files, they will be overwritten when you next update E2B!).
Multiple 'nested' menus