• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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