You can believe whatever you want about whatever options you are using but I can tell you this - Until you ultimately fix your linker options you are going to tear you hair out trying to fix that 0x804xxxxxx address causing all kinds of problem. Your triple fault right now is because you are telling the processor to go to a bogus memory address that doesn't actually have a service routine at it. I will make you a bet that you have a bunch of 0x804..... addresses in your kernel where mine looks like this:
Code: Select all
objdump -x _build/iso/System/Kernel/NovaVita.kernel
_build/iso/System/Kernel/NovaVita.kernel: file format elf32-i386
_build/iso/System/Kernel/NovaVita.kernel
architecture: i386, flags 0x00000102:
EXEC_P, D_PAGED
start address 0x00101288
Program Header:
LOAD off 0x00001000 vaddr 0x00100000 paddr 0x00100000 align 2**12
filesz 0x00001000 memsz 0x00001000 flags r--
LOAD off 0x00002000 vaddr 0x00101000 paddr 0x00101000 align 2**12
filesz 0x00004004 memsz 0x0000d000 flags rwx
STACK off 0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**4
filesz 0x00000000 memsz 0x00000000 flags rwx
Sections:
Idx Name Size VMA LMA File off Algn
0 .multiboot 00001000 00100000 00100000 00001000 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
1 .text 00002000 00101000 00101000 00002000 2**4
CONTENTS, ALLOC, LOAD, READONLY, CODE
2 .rodata 00001000 00103000 00103000 00004000 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
3 .eh_frame 000000fc 00104000 00104000 00005000 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
4 .data 00000f08 001040fc 001040fc 000050fc 2**2
CONTENTS, ALLOC, LOAD, DATA
5 .gdt 00000ffc 00105004 00105004 00006004 2**0
ALLOC
6 .bss 00008000 00106000 00106000 00006004 2**12
ALLOC
7 .comment 0000003d 00000000 00000000 00006004 2**0
CONTENTS, READONLY
8 .gnu_debuglink 0000001c 00000000 00000000 00006044 2**2
CONTENTS, READONLY
SYMBOL TABLE:
no symbols
Code: Select all
0: v=08 e=0000 i=0 cpl=0 IP=0008:001012a2 pc=001012a2 SP=0010:0010a000 env->regs[R_EAX]=001032f0
Code: Select all
v=09 e=0000 i=0 cpl=0 IP=0008:001012a2 pc=001012a2 SP=0010:0010a000 env->regs[R_EAX]=001032f0