Files
os-rewrite/kernel/src/main.rs
T
2024-11-16 15:13:05 +00:00

41 lines
819 B
Rust

#![no_std] // Don't link the Rust standard library
#![no_main] // Disable all Rust-level entry points
use core::panic::PanicInfo;
use limine::*;
use limine::request::{
FramebufferRequest, RequestsEndMarker, RequestsStartMarker,
};
mod font;
mod render;
use crate::font::FONT;
// Set the base revision
static BASE_REVISION: BaseRevision = BaseRevision::new();
// Halt and catch fire function
fn hcf() -> ! {
loop {
unsafe { core::arch::asm!("cli; hlt") }
}
}
// Called on panic
#[panic_handler]
fn panic(_info: &PanicInfo) -> ! {
hcf()
}
// Kernel entry point
#[no_mangle]
pub extern "C" fn kmain() -> ! {
render::init();
render::write_string("Welcome to GoofyAhhOS!\nthis is the superior os\nif you disagree you are a heretic in the name of steven.", 0xff0000, 0);
hcf()
}