
MBM - Multiple Boot Manager R0.38

                                                            November 5, 2002


WHAT IS THE MBM


  The MBM is a boot up control program that can select and boot up any OS
  with a boot menu. Such kind of programs are called "Boot Manager".
  MBM is a typical boot manager that is free distributed. The following is
  its features.


  FEATURES
  

  - Boot manager: MBM supports drives of over 8GB. And MBM can boot any OS
    placed in the second drive or later.

  - MBM does not require any partition for the boot manager.

  - Multiple drive supprt: MBM supports up to four physical drives. Each
    drives have to being recoginized by BIOS as fixed disk.

  - Partition editor: MBM can edit partition table with built-in partition
    editor. It will support multiple OS installation, create some primaly
    DOS partitions into a drive and can manipulate partition table to mask
    any partition to avoid an error of the installer.

  - Optional graphical boot menu: It can be created with a menu builder.


  -------------------------------- WARNING ---------------------------------

     THE BUILT-IN PARTITION TABLE EDITOR EDITS ONLY THE PARTITION TABLE.
  ANY FILE SYSTEM ON THE CORRESPONDING PARTITIONS ARE NOT MODIFIED. 
  IF YOU CANNOT UNDERSTAND WHAT IS THE EXPLANATION MEANS, NEVER USE THE
  PARTITION TABLE EDITOR, AND I DON'T RECOMMEND TO USE MBM TO YOU.

  --------------------------------------------------------------------------



  OPERATING ENVIRONMENT
  

  MBM operats on the IBM AT compatible machines with one or more hard disks.

  On the compatibility list such as which is the OS can be booted and the
  limitations on each OS, please refer to TIPS.TXT.

    MBM.COM is a DOS based application so that it requires true DOS
  envilonment such as MS-DOS or PC DOS. If your OS is Windows9x, please
  use MS-DOS mode. A diskette image version of the MBM is also available
  in the <img> directory. It can install boot manager without DOS
  envilonment. The diskette image can also work as a boot manager, this
  is suitable for evaluation or temporary use.





USING MBM: COMMAND LINE PARAMETERS


  Please store the MBM.COM into a boot diekette for repartitioning, formatting
  or any operation to install some OSs. All command line functions must be
  executed on the true DOS environment.


  mbm <command>[Enter]


  <command>   Description
    
  EDIT        Partition table editor. It can edit the partition table on
              each drive. For more information, please refer to partition
              table editor written below.

    
  INSTALL     Install boot manager into the first drive (0x80). The boot
              manager will be activated from next boot.
  INSTALL_H   Same as INSTALL and store program code to end of the track.

    
  SETMENU     Install extend graphical menu.
  CLRMENU     Uninstall extend graphical menu.


  Note: Generally, boot manager cannot be uninstalled because the boot manager
  over-writes previous boot loader at install. If the boot manager is erased,
  the PC will get no boot code and unable to boot. Installing generic boot
  loader for each OS will over-write the boot manager and recover no boot
  manager envilonment. To install generic boot loader, apply "fdisk /mbr" for
  DOS and Windows9X/Me, "fixmbr" for Windows NT/2k/Xp.





USING MBM: PARTITION TABLE EDITOR


  When execute MBM with an EDIT command, built-in pattition table editor
  will start and will be able to edit partition table on the each drive.
  MBM can create up to four paritions on a physical drive due to the
  format specification of the partition table.
  MBM cannot edit the partition table in the extend partition. When you
  like to edit them, please edit it with fdisk or any other partitioning
  tools instead.


  EDIT PARTITION TABLE
  

  Example of editor screen:
  ͻ
   MBM R0.37                Start End   Size   Drive: 0 1 2      
   Partition Table Editor   Cyl.  Cyl.         LBA: Enabled      
  Ĵ  
  10C:DOS FAT32X           15000 29999  115GB Sectors:      63  
  207:HPFS/NTFS              259 14999  113GB Heads:       255  
  306:DOS FAT16(32M-2G)        1   258 2024GB Cylinders: 97261  
  40F:DOS (ExtendX)        30000 97260  515GB Capacity:   745GB 
                                               
                                              Used:       745GB 
                                              Free:         8MB 
  ͼ

  The inverted cell is a item to be changed. The kind of partitions, start
  cylinder number and end cylinder number can be changed. When change system
  ID or cylinder number to allocate cylinders to each partition, move inverted
  cursor with arrow keys and enter a value with numeric keys or increase/
  decrease the value with PgUp/PgDn keys.

  If any allocations are conflicted, appear a red warning message and changes
  cannot be written into the hard disk. So you must allocate cylinders
  without any conflict.

  Above example shows editing a 745GB hard disk, allocate any continuous part
  of 97261 cylinders (0-97260) to the four partitions. You have to only
  allocate them as each partition is not conflicting. The first partition has
  middle part of the drive. The second partition has middle top of the drive.
  The third partition has middle part of the drive. The fourth partition has
  end part of the drive. And the ramained cylinder number 0 is free, it can
  be used for extend menu.

  When create a new partition, move cursor on the partition name cell you wish
  to create, and then enter non-zero value. When delete a partition, change its
  value to zero.

  There are any rules and limitations on the each OS such as which partition
  type must be used, how size can be allocated and others. For more
  information, please refer to TIPS.TXT.



  [F8] WRITE CHANGES
  
  When you determined partition allocations, write the changes into the
  partition table with F8 key. And reset computer, boot from FDD or any
  other bootable partition, format new logical drives that recoginized anew
  and then install any OS.



  [SP] ACTIVATE/DEACTIVATE PARTITION
  
  Partition number is intensified when its partition is activated. This state
  can be changed with a space key. But this setting is not effective for boot
  sequense when use any boot manager. Because the boot manager is activating
  target partition at every boot.



  [F5] UNFORMAT PARTITION
  
  When make clean changed or created partition, unformat that partition
  with Del key on its partition name. The partition that changed only end
  cylinder and start cylinder has not been changed, especialy needs this
  operation because it may unable to format correctly due to an old boot
  recode affects format program.

  This function erases a first track in the partition so that when erase
  any other partition due to mistake, all data on the partition will be
  lost. Make sure that the correspondence between a partition and a logical
  drive number befor apply unformat.

  Unformatting an extend partition means deleting all logical partitions in
  the extend partition.

  The partition editor cannot change the location or the size of a partition
  without destroying its data. Changed partition must be re-formatted.



  [F9] INSTALL BOOT MANAGER
  
  Type F9 key installs the boot manager into the current drive except first
  drive. When boot manager was installed with this function, the menu items
  will get blank. They can also be initialized at boot menu with F9 key.



  [Enter] EDIT LOGICAL PARTITION CHAIN IN THE EXTEND PARTITION
  
  Extend partition is shown with cyan character, it means the partition is
  an extend partition. Any logical partition can be created in to the extend
  partition. Type [Enter] on the partition name enters the extend partition.
  Cylinder allocation rule is same as primary partition table, but additional
  rules are also applied to logical partition chain. Follows are the rules:

  - Each logical partition must be inside the extend partition.
  - Logical partition cannot have system ID of extend partitions.
  - Chain order and physical allocation order may or may not be euqal, but
    second item (item number six) and follows cannot occupy first cylinder.




  [Ins]/[Del] INSERT/DELETE LOGICAL PARTITION
  
  According to partitioning rule, number of logical partitions in an extend
  partition is not limited. However, the partition table editor can create
  up to 16 logical partitions.
  To insert a new item, type [Ins] key will insert an item at the cursor
  position. To delete an item, type [Del] key will delete the item.





USING MBM: BOOT MENU


  When the boot manager has been installed, you will able to select and
  boot any OS that instaled in the hsrddisk with a boot menu. Install the 
  boot manager with a SETMENU command and reboot computer, the boot menu
  will be appered like follows.


  * 1. DOS FAT16(32M-2G)        There is only a physical drive.
    2. DOS FAT32X
    3. HPFS/NTFS
    4. Diskette

  * 1. 0: DOS FAT16(32M-2G)     There are two or more physical drives.
    2. 0: DOS FAT32X
    3. 0: HPFS/NTFS
    4. 1: DOS FAT32X
    5. 1: DOS FAT32X
    6. F: Diskette


  Inverted menu cursor indicates selected item. It can be changed with upper/
  lower arrows and numeric keys (1-9), and boot the OS with an Enter.

  NOTE: BOOT FROM LOGICAL DRIVE
  Extend partition can be expanded/shirinked and shown its logical drive with
  right/left arrows like the following menu. Only one extend partition can be
  expanded at the same time, shirink expanded item before expand any other
  extend partition.

  * 1. 0: DOS FAT32X
    2. 0: HPFS/NTFS
    3. 0: DOS FAT16(32M-2G)
    4. 0:-DOS ExtendX
    5.     DOS FAT32X
    6.     DOS FAT32X
    7.     DOS FAT32X
    8. 1: DOS FAT32X
    9. 1: DOS FAT32X
   10. F: Diskette



  [SPACE] CHANGE DEFAULT BOOT ITEM
  
  The default boot item is automaticaly selected item. The menu cursor is set
  on the default boot item when the boot menu is started. Normally, the
  default boot item is set to previous booted item automatically.

  The default boot item can also be fixed to any item number. To change the
  default setting, move menu cursor on the menu item you like to set/clear to
  default, and then type space key. An "*" is appered at left side of the
  menu item fixed to default boot item 

  The setting of default boot item doesn't specify any physical partition nor
  which partition is activated, it only means which menu item number is
  selected in default.



  [F1] HIDE/SHOW HELP ITEM
  
  F1 hides/shows the help items.



  [F2] RENAME MENU ITEM
  
  Each menu item names can be changed. When you like to change its name,
  move menu cursor on the item you like to change and type F2 key. It can
  accept up to 29 charactors. If null string is set, built-in partition name
  will be shown instead. 

  NOTE1: Item names are stored in fixed assignment such as drive number and
  partition order. Therefore, their correspondence will be lost due to
  re-partitioning or any drive replacement. The menu item names can be
  re-initialized with F9 key.

  NOTE2: To hide any partition item from boot menu
  This function is suited for hiding non bootable partition. When you
  like to hide any partition from the boot menu, change its name begening
  from an "*". It will be hidden from next boot. The hidden items will be
  shown at verbose mode.



  [F3] AUTO START TIMER
  
  The default boot partition is booted automaticaly with time out. The timer
  value can be changed with F3 key, enter new timer value in unit of second.
  Zero means disable auto start timer. It will be activated from next boot,
  and default boot patition will be booted automaticaly with time out. If
  any key is pressed within specified time, count down is canceled.



  MASK ANY PARTITION AND CHANGE BOOT METHOD
  
  Verbose mode is enabled by F4 key. In this mode, partition ID, activate
  setting, mask setting and boot method of each partition is displayed as
  shown in below.

  * 1. 0:[----] 14.3G 0C DOS FAT32X
    2. 0:[----] 1.33G 07 HPFS/NTFS
    3. 0:[a---]  850M 06 DOS FAT16(32M-2G)
    4. 0:[----]  139G 0F+DOS ExtendX
    8. 1:[----] 10.3G 0C DOS FAT32X
    9. 1:[----] 41.7G 0C DOS FAT32X
   10. F:                Diskette
                 
                  System ID
              Partition size
           Auto mask group
           Mask status
           Boot mode
           Boot indicater


  When you wish to hide any DOS partition from OSs, the partition can be
  masked (F7), but it cannot change the mask setting of logical drive in
  the extend partition. This feature will be useful when install Windows
  because masked partition is not affected by windows installer. 

  Activate flags are able to be set/reset with F5 key. But this feature will
  not useful because the active flags are automaticaly changed at booting OS.

  Boot method can be changed with F6 key. Normaly, this setting doesn't need
  to be changed.

      -   Boot partition is automaticaly activated, any other partitions on
          the all drives are deactivated. <Default>
    >=1   Never change activate flag on the other drives.
    >=2   Never install boot helper code(*1).
    ==3   Never change activate flag even if the boot drive. Logical drives
          in the extend partition are fixed to this mode.

    *1:Boot helper code: When boot from a DOS partition(FAT/HPFS/NTFS) on the
    2nd or later drive, the boot helper code will be installed. This is for
    swapping drive number to help to load OS until kernel mode driver is
    enabled.

  Automatic mask/unmask feature is enabled when auto mask mode is set. It can
  be changed with F8 key. The mode number 1/2/3 means auto masking group. When
  boot a partition, the partition group is unmasked and any other partition
  group is masked. 
  When auto mask mode is cleared, this partition will not be affected by auto
  mask/unmask feature. Logical drives in the extend partition cannot be set
  this mode.

  NOTE: Partition mask might ineffective for Windows 2000. (Refer to TIPS.TXT)



  [F9] INITIALIZE MENU ITEM NAMES
  
  The correspondence between menu item names and partitions will be lost due
  to re-partitioning or replacement any drive. In this case, the menu item
  names can be re-initialized with F9 key. It fills menu item name table with
  null characters, and results all menu items show built-in partition name.



  [F10] EDIT PARTITION TABLE
  
  The partition table editor is builted in the boot manager from R0.33. The
  built-in partition table editor starts with F10 key. The usage is same as
  edit command. Please refer to the section "PARTITION TABLE EDITOR".



  [Del] RETRY BOOT SEQUENCE
  
  This function issues BIOS INT 19h to retry boot sequence. Normaly, the boot
  manager will be started again. However, the boot sequence will include
  CD-ROM boot sequence if it is enabled.



  [End] SHUT DOWN
  
  This function shuts down the computer with APM.





USING MBM: GRAPHICAL BOOT MENU


  This is an unique feature of the MBM. When an optional extend menu is
  installed, the graphical boot menu will be enabled instead of standard
  text menu.

  When install an extend menu, execute MBM with SETMENU command, enter menu
  file name to install and cylinder number to install. A free cylinder should
  be used for extend menu.

  When delete an extend menu, execute MBM with CLRMENU command or reinstalling
  boot manager.


  Now, it is good when any cylinder is reserved for extend menu. But normaly,
  entire cylinders are allocated for any partitions, there is not free
  cylinder. Therefore, when therer is no free clinder and install an extend
  menu withtout repartitioning, the end cylinder of the DOS partition can be
  used because normaly files are not placed at there.
  When install an extend menu into the cylinder that used by any partition,
  a confirmation message will appear. Make sure that the cylinder can be used
  without data collaption.
  If extend menu is collapsed due to the partition is filled or applying
  a defragment tool, standerd boot menu will appear insted of extend menu.
  In this case, it require to reinstall the extend menu.

  I don't recommend such dangerous way.

  On the extend menu, read documents containing each extend menu.





HISTORY


  R0.24 - First release version.

  R0.25 - The menu items can be changed.

  R0.26 - Multiple drive support.

  R0.27 - Hide any partition that is not used for boot partition.

  R0.28 - Fix cannot boot from FDD.
        - Extend menu capability.

  R0.29 - Linux/FreeBSD can also be booted from 2nd or later drive.
        - Add a function of F1 key (set boot partition) to the space key.
        - Change some functions of the extend menu installer.
        - Update built-in partition name table.

  R0.30 - Mask/Unmask any partition on the boot menu.
        - A countermeasure to the interference by BIOS.

  R0.31 - Supports LBA access mode with extend int13h BIOS. This means MBM
          clears limitation of 8GB.
        - Built-in partition table editor is imploved its convenient to
          increase resistance to any mistakes.
        - Update built-in partition name table.

  R0.32 - Fix Windows2000 often get unable to boot.
        - Boot method can be setup for each partition.
        - Update built-in partition name table.

  R0.33 - Partition table editor is included in the boot menu.
        - Menu name table can be re-initialized at boot menu.
        - Boot manager can be installed to any other drive from boot menu.
        - Diskette image version is also available. (separated archive.)

  R0.34 - Menu item name of the diskette can be changed.
        - Help items can be switched to hidden/shown.
        - Initialization method of the menu name table is changed.
          (not initialized at re-installing)
        - Booting from logical drive is supported. (for Linux)
        - An error message is added to partition table editor to prevent
          unintentional partition collaption. (unaligned partition)
        - Aotomatic mask/unmask feature is added.
        - Shut down command is added to boot menu.
        - Logical drives can also be set as default.
        - Boot indicator can be changed at boot menu.

  R0.35 - Boot Menu: Menu item name of the logical drive can be changed.
        - Boot Menu: When menu item name is set to null string, built-in
          partition name will be used instead.
        - Boot Menu: Default boot item can be changed to previous selected
          item automatically or fixed to any item.
        - Some built-in partition name is added.
        - Partition Table Editor: Partition ID is shown in the partition
          name cell.

  R0.36 - Auto mask feature supports up to three partition group.
        - Auto mask feature is not affected by boot mode.
        - Fix a bug that cannot change boot indicator from partition editor.
        - Boot error message is separated to "I/O error" and "Invalid boot
          record".
        - Partition size is shown in boot menu.
        - Partition table editor: Sytem ID can also be changed in numerical
          input.

  R0.37 - STATUS command is removed from command line instructions.
        - INSTALL_H command is added to command line instructions.
        - Partition table editor: Supported over 500GB drives.
        - Partition table editor: Supported to edit logical partition chain
          inside extend partition.

  R0.38 - Fix a bug that displayed partition size is incorrect near 64GB.
        - Some OS names are added to built-in name table.
        - Diskette image version is included in this archive.





ATTENTION


  All files in this archive are freeware. There is no limitation for personal
  use, commercial use, reproduction and dsstribution. However, please keep
  roules about freeware at least.

  I disclaim all responsibility to the result due to using MBM.

  MBM is a very dangerous tool because it is a lowest level disk management
  tool. Especially, a mistake on using the partition table editor, you will
  lose all data on the hard disk. Therefore, when you don't have knowledge
  on the partition management, I don't recommend to use MBM.

  If you have any feedback, please email to "chan@elm-chan.org". And more
  informations and support tools are on the home page.



chan (Takeshi Akamatsu)
E-mail: chan@elm-chan.org
MBM home page: http://elm-chan.org/fsw/mbm/mbm_e.html
