#![no_std] #![no_main] use core::panic::PanicInfo; pub mod arch; #[macro_export] macro_rules! print { ($($arg:tt)*) => ($crate::arch::_print(format_args!($($arg)*))); } #[macro_export] macro_rules! println { () => (print!("\n")); ($($arg:tt)*) => (print!("{}\n", format_args!($($arg)*))); } #[panic_handler] fn panic(info: &PanicInfo) -> ! { println!("{}", info); loop {} } #[no_mangle] //pub extern "C" fn kernel_main(multiboot_bootinfo: *mut u32, multiboot_magic: u32) -> ! { pub extern "C" fn kernel_main() -> ! { //arch::parse_multiboot(multiboot_bootinfo, multiboot_magic); //arch::forall(); //arch::once(); let mut x = 10; for i in 0..100 { x += i; } println!("Hello World! {}", x); loop {} }