pub mod generic;
#[cfg(feature="atmega4809")]
pub mod atmega4809;
#[cfg(feature="atmega328p")]
pub mod atmega328p;
#[cfg(feature="panic_handler")]
#[panic_handler]
#[cfg(target_arch="avr")]
fn panic(info: &core::panic::PanicInfo) -> ! {
#![allow(deprecated)] unsafe {
avr_oxide::concurrency::interrupt::disable_interrupts();
#[cfg(feature="panicout")]
{
use avr_oxide::util::debug;
debug::print("\n\nPanic:\n");
if let Some(location) = info.location() {
debug::print(" --> ");
debug::print(&location.file());
debug::print(":");
debug::print_u16(location.line() as u16);
debug::print(":");
debug::print_u16(location.column() as u16);
debug::print("\n");
}
}
avr_oxide::oserror::halt(avr_oxide::oserror::OsError::Panic);
}
}