use v5gdb::{debugger::V5Debugger, transport::StdioTransport};
use vex_sdk::vexTasksRun;
use vexide::prelude::*;
#[inline(never)]
fn busy_spin() -> ! {
loop {
for _ in 0..50_000_000u32 {
core::hint::spin_loop();
}
}
}
#[vexide::main]
async fn main(_peripherals: Peripherals) {
let log_level = if option_env!("DEBUG").is_some() {
log::Level::max()
} else {
log::Level::Warn
};
colored::control::set_override(true);
clang_log::init(log_level, "v5gdb(spin)");
v5gdb::install(V5Debugger::new(StdioTransport::new()));
v5gdb::breakpoint!();
println!("About to start spinning; attach GDB, `continue`, then press Ctrl-C");
unsafe {
vexTasksRun();
}
busy_spin();
}