From 66ee8a34f3bcde31f9d5919f2e0e363ac11f4aca Mon Sep 17 00:00:00 2001 From: Christian Cunningham Date: Thu, 18 Aug 2022 20:37:09 -0700 Subject: Formatted printing to UART --- src/print.rs | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 src/print.rs (limited to 'src/print.rs') diff --git a/src/print.rs b/src/print.rs new file mode 100644 index 0000000..932c655 --- /dev/null +++ b/src/print.rs @@ -0,0 +1,25 @@ +//! Printing +use core::fmt; + +use crate::uart::UART_WRITER; +use crate::console::interface::Write; + +#[doc(hidden)] +pub fn _print(args: fmt::Arguments) { + UART_WRITER.write_fmt(args).unwrap(); +} + +/// Print without newline +#[macro_export] +macro_rules! print { + ($($arg:tt)*) => ($crate::print::_print(format_args!($($arg)*))); +} + +/// Print with newline +#[macro_export] +macro_rules! println { + () => ($crate::print!("\n")); + ($($arg:tt)*) => ({ + $crate::print::_print(format_args_nl!($($arg)*)); + }) +} -- cgit v1.2.1