MBLOAD-C: Multiboot kernel loader for DOS

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
Chris Giese

MBLOAD-C: Multiboot kernel loader for DOS

Post by Chris Giese »

http://my.execpc.com/~geezer/temp/mbload.zip

It boots OSD and Neural DK with apparent success, as
well as a graphical Multiboot test kernel that I wrote:
http://my.execpc.com/~geezer/temp/mbtest.zip

I had lesser success with these kernels:
- Mobius booted to its kernel debugger because it couldn't
  find the shell
- TabOS booted, but froze up while trying to load the
  keyboard translation table
- Wild Magnolia booted, then immediately displayed a blue-and-
  white page fault screen. I was able to use the Esc key to
  select different screens.

Try it with your own kernel and let me know if it works or not.
If it doesn't work, please try booting the graphical Multiboot
test kernel before sending an error report. This will help
narrow down the cause of the problem.

Not all fields of the Multiboot system information structure
are filled out. In particular, MBLOAD-C does not set the
kernel and module command lines, the root device, or the
hard drive information fields. Also, GZIP compression is not
yet supported.
Chris Giese

Whoops

Post by Chris Giese »

There was a bug in the code that displays BIOS memory ranges. Either re-download the .ZIP file, or go into MBLOAD.C, find the definition of mboot_range_t, and change the 'type' field from

uint32_t type __PACKED__;

to

uint16_t type, res_type __PACKED__;

Sorry about that.
Chris Giese

RE:MBLOAD-C: Multiboot kernel loader for DOS

Post by Chris Giese »

Version 0.45 is now up:
http://my.execpc.com/~geezer/temp/mbload.zip

This version sets the kernel and module command lines to the full pathname of the files, with GRUB-style device names, e.g.
(hd0,0)/my-os/bin/kernel.exe

There was also a palette bug in the graphical Multiboot test kernel, which I've fixed:
http://my.execpc.com/~geezer/temp/mbtest.zip
Post Reply