Proud of bootloader, putting it in PD

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
User avatar
Candy
Member
Member
Posts: 3882
Joined: Tue Oct 17, 2006 11:33 pm
Location: Eindhoven

Proud of bootloader, putting it in PD

Post by Candy »

I'm proud of my boot loader :D

Even though I know this is only for OSDEV, I'm just so full of happyness about it, I couldn't leave this.

It is not multiboot compliant (will work on that later, when I know what multiboot EXACTLY means) but it does load all the current OSes from disk (all mainstream OSes), using the chainloading mechanism. The OS that is loaded gets the boot drive in dl (its own boot drive, not the one the computer has set as boot drive, and the on disk partition table is modified to reflect the currently booted OS as active partition.

It does not have a configuration interface. You set all names & configuration options in the source. It does have a fully customisable interface, you can use blank lines, descriptions, categories & stuff like that. Lines can be marked on and off, and the boot loader displays them in different makeup. Adjusting the colors is also easy, they're in a mov ah, XX statement.

It's fully in assembler. You can write it to disk using some sort of partcopy or anything (be careful not to overwrite your partition table!) or using my freshly written sectorwrite (which is also PD as of now) that reads the current 4 sectors, writes them to sector.out, reads 4 sectors from sector.in and writes those (with the old partition table & boot sig forced) to disk. In other words, it fixes your disk so it boots.

I've tested it on my Compaq laptop, which offered another problem. Compaq laptops have an additional partition, that contains their proprietary BIOS configuration. It's not cool to lose your BIOS setup routines, so I had to fix that. It proved to be an MSDOS type 4 partition, so just add it as bootable and call it Compaq diagnostics, and it works :D

It also works with booting floppy's and multiple harddisks.

And I'm off again to upload it somewhere :D

[edit] Find them at www.atlantisos.com/pd.html, only the zips for now (you'll notice when the tar.*'s work) [/edit]

[edit2] It doesn't cease to amaze me how the internet folks react to a link labeled "free". I had more hits yesterday than in the entire month of January. If you look, I would like you to comment it, either here or by email. As it's public domain, I can't force you ;)[/edit2]
Post Reply