1 //! Implementations for the TI-MSP430 family of MCUs. 2 3 use gdbstub::arch::Arch; 4 use gdbstub::arch::RegId; 5 6 pub mod reg; 7 8 /// Implements `Arch` for standard 16-bit TI-MSP430 MCUs. 9 /// 10 /// Check out the [module level docs](gdbstub::arch#whats-with-regidimpl) for 11 /// more info about the `RegIdImpl` type parameter. 12 pub enum Msp430<RegIdImpl: RegId = reg::id::Msp430RegId> { 13 #[doc(hidden)] 14 _Marker(core::marker::PhantomData<RegIdImpl>), 15 } 16 17 impl<RegIdImpl: RegId> Arch for Msp430<RegIdImpl> { 18 type Usize = u16; 19 type Registers = reg::Msp430Regs; 20 type RegId = RegIdImpl; 21 type BreakpointKind = usize; 22 target_description_xml() -> Option<&'static str>23 fn target_description_xml() -> Option<&'static str> { 24 Some(r#"<target version="1.0"><architecture>msp430</architecture></target>"#) 25 } 26 } 27