<!DOCTYPE Board_Memory_Definition_File>
<Root name="MSP430F112" >
  <MemorySegment size="0x10" access="Read/Write" name="Special Function Registers" start="0x0" >
    <RegisterGroup size="0x2" name="Interrupt enables" start="0x0" >
      <Register access="Read/Write" register_type="unsigned char" name="IE1" start="0x0" />
      <Register access="Read/Write" register_type="unsigned char" name="IE2" start="0x1" />
    </RegisterGroup>
    <RegisterGroup size="0x2" name="Interrupt flags" start="0x2" >
      <Register access="Read/Write" register_type="unsigned char" name="IFG1" start="0x2" />
      <Register access="Read/Write" register_type="unsigned char" name="IFG2" start="0x3" />
    </RegisterGroup>
    <RegisterGroup size="0x2" name="Module enables" start="0x4" >
      <Register access="Read/Write" register_type="unsigned char" name="ME2" start="0x5" />
      <Register access="Read/Write" register_type="unsigned char" name="ME1" start="0x6" />
    </RegisterGroup>
  </MemorySegment>
  <MemorySegment size="0xf0" access="Read/Write" name="8-Bit Peripherals" start="0x10" >
    <RegisterGroup size="7" name="I/O Port P1" start="0x20" >
      <Register access="Read" register_type="unsigned char" name="P1IN" start="0x20" />
      <Register access="Read/Write" register_type="unsigned char" name="P1OUT" start="0x21" />
      <Register access="Read/Write" register_type="unsigned char" name="P1DIR" start="0x22" />
      <Register access="Read/Write" register_type="unsigned char" name="P1IFG" start="0x23" />
      <Register access="Read/Write" register_type="unsigned char" name="P1IES" start="0x24" />
      <Register access="Read/Write" register_type="unsigned char" name="P1IE" start="0x25" />
      <Register access="Read/Write" register_type="unsigned char" name="P1SEL" start="0x26" />
    </RegisterGroup>
    <RegisterGroup size="7" name="I/O Port P2" start="0x28" >
      <Register access="Read/Write" register_type="unsigned char" name="P2IN" start="0x28" />
      <Register access="Read/Write" register_type="unsigned char" name="P2OUT" start="0x29" />
      <Register access="Read/Write" register_type="unsigned char" name="P2DIR" start="0x2a" />
      <Register access="Read/Write" register_type="unsigned char" name="P2IFG" start="0x2b" />
      <Register access="Read/Write" register_type="unsigned char" name="P2IES" start="0x2c" />
      <Register access="Read/Write" register_type="unsigned char" name="P2IE" start="0x2d" />
      <Register access="Read/Write" register_type="unsigned char" name="P2SEL" start="0x2e" />
    </RegisterGroup>
    <RegisterGroup size="3" name="Basic Clock" start="0x56" >
      <Register access="Read/Write" register_type="unsigned char" name="DCOCTL" start="0x56" />
      <Register access="Read/Write" register_type="unsigned char" name="BCSCTL1" start="0x57" />
      <Register access="Read/Write" register_type="unsigned char" name="BCSCTL2" start="0x58" />
    </RegisterGroup>
  </MemorySegment>
  <MemorySegment size="0x100" access="Read/Write" name="16-Bit Peripherals" start="0x100" >
    <RegisterGroup size="0x2" name="Watchdog Timer" start="0x120" >
      <Register access="Read/Write" name="WDTCTL" start="0x120" />
    </RegisterGroup>
    <RegisterGroup size="6" name="Flash" start="0x128" >
      <Register access="Read/Write" name="FCTL1" start="0x128" />
      <Register access="Read/Write" name="FCTL2" start="0x12a" />
      <Register access="Read/Write" name="FCTL3" start="0x12c" />
    </RegisterGroup>
    <RegisterGroup size="0x10" name="Timer_A" start="0x160" >
      <Register access="Read/Write" name="TACTL" start="0x160" />
      <Register access="Read/Write" name="CCTL0" start="0x162" />
      <Register access="Read/Write" name="CCTL1" start="0x164" />
      <Register access="Read/Write" name="CCTL2" start="0x166" />
      <Register access="Read/Write" name="TAR" start="0x170" />
      <Register access="Read/Write" name="CCR0" start="0x172" />
      <Register access="Read/Write" name="CCR1" start="0x174" />
      <Register access="Read/Write" name="CCR2" start="0x176" />
    </RegisterGroup>
    <RegisterGroup size="0x2" name="Timer_A" start="0x12e" >
      <Register access="Read" name="TAIV" start="0x12e" />
    </RegisterGroup>
  </MemorySegment>
  <MemorySegment address_symbol="RAM_Start_Address" size="0x100" access="Read/Write" size_symbol="RAM_Size" name="RAM" start="0x200" />
  <MemorySegment size="0x400" access="Read" name="Boot ROM" start="0xc00" />
  <MemorySegment size="0x100" access="Read/Write" name="INFO" start="0x1000" />
  <MemorySegment size="0x80" access="Read/Write" start="0x1000" name="INFO B" />
  <MemorySegment size="0x80" access="Read/Write" start="0x1080" name="INFO A" />
  <MemorySegment size="0x1000" access="Read/Write" start="0xf000" name="FLASH" />
</Root>
