From 7391a7a9eb6020078e8a7855599654f060a18fd5 Mon Sep 17 00:00:00 2001 From: Philipp Oppermann Date: Mon, 17 Aug 2015 16:02:06 +0200 Subject: [PATCH] [unfinished] Add Multiboot 2 crate and load Multiboot structure Conflicts: Cargo.toml src/lib.rs Conflicts: Cargo.toml --- Cargo.toml | 3 +++ src/lib.rs | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/Cargo.toml b/Cargo.toml index 872dd9b8..20788279 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,3 +8,6 @@ crate-type = ["staticlib"] [dependencies] rlibc = "*" + +[dependencies.multiboot2] +path = "../multiboot2" diff --git a/src/lib.rs b/src/lib.rs index bc30a4e5..8c6a199d 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -17,6 +17,7 @@ #![no_std] extern crate rlibc; +extern crate multiboot2; use core::fmt::Write; @@ -28,6 +29,9 @@ pub extern fn rust_main(multiboot_address: usize) { // ATTENTION: we have a very small stack and no guard page use vga_buffer::{Writer, Color}; + let multiboot = unsafe{multiboot2::load(multiboot_address)}; + + vga_buffer::clear_screen(); let mut writer = Writer::new(Color::Blue, Color::LightGreen); writer.write_byte(b'H');