osiris/
print.rs

1use core::fmt::{self, Write};
2
3use hal::Machinelike;
4
5pub struct Printer;
6
7impl Write for Printer {
8    fn write_str(&mut self, s: &str) -> fmt::Result {
9        hal::Machine::print(s).map_err(|_| fmt::Error)?;
10        Ok(())
11    }
12}
13
14pub fn print_header() {
15    kprintln!("****************************************************************");
16    kprintln!("  ___      _      _       ____ _____ ___  ____   ");
17    kprintln!(" / _ \\ ___(_)_ __(_)___  |  _ \\_   _/ _ \\/ ___|  ");
18    kprintln!("| | | / __| | '__| / __| | |_) || || | | \\___ \\  ");
19    kprintln!("| |_| \\__ \\ | |  | \\__ \\ |  _ < | || |_| |___) | ");
20    kprintln!(" \\___/|___/_|_|  |_|___/ |_| \\_\\|_| \\___/|____/  ");
21    kprintln!("");
22    kprintln!("****************************************************************");
23    kprintln!("");
24}