#![no_std] #![no_main] extern crate alloc; use foundry_os::{println, println_log}; use lib_async::task::{Executor, Task}; use lib_keyboard::print_keypresses; #[no_mangle] extern "C" fn kmain() -> ! { println_log!(" [ Initialising Kernel Systems ] "); if let Err(err) = foundry_os::boot() { panic!("{}", err); } println_log!("[ Kernel Initialised Successfully ] "); let dimensions = lib_ascii::screensize_chars(); let dimensions2 = lib_framebuffer::screensize_px(); println!("Dimensions: {}x{} (px)", dimensions2.0, dimensions2.1); println!("Dimensions: {}x{} (chars)", dimensions.0, dimensions.1); println!( " $$$$$$$$\\ $$\\ $$ _____| $$ | $$ | $$$$$$\\ $$\\ $$\\ $$$$$$$\\ $$$$$$$ | $$$$$$\\ $$\\ $$\\ $$$$$\\ $$ __$$\\ $$ | $$ |$$ __$$\\ $$ __$$ |$$ __$$\\ $$ | $$ | $$ __|$$ / $$ |$$ | $$ |$$ | $$ |$$ / $$ |$$ | \\__|$$ | $$ | $$ | $$ | $$ |$$ | $$ |$$ | $$ |$$ | $$ |$$ | $$ | $$ | $$ | \\$$$$$$ |\\$$$$$$ |$$ | $$ |\\$$$$$$$ |$$ | \\$$$$$$$ | \\__| \\______/ \\______/ \\__| \\__| \\_______|\\__| \\____$$ | $$$$$$\\ $$$$$$\\ $$\\ $$\\ $$\\ $$\\ $$ | $$ __$$\\ $$ __$$\\ $$ | $$ |$$$$ | \\$$$$$$ | $$ / $$ |$$ / \\__| $$ | $$ |\\_$$ | \\______/ $$ | $$ |\\$$$$$$\\ \\$$\\ $$ | $$ | $$ | $$ | \\____$$\\ \\$$\\$$ / $$ | $$ | $$ |$$\\ $$ | \\$$$ / $$ | $$$$$$ |\\$$$$$$ | \\$ / $$$$$$\\ \\______/ \\______/ \\_/ \\______| " ); let mut executor = Executor::new(); executor.spawn(Task::new(print_keypresses())); executor.try_run(); loop {} }