| Code Kitchen Allgemeines Coder-Forum rund um das Programmieren eigenständiger, ausführbarer Programme. |
Diskussion: assembler :(.text+0x6a): relocation truncated to fit: R_386_16 against `.text:' im Forum Code Kitchen, in der Kategorie Software Home; Anzeige hi, ich habe mich gerade dran gemacht per Tutorial ein kleines os zu schreiben. ich bin was asm angeht ...
![]() |
| | #1 (permalink) |
| Registriert seit: 27.03.07 ![]() Likes: 0 | Anzeige hi, ich habe mich gerade dran gemacht per Tutorial ein kleines os zu schreiben. ich bin was asm angeht noch ein anfänger und arbeite mich da noch rein, heißt ich verstehe zwar den code habe aber noch probleme selber etwas in asm umzusetzen. habe jetzt hier einen kleinen kernel (den asm teil) der in den Protected Mode umschaltet um dann in den C_kernel zu springen und Hello world auszugeben. ohne das in den PMode springen funktioniert das auch. so wie ich den code jetzt aber aufgebaut habe bekomme ich beim zusammenlinken der kernel_asm.o und kernel_c.o diese fehlermeldung Code: kernel_asm.o: In function `Base': kernel.asm:(.text+0x6a): relocation truncated to fit: R_386_16 against `.text:' Code: global loader ; loader für Linker sichtbar machen extern main ; main-Funktion des C-Kernels FLAGS equ 0 MAGIC equ 0x1BADB002 ; Magicnumber - Erkennungsmerkmal für Grub CHECKSUM equ -(MAGIC + FLAGS) ; Checksum ;--------------------------------------------------------------------------------------- NULL_Desc: dd 0 dd 0 CODE_Desc: dw 0xFFFF dw 0 db 0 db 0x9A db 0xCF db 0 DATA_Desc: dw 0xFFFF dw 0 db 0 db 0x92 db 0xCF db 0 gdt: Limit dw 0 Base dd 0 cli mov eax, cs mov ds, ax shl eax, 4 mov [CODE_Desc+2], ax mov [DATA_Desc+2], ax shr eax, 16 mov [CODE_Desc+4], al mov [DATA_Desc+4], al mov eax, cs shl eax, 4 add eax, NULL_Desc mov [Base], eax mov [Limit], WORD gdt - NULL_Desc - 1 lgdt [gdt] mov eax, cr0 or eax, 1 mov cr0, eax db 0xea dw PMODE dw 0x8 [Bits 32] section .text: align 4 MultiBootHeader: dd MAGIC ; Magic number dd FLAGS ; Flags dd CHECKSUM ; Checksum PMODE: mov WORD [CODE_Desc+2], 0 mov WORD [DATA_Desc+2], 0 mov BYTE [CODE_Desc+4], 0 mov BYTE [CODE_Desc+4], 0 mov eax, 2 shl eax, 3 mov ds, ax mov es, ax mov ss, ax mov eax, 0 mov fs, ax mov gs, ax mov esp, 0x1FFFFF jmp 0x8:0x1000 + PMODE2 PMODE2: loader: push eax ; Multiboot Magicnumber auf den Stack legen push ebx ; Adresse der Multiboot-Structure auf den Stack legen call main ; main-Funktion des C-Kernels aufrufen cli ; falls der Kernel bis hier her kommt, CPU anhalten hlt |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Verschlüsselter Text | boehmi | Hacks & Crackmes | 8 | 17.04.10 08:24 |
| Text formatieren | jami | (Web-) Design und webbasierte Sprachen | 2 | 19.02.07 19:31 |
| verschlüsselter text? | j1gg4m4n | Cryptography & Encryption | 32 | 09.02.06 08:25 |
| Text Übersetzungsprogramm | mimili | Windows | 4 | 22.07.05 18:22 |
| Text scannen | TheEvilOne | Off topic-Zone | 8 | 18.11.01 16:54 |