History log of /haiku/src/system/boot/platform/bios_ia32/shell.S
Revision Date Author Comments
# f7ededa6 08-Nov-2015 Jonathan Schleifer <js@webkeks.org>

shell.S: Add .section .bss to make Clang happy


# 2e8aa19c 10-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

* The boot loader does now set up an IDT that allows it to catch processor
exceptions (page faults and the like). The handler dumps possibly interesting
information (registers, a (numerical) stack trace) to the serial output, and,
if possible, also to the screen. That should help debugging boot loader
crashes.
* For the IDT the boot loader sets up for the kernel the descriptors are set up
the same way, so until the kernel initializes the IDT itself (arch_init()) the
facility is still in place and can thus catch very early kernel boot crashes.
Unfortunately the on-screen output doesn't seem to work anymore at that point,
so the output only goes to the serial port...
* ... and to the debug syslog -- dprintf() does now append it there after
debug_cleanup() has been called. Seems to work fine in qemu, but when I tested
it on real hardware the debug syslog was gone.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42092 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f649b1fa 04-Nov-2010 François Revol <revol@free.fr>

Make multiboot.h usable from assembler, and remove duplicate defines.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39303 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a9c45a68 31-Jul-2009 François Revol <revol@free.fr>

Add MultiBoot support.
Based on a patch from Dustin Howett, reworked, and help from Vladimir 'phcoder' Serbinenko.
- used defines for clarity, the rest of teh code could make use of them too...
- added a gMultiBootInfo pointer to the passed args, to let C code handle it instead of faking the boot drive ID,
- conditionalized the copy back, maybe we can get rid of it when QEMU handles our default load address correctly,
- added video mode info to ask for 1024x768 but QEMU ignores it anyway, and we might need to show the menu, so it's disabled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32059 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1c532eed 14-Nov-2008 François Revol <revol@free.fr>

Make the tgz archive offset in floppy image settable. Set it to 270k for now, until zbeos gets some diet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28657 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 51e081ba 14-Oct-2005 Axel Dörfler <axeld@pinc-software.de>

Removed platform_boot_device_is_image() - platform_get_boot_device() now fills
in the adequate field in the kernel_args structure.
Renamed gCDFloppyBoot variable to gBootedFromImage (as network boot should look
similar).
The "kernel_args.boot_disk.cd" field is now maintained as well.
The print_item_at() menu function now prints the Menu::ChoiceText() instead
of that of its marked item.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14389 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d32f04d2 14-Oct-2005 Axel Dörfler <axeld@pinc-software.de>

Improved comments about the manual symbol relocations.
Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14382 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e3fcb58e 14-Oct-2005 Axel Dörfler <axeld@pinc-software.de>

The boot loader now has special support for being booted from a boot image
like floppy or CD boot.
This allows it to reduce the number of scans needed to identify the boot
partition - when booted from a real floppy, this speeds up the boot
process by a magnitude.
Also, the loader now has a fall back in case there were no "boot" links
on the disk - the current boot floppy script doesn't create them.
With these changes, I was able to boot into a HD based Haiku installation
from a floppy disk. It's not yet enough to boot from CD (as the boot
device selection is a bit too simplistic right now), but it will eventually
come next. Testing is a lot slower here, though, as neither qemu nor
Bochs support multi-session CDs (at least I have no idea how to get them
to do this).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14380 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0428a0dd 10-Oct-2005 Axel Dörfler <axeld@pinc-software.de>

Now loads the maximum size of zbeos when booted from a floppy or CD.
Note, this value should be patched by the build system to the actual size
of zbeos - but since we don't have this mechanism in place yet, the maximum
value is probably the best default, even if it should slow down a floppy
boot considerably.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14344 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5af32e75 13-Apr-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed src/kernel to src/system.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12359 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2e8aa19c638e27939fd6aaa4e2570b2411e15368 10-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

* The boot loader does now set up an IDT that allows it to catch processor
exceptions (page faults and the like). The handler dumps possibly interesting
information (registers, a (numerical) stack trace) to the serial output, and,
if possible, also to the screen. That should help debugging boot loader
crashes.
* For the IDT the boot loader sets up for the kernel the descriptors are set up
the same way, so until the kernel initializes the IDT itself (arch_init()) the
facility is still in place and can thus catch very early kernel boot crashes.
Unfortunately the on-screen output doesn't seem to work anymore at that point,
so the output only goes to the serial port...
* ... and to the debug syslog -- dprintf() does now append it there after
debug_cleanup() has been called. Seems to work fine in qemu, but when I tested
it on real hardware the debug syslog was gone.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42092 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f649b1fa771d961786e7d9988169489c19b2a3d8 04-Nov-2010 François Revol <revol@free.fr>

Make multiboot.h usable from assembler, and remove duplicate defines.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39303 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a9c45a68ef0a76d31cbe3be662905c4d5e257579 31-Jul-2009 François Revol <revol@free.fr>

Add MultiBoot support.
Based on a patch from Dustin Howett, reworked, and help from Vladimir 'phcoder' Serbinenko.
- used defines for clarity, the rest of teh code could make use of them too...
- added a gMultiBootInfo pointer to the passed args, to let C code handle it instead of faking the boot drive ID,
- conditionalized the copy back, maybe we can get rid of it when QEMU handles our default load address correctly,
- added video mode info to ask for 1024x768 but QEMU ignores it anyway, and we might need to show the menu, so it's disabled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32059 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1c532eedf1f8919ce625ee33d6c8ceaf7fea836f 14-Nov-2008 François Revol <revol@free.fr>

Make the tgz archive offset in floppy image settable. Set it to 270k for now, until zbeos gets some diet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28657 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 51e081bade5f62f3db7458f7b53d9af2cc96d277 14-Oct-2005 Axel Dörfler <axeld@pinc-software.de>

Removed platform_boot_device_is_image() - platform_get_boot_device() now fills
in the adequate field in the kernel_args structure.
Renamed gCDFloppyBoot variable to gBootedFromImage (as network boot should look
similar).
The "kernel_args.boot_disk.cd" field is now maintained as well.
The print_item_at() menu function now prints the Menu::ChoiceText() instead
of that of its marked item.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14389 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d32f04d20a8af0134697b1e0523cf63fb1b0d867 14-Oct-2005 Axel Dörfler <axeld@pinc-software.de>

Improved comments about the manual symbol relocations.
Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14382 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e3fcb58ebb7497340ed016d1a5ac4d4f13564d90 14-Oct-2005 Axel Dörfler <axeld@pinc-software.de>

The boot loader now has special support for being booted from a boot image
like floppy or CD boot.
This allows it to reduce the number of scans needed to identify the boot
partition - when booted from a real floppy, this speeds up the boot
process by a magnitude.
Also, the loader now has a fall back in case there were no "boot" links
on the disk - the current boot floppy script doesn't create them.
With these changes, I was able to boot into a HD based Haiku installation
from a floppy disk. It's not yet enough to boot from CD (as the boot
device selection is a bit too simplistic right now), but it will eventually
come next. Testing is a lot slower here, though, as neither qemu nor
Bochs support multi-session CDs (at least I have no idea how to get them
to do this).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14380 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0428a0ddc4467d98c9b984b20f82506647832469 10-Oct-2005 Axel Dörfler <axeld@pinc-software.de>

Now loads the maximum size of zbeos when booted from a floppy or CD.
Note, this value should be patched by the build system to the actual size
of zbeos - but since we don't have this mechanism in place yet, the maximum
value is probably the best default, even if it should slow down a floppy
boot considerably.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14344 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5af32e752606778be5dd7379f319fe43cb3f6b8c 13-Apr-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed src/kernel to src/system.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12359 a95241bf-73f2-0310-859d-f6bbb57e9c96