MKBT Make Bootable v1.3

Create any boot- floppy/image from any win32 platform with any media size...


Page index

What is MKBT?
Download
On what platforms can MKBT be run?
What is the command line syntax?
What is so unique about MKBT?
Are there any other bootsector installers?
Where can I find the latest version?
How to build a bootable floppy
How to build a bootable floppy image file
How does MKBT work? (technical)
Bootsector installation
Bootsector copy (-c)
[ Top ]

What is MKBT?

MKBT is used for transferring bootsector between floppy drive, floppy imagefile or bootsector file. You can transfer in any direction.

MKBT is freeware!
[ Top ]

Download

To download MKBT use this link: MKBT v1.3

[ Top ]

On what platforms can MKBT be run?

MKBT is compiled as a win32 executable and runs on:
[ Top ]

What is the command line syntax?

Usage: mkbt [switches] <source> <target>

<source>The source file/drive which contains the bootsector to install
<target>The target file/drive to install the bootsector on

Switches:
-vVerbose mode
-cCopy bootsector (no install) used for copying the bootsector from floppy to bootsector file
-l<xxx>Set Volume Label to <xxx>

Examples
To install bootsector from file "bootsect.bin" onto drive A:
mkbt c:\os\dos622\bootsect.bin a:

To install bootsector from file "bootsect.bin" onto floppy image "288.img"
mkbt c:\os\dos622\bootsect.bin c:\tmp\288.img

To copy bootsector from a bootable floppy in drive A: to a file called
"bootsect.bin"
mkbt -c a: c:\os\dos622\bootsect.bin

[ Top ]

What is so unique about MKBT?

Unique things about MKBT are:
[ Top ]

Are there any other bootsector installers?

Yes, I've found one other bootsector installer, "bootable.exe" written by Alexei A. Frounze. It is a Dos executable and only supports transferring a bootsector from file to floppy drive (A: or B:).

[ Top ]

Where can I find the latest version?

The latest version can be found on http://www.nu2.nu/mkbt

[ Top ]

How to build a bootable floppy

You can use any Dos version, any Dos supported floppy disk size to build your bootable floppy. For each Dos version you must have the following 4 boot files:

For this example we will use MS-Windows 98 (version 4.10.1998), therefor we put the files in a folder called "4101998". They must have "normal" attributes (not hidden/system/readonly!).

You can now use makeboot.bat (which is include with the MKBT download zipfile).
makeboot.bat takes one parameter, that is the directory where the Dos bootfiles can be found.

Example: makeboot c:\os\4101998
or when your in the "c:\os" folder, just makeboot 4101998

[ Top ]

How to build a bootable floppy image file

Besides the 4 bootfiles you need as in How to build a bootable floppy you also need Winimage v5.x (the shareware version will do).

[ Top ]

How does MKBT work? (technical)

MKBT copies parts of the bootsector. The bootsector, the very first sector of a floppy disk, is 512 bytes long and looks like this:

FAT Boot sector
OffsetLength Meaning
0x0 3 bytes Jump instruction
0x3 8 bytes OEM Name
0xB 25 bytes BIOS parameter block
0x24 26 bytes Extended BIOS parameter block
0x3E 448 bytes Bootstrap code
0x1FE 2 bytes End of sector marker

The BIOS parameter block and extended BIOS parameter block contains the information:

BIOS parameter block for FAT volumes
OffsetLengthMeaning
0xB 2 bytes Bytes per sector
0xD 1 byte Sectors per cluster
0x0E 2 bytes Reserved sectors
0x10 1 byte Number of FATs
0x11 2 bytes Root entries
0x13 2 bytes Small sectors
0x15 1 byte Media type
0x16 2 bytes Sectors per FAT
0x18 2 bytes Sectors per track
0x1A 2 bytes Number of heads
0x1C 4 bytes Hidden sectors
0x20 4 bytes Large sectors

Extended BIOS parameter block for FAT volumes
OffsetLengthMeaning
0x24 1 byte Physical disk number
0x25 1 byte Dos: Current head
NT: Dirty flag
0x26 1 byte Signature
0x27 4 bytes Volume serial number
0x2B 11 bytes Volume label
0x36 8 bytes Filesystem ID

[ Top ]

Bootsector installation

Below are the steps MKBT takes to install a bootsector:

Steps for bootsector installation
StepSource sectorBuffer 1Buffer 2Target sector
1.Read source sector in buffer 1
2.Read target sector in buffer 2
3.Transfer bootsector parts from buffer 1 to buffer 2
  • Jump instruction
  • OEM Name
  • Extended BIOS parameter->Volume label
  • Bootstrap code
  • End of sector marker
4.Write buffer to target sector

[ Top ]

Bootsector copy (-c)

MKBT v1.3 (and higher) copy bootsector option copies the complete bootsector!
(previous versions only copied those sections that where needed to install it)


[ Top ]

Copyright 2000-2001 by Bart Lagerweij -

To contact me please click here...