From 410829451bb1bc01691308acb850c7bba9075075 Mon Sep 17 00:00:00 2001 From: Dennis Kobert Date: Fri, 25 Oct 2019 16:11:37 +0200 Subject: Iink rust binary --- kernel/src/lib.rs | 3 +++ kernel/src/linker.ld | 2 +- kernel/src/long_mode_init.asm | 4 ++++ 3 files changed, 8 insertions(+), 1 deletion(-) (limited to 'kernel/src') diff --git a/kernel/src/lib.rs b/kernel/src/lib.rs index 066a526..05b90ef 100644 --- a/kernel/src/lib.rs +++ b/kernel/src/lib.rs @@ -1,6 +1,9 @@ +#![feature(compiler_builtins_lib)] #![no_std] #![no_main] +extern crate compiler_builtins; + #[no_mangle] pub extern "C" fn _start() -> ! { loop {} diff --git a/kernel/src/linker.ld b/kernel/src/linker.ld index cef8809..9b5355c 100644 --- a/kernel/src/linker.ld +++ b/kernel/src/linker.ld @@ -6,7 +6,7 @@ SECTIONS { .boot : { /* ensure that the multiboot heater is at the beginning */ - *(.multiboot_header) + KEEP(*(.multiboot_header)) } .text : diff --git a/kernel/src/long_mode_init.asm b/kernel/src/long_mode_init.asm index f105388..751af9b 100644 --- a/kernel/src/long_mode_init.asm +++ b/kernel/src/long_mode_init.asm @@ -14,4 +14,8 @@ long_mode_start: ; print `Uff!` to screen mov rax, 0x8521846683668255 mov qword [0xb8000], rax + + extern _start + call _start + hlt -- cgit v1.2.3-54-g00ecf