diff --git a/stage_3/src/vga.rs b/stage_3/src/vga.rs index 5f5db70..e0d27af 100644 --- a/stage_3/src/vga.rs +++ b/stage_3/src/vga.rs @@ -2,6 +2,7 @@ use core::{fmt, ptr}; use crate::spin::Spinlock; +const VGA_ADDR: usize = 0xb8000; const VGA_WIDTH: usize = 80; const VGA_HEIGHT: usize = 25; @@ -28,7 +29,7 @@ macro_rules! vga_println { } pub fn vga_init() { - let vga_buf = unsafe { VgaBuf::new(0xb8000 as *mut u16) }; + let vga_buf = unsafe { VgaBuf::new(ptr::with_exposed_provenance_mut::(VGA_ADDR)) }; let mut guard = VGA.lock(); *guard = Some(vga_buf); }