blob: c5e05a4301991e5bf556a58ea907a2c1514432dc (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#![feature(asm)]
#![no_std]
#![no_main]
use core::panic::PanicInfo;
use crate::terminal::Terminal;
mod arch;
mod serial;
mod terminal;
#[no_mangle]
pub extern "C" fn kmain() -> ! {
let mut terminal = Terminal::new();
terminal.clear();
if let Err(_) = serial::initialize_serial_port() {
terminal.put_string(b"Serial port initialization failed");
} else {
terminal.put_string(b"Serial port initialization succeeded");
}
serial::write_bytes(b"This string was sent through the serial port!!");
loop {}
}
#[panic_handler]
fn panic(_info: &PanicInfo) -> ! {
loop {}
}
|