More accuratly, you will need to make a
bootsector that is copied to the first sector of a floppy(assuming that you want to boot from a floppy). The
bootsector that you write will need to written in assembly lanuage and compile it into a binary file. The
bootsector's job is to find your kernel.bin file on the floppy then and load it into memory and then jump to it. One thing that you need to be sure of is that your kernel and/or bootsector is written in assembly that you don't use
any int 21h calls as those are provided by DOS and DOS won't be availible to your kernel and/or bootsector. It appears that you have written your kernel in C so also be sure that there are
no printf's because these rely on Linux, DOS, or another OS. Also make sure that you don't link with the standard libc library that comes with Linux because most of the functions in it need Linux to work.
Basically, a boot off a floppy disk works like this:
1. pc is turned on
2. the pc's bios looks for a floppy in the floppy drive
3. if found the bios loads the first sector(the
bootsector) of the floppy into memory and jumps to it and runs it
4. the bootsector then loads the kernel into memory from the floppy
5. the bootsector jumps to the kernel and runs it
If you would like some well commented bootsectors then I suggest that you look at John Fine's:
http://www.execpc.com/~geezer/johnfine/index.htmHope that helps you
.
K.J.