extern crate cortex_m_semihosting;
use cortex_m_semihosting::hio;
use core::fmt::Write;
pub fn print(msg: &str) {
let mut stderr = match hio::hstderr() {
Ok(fd) => fd,
Err(()) => { assert!(false, "stderr fail"); return; }
};
write!(stderr, "{}", msg)
.expect("print fail");
}
pub fn buffer(msg: &str) {
let mut stderr = match hio::hstderr() {
Ok(fd) => fd,
Err(()) => { assert!(false, "stderr fail"); return; }
};
write!(stderr, "{}", msg)
.expect("buffer fail");
}
pub fn printhex(v: u8) {
let mut stderr = match hio::hstderr() {
Ok(fd) => fd,
Err(()) => { assert!(false, "stderr fail"); return; }
};
write!(stderr, "{:x}", v)
.expect("printhex fail");
}
pub fn printint(v: i32) {
let mut stderr = match hio::hstderr() {
Ok(fd) => fd,
Err(()) => { assert!(false, "stderr fail"); return; }
};
write!(stderr, "{}", v)
.expect("printint fail");
}
pub fn printfloat(v: f32) {
let mut stderr = match hio::hstderr() {
Ok(fd) => fd,
Err(()) => { assert!(false, "stderr fail"); return; }
};
write!(stderr, "{:.2}", v)
.expect("printfloat fail");
}
pub fn printdouble(v: f64) {
let mut stderr = match hio::hstderr() {
Ok(fd) => fd,
Err(()) => { assert!(false, "stderr fail"); return; }
};
write!(stderr, "{:.6}", v)
.expect("printint fail");
}
pub fn flush() {
}