Okay, here's something to start off. I've tried to keep it simple but if more info is needed or it needs correcting then feel free to edit.
Stage 0• A traditional PC will have a BIOS (though recent motherboards may now ship with UEFI which I haven't used).
• One thing a BIOS will do is try to find a bootable device.
• A bootable device has the last 2 bytes of first sector set to 0xAA55.
• Generally, the first 512 byte sector is known as the master boot record (MBR).
• The first 446 bytes are free for containing boot code (Note: bytes 441-446 can contain a Windows disk signature)
• Chameleon's stage 0 boot code is written to the first 440 bytes using a modded fdisk named fdisk440.
The purpose of the Chameleon stage 0 code is to find and load the stage 1 partition loader.
The stage 0 code is written in assembly language and is available in the forge -
here.
There are three variations of Chameleon's stage 0 code and these are known as boot0, boot0hfs and boot0md.
boot0 seeks the stage 1 partition loader on the first active partition on the disk.
This is ideally used when you have a single or multiple OS X installations on one disk. The remaining Chameleon files would be written to one partition on the disk, either a system one or a small separate one. That partition is then flagged active so boot0 finds it. In the situation of a secondary installation of Chameleon files on the same disk, the one set for booting can be controlled by setting the active flag .
boot0hfs seeks the stage 1 partition loader on the first HFS partition.
This is ideally used if you have Windows Vista/7 installed on the same HDD as OS X. Windows Vista/7 needs to be the active partition on a disk for it to behave properly, so in this case the boot0 code will skip the active partition.
More info.
boot0md seeks the stage 1 partition loader on the first HFS partition of all disks, then looks for active partition.
This is ideally used in multi disk setups and can be installed to the MBR of a Windows Vista/7 disk. It will search many disks for the Chameleon stage 1 partition loader on an HFS partition and if not found will then search again for the first active partition. It can also be used perfectly well as a boot0hfs replacement.
More info.
dmazar posted a comprehensive breakdown of the steps each code version takes and describes the possibility of using boot0md as a master boot0 to cover all situations (which I think it pretty much does)
here.
Reason for edit: Fix a typo in paragraph for Boot0hfs