diff options
| author | Christian Cunningham <c@localhost> | 2022-08-22 20:54:54 -0700 |
|---|---|---|
| committer | Christian Cunningham <c@localhost> | 2022-08-22 20:54:54 -0700 |
| commit | 188a08c3a340005d59d497e836993cb9349c9cbe (patch) | |
| tree | a69cc6cc1ced12043b706dc62f5a1645d9061adb /src/kernel.rs | |
Initial state
Diffstat (limited to 'src/kernel.rs')
| -rw-r--r-- | src/kernel.rs | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/kernel.rs b/src/kernel.rs new file mode 100644 index 0000000..8218691 --- /dev/null +++ b/src/kernel.rs @@ -0,0 +1,34 @@ +//! # Kernel +//! +//! Kernel Start + +#![no_std] // don't link the Rust standard library +#![no_main] // disable all Rust-level entry points +#![feature(const_mut_refs)] + +mod sync; +mod vga; +use vga::*; +use core::panic::PanicInfo; + +/// This function is called on panic. +#[panic_handler] +fn panic(_info: &PanicInfo) -> ! { + loop {} +} + +fn kernel_init() { + WRITER.init(); +} + +#[no_mangle] +pub extern "C" fn _start() -> ! { + kernel_init(); + + WRITER.write_string("Hello World!"); + WRITER.write_string("\n\nHi\n"); + println!("{}", 5); + //print_something(); + + loop {} +} |
