Create a boot sector that loads and runs a KernelLoader at adress $1000:$0000, and jumps to it.
Display an error if the KernelLoader cannot be loaded.
Means : Select a BootSector from all the ones available on the internet, and adapt it.
The chosen BootSector loads .com format executables (org $100).
This could be a blessing since tcom creates .com files too, but I don't want to have to care about the 256 bytes that DOS and its clones use to store their runtime data in memory.
So I decided to add a small BinaryHeader to all generated .com files, which is only a jmp to some init code in then header, followed by some segments sizes and the small code snippet that uses them to set the segment limits, then finally a jmp $100.
In consequence all tcos binary files, including the KernelLoader must have this BinaryHeader, and hence are org $0000.
The BootSector has been adapted this way, and its OEM signature has been changed.
Back to HomePage