From 040b2099fbde8fa7cb325be0c91de28feaeff560 Mon Sep 17 00:00:00 2001 From: HimbeerserverDE Date: Fri, 16 Sep 2022 16:46:33 +0200 Subject: [PATCH] Clear the screen before printing stage 2 welcome message --- stage2/src/main.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/stage2/src/main.rs b/stage2/src/main.rs index dcab993..75f787a 100644 --- a/stage2/src/main.rs +++ b/stage2/src/main.rs @@ -13,7 +13,17 @@ fn panic(_info: &PanicInfo) -> ! { #[no_mangle] pub extern "C" fn _start() -> ! { let vga_buffer = 0xb8000 as *mut u8; + let vga_max = 0xf9e; + // Clear the screen + for i in 0..vga_max { + unsafe { + *vga_buffer.offset(i as isize * 2) = 0x00; + *vga_buffer.offset(i as isize * 2 + 1) = 0x07; + } + } + + // Print welcome message for (i, &byte) in HELLO.iter().enumerate() { unsafe { *vga_buffer.offset(i as isize * 2) = byte; -- 2.44.0