Ok
Grub hates my kernel when i have more than 20 idt entries. It links and compiles fine but when i try to run it from the grub console with the multiboot command i get the "multiboot header not found" error.
Any ideas on what could be causing this or alternatives if grub just hates me?
Grub 2 Multiboot issue
Re: Grub 2 Multiboot issue
Maybe it's too obvious, but is the idt before the multiboot header in the file?
If so, modify the linker script so the multiboot header will be before the idt...
If so, modify the linker script so the multiboot header will be before the idt...
- xenos
- Member
- Posts: 1121
- Joined: Thu Aug 11, 2005 11:00 pm
- Libera.chat IRC: xenos1984
- Location: Tartu, Estonia
- Contact:
Re: Grub 2 Multiboot issue
The multiboot header must be within the first 8kb of the multiboot kernel, so the best is to place it in its own section at the beginning of your kernel image.
Re: Grub 2 Multiboot issue
thanks i objdumped my kernel.bin and the header seems to not be inside of the 8kb range.
also have any examples been posed on how to get ld to put the symbol for the header at the top of the .bin (i dont really know ld too well...)
also have any examples been posed on how to get ld to put the symbol for the header at the top of the .bin (i dont really know ld too well...)
Re: Grub 2 Multiboot issue
http://wiki.osdev.org/Grub_Error_13
Use the section keyword in your assembler file and add the section to your .ld file as described above.
Use the section keyword in your assembler file and add the section to your .ld file as described above.
Fudge - Simplicity, clarity and speed.
http://github.com/Jezze/fudge/
http://github.com/Jezze/fudge/
Re: Grub 2 Multiboot issue
thanks made the fixes and it workd perfectly