[ Home ] |
This project has been moved, here
I'm working on the code, actually I want a bootstrap code which understands the FAT12 file-system and uses this structure to
load the secondry boot programms and then the ELF file loader. At the moment I'm more interested in developing tools, tools which will help me to copy the bootstrap code in the boot sector and update different constant of the bootstrap code and in between those two boundries do other related stuff.... The tool which I'm at the moment working on is called, maker.exe . When computer boots it reads the content of the bootsector, in this case its the file bootblok.img. The file bootblok.img knows where in the disk the reserved sectors are, these reserved sectors have the cylinder, sector and head number of each sector which stores the content of the file boot.img. The file bootblok.img reads the file boot.img and then execution begins at file boot.img. The file boot.img has a read only FAT12 driver which can be called as a normal function by giving it the name of the file and far address of the area where to store the read file etc... so this FAT12 driver is a mechanism to load the other parts of the OS in the memory. The tool maker.exe copies the content of the file bootblok.img in the bootsector. It finds all the sectors of the file boot.img. It finds n number of free contiguous sectors, it marks them as reserved and put the sector numbers in the form of cylinder number, sector number and head number as a three byte entity in the reserved sectors then after this it updates the addresses of these reserved sectors in the file bootblok.img.... The source code of maker.exe maker.h maker.c lib.asm Makefile After compiling the tool use the option --help to find out about the options available with the maker.exe. |
readmbr.exe |
encode.exe |
read.exe |
Save your MBR |