563 lines
8.7 KiB
Bash
563 lines
8.7 KiB
Bash
#!/bin/sh
|
|
|
|
# This called by genscripts_extra.sh
|
|
|
|
MSP430_NAME=${EMULATION_NAME}
|
|
|
|
SCRIPT_NAME=elf32msp430
|
|
TEMPLATE_NAME=generic
|
|
EXTRA_EM_FILE=genelf
|
|
OUTPUT_FORMAT="elf32-msp430"
|
|
MACHINE=
|
|
MAXPAGESIZE=1
|
|
EMBEDDED=yes
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x110" ] ; then
|
|
ARCH=MSP430
|
|
ROM_START=0xfc00
|
|
ROM_SIZE=0x3e0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=128
|
|
STACK=0x280
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x1101" ] ; then
|
|
ARCH=MSP430x11x1
|
|
ROM_START=0xfc00
|
|
ROM_SIZE=0x3e0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=128
|
|
STACK=0x280
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x1111" ] ; then
|
|
ARCH=MSP430x11x1
|
|
ROM_START=0xf800
|
|
ROM_SIZE=0x07e0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=128
|
|
STACK=0x280
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x112" ] ; then
|
|
ARCH=MSP430
|
|
ROM_START=0xf000
|
|
ROM_SIZE=0xfe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x1121" ] ; then
|
|
ARCH=MSP430x11x1
|
|
ROM_START=0xf000
|
|
ROM_SIZE=0x0fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x1122" ] ; then
|
|
ARCH=MSP430x11x1
|
|
ROM_START=0xf000
|
|
ROM_SIZE=0x0fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x1132" ] ; then
|
|
ARCH=MSP430x11x1
|
|
ROM_START=0xe000
|
|
ROM_SIZE=0x1fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x122" ] ; then
|
|
ARCH=msp:12
|
|
ROM_START=0xf000
|
|
ROM_SIZE=0xfe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x1222" ] ; then
|
|
ARCH=MSP430x12
|
|
ROM_START=0xf000
|
|
ROM_SIZE=0xfe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x123" ] ; then
|
|
ARCH=MSP430x12
|
|
ROM_START=0xe000
|
|
ROM_SIZE=0x1fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x1232" ] ; then
|
|
ARCH=MSP430x12
|
|
ROM_START=0xe000
|
|
ROM_SIZE=0x1fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x133" ] ; then
|
|
ARCH=MSP430x13
|
|
ROM_START=0xe000
|
|
ROM_SIZE=0x1fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x1331" ] ; then
|
|
ARCH=MSP430x13
|
|
ROM_START=0xe000
|
|
ROM_SIZE=0x1fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x135" ] ; then
|
|
ARCH=MSP430x13
|
|
ROM_START=0xc000
|
|
ROM_SIZE=0x3fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=512
|
|
STACK=0x400
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x1351" ] ; then
|
|
ARCH=MSP430x13
|
|
ROM_START=0xc000
|
|
ROM_SIZE=0x3fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=512
|
|
STACK=0x400
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x147" ] ; then
|
|
ARCH=MSP430x14
|
|
ROM_START=0x8000
|
|
ROM_SIZE=0x7fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=1K
|
|
STACK=0x600
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x148" ] ; then
|
|
ARCH=MSP430x14
|
|
ROM_START=0x4000
|
|
ROM_SIZE=0xbfe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=0x0800
|
|
STACK=0xa00
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x149" ] ; then
|
|
ARCH=MSP430x14
|
|
ROM_START=0x1100
|
|
ROM_SIZE=0xeee0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=0x0800
|
|
STACK=0xa00
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x155" ] ; then
|
|
ARCH=MSP430x15
|
|
ROM_START=0xc000
|
|
ROM_SIZE=0x3fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=512
|
|
STACK=0x400
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x156" ] ; then
|
|
ARCH=MSP430x15
|
|
ROM_START=0xa000
|
|
ROM_SIZE=0x5fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=512
|
|
STACK=0x400
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x157" ] ; then
|
|
ARCH=MSP430x15
|
|
ROM_START=0x8000
|
|
ROM_SIZE=0x7fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=1K
|
|
STACK=0x600
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x167" ] ; then
|
|
ARCH=MSP430X16
|
|
ROM_START=0x8000
|
|
ROM_SIZE=0x7fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=1K
|
|
STACK=0x600
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x168" ] ; then
|
|
ARCH=MSP430X16
|
|
ROM_START=0x4000
|
|
ROM_SIZE=0xbfe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=0x0800
|
|
STACK=0xa00
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x169" ] ; then
|
|
ARCH=MSP430X16
|
|
ROM_START=0x1100
|
|
ROM_SIZE=0xeee0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=0x0800
|
|
STACK=0xa00
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x1610" ] ; then
|
|
ARCH=MSP430X16
|
|
ROM_START=0x8000
|
|
ROM_SIZE=0x7fe0
|
|
RAM_START=0x1100
|
|
RAM_SIZE=0x1400
|
|
STACK=0x2500
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x1611" ] ; then
|
|
ARCH=MSP430X16
|
|
ROM_START=0x4000
|
|
ROM_SIZE=0xbfe0
|
|
RAM_START=0x1100
|
|
RAM_SIZE=0x2800
|
|
STACK=0x3900
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x1612" ] ; then
|
|
ARCH=MSP430X16
|
|
ROM_START=0x2500
|
|
ROM_SIZE=0xdae0
|
|
RAM_START=0x1100
|
|
RAM_SIZE=0x1400
|
|
STACK=0x2500
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x2101" ] ; then
|
|
ARCH=MSP430x21
|
|
ROM_START=0xFC00
|
|
ROM_SIZE=0x03e0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=128
|
|
STACK=0x280
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x2111" ] ; then
|
|
ARCH=MSP430x21
|
|
ROM_START=0xF800
|
|
ROM_SIZE=0x07e0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=128
|
|
STACK=0x280
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x2121" ] ; then
|
|
ARCH=MSP430x21
|
|
ROM_START=0xf000
|
|
ROM_SIZE=0x0fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x2131" ] ; then
|
|
ARCH=MSP430x21
|
|
ROM_START=0xe000
|
|
ROM_SIZE=0x1fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x311" ] ; then
|
|
ARCH=MSP430x31
|
|
SCRIPT_NAME=elf32msp430_3
|
|
ROM_START=0xf800
|
|
ROM_SIZE=0x07e0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=128
|
|
STACK=0x280
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x312" ] ; then
|
|
ARCH=MSP430x31
|
|
SCRIPT_NAME=elf32msp430_3
|
|
ROM_START=0xf000
|
|
ROM_SIZE=0x0fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x313" ] ; then
|
|
ARCH=MSP430x31
|
|
SCRIPT_NAME=elf32msp430_3
|
|
ROM_START=0xe000
|
|
ROM_SIZE=0x1fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x314" ] ; then
|
|
ARCH=MSP430x31
|
|
SCRIPT_NAME=elf32msp430_3
|
|
ROM_START=0xd000
|
|
ROM_SIZE=0x2fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=512
|
|
STACK=0x400
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x315" ] ; then
|
|
ARCH=MSP430x31
|
|
SCRIPT_NAME=elf32msp430_3
|
|
ROM_START=0xc000
|
|
ROM_SIZE=0x3fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=512
|
|
STACK=0x400
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x323" ] ; then
|
|
ARCH=MSP430x32
|
|
SCRIPT_NAME=elf32msp430_3
|
|
ROM_START=0xe000
|
|
ROM_SIZE=0x1fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x325" ] ; then
|
|
ARCH=MSP430x32
|
|
SCRIPT_NAME=elf32msp430_3
|
|
ROM_START=0xc000
|
|
ROM_SIZE=0x3fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=512
|
|
STACK=0x400
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x336" ] ; then
|
|
ARCH=MSP430x33
|
|
SCRIPT_NAME=elf32msp430_3
|
|
ROM_START=0xa000
|
|
ROM_SIZE=0x5fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=1024
|
|
STACK=0x600
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x337" ] ; then
|
|
ARCH=MSP430x33
|
|
SCRIPT_NAME=elf32msp430_3
|
|
ROM_START=0x8000
|
|
ROM_SIZE=0x7fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=1024
|
|
STACK=0x600
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x412" ] ; then
|
|
ARCH=MSP430x41
|
|
ROM_START=0xf000
|
|
ROM_SIZE=0x0fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x413" ] ; then
|
|
ARCH=MSP430x41
|
|
ROM_START=0xe000
|
|
ROM_SIZE=0x1fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x415" ] ; then
|
|
ARCH=MSP430x41
|
|
ROM_START=0xc000
|
|
ROM_SIZE=0x3fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=512
|
|
STACK=0x400
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x417" ] ; then
|
|
ARCH=MSP430x41
|
|
ROM_START=0x8000
|
|
ROM_SIZE=0x7fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=1024
|
|
STACK=0x600
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x435" ] ; then
|
|
ARCH=MSP430x43
|
|
ROM_START=0xc000
|
|
ROM_SIZE=0x3fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=512
|
|
STACK=0x400
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x436" ] ; then
|
|
ARCH=MSP430x43
|
|
ROM_START=0xa000
|
|
ROM_SIZE=0x5fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=1024
|
|
STACK=0x600
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x437" ] ; then
|
|
ARCH=MSP430x43
|
|
ROM_START=0x8000
|
|
ROM_SIZE=0x7fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=1024
|
|
STACK=0x600
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x447" ] ; then
|
|
ARCH=msp:44
|
|
ROM_START=0x8000
|
|
ROM_SIZE=0x7fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=1024
|
|
STACK=0x600
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x448" ] ; then
|
|
ARCH=msp:44
|
|
ROM_START=0x4000
|
|
ROM_SIZE=0xbfe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=0x0800
|
|
STACK=0xa00
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430x449" ] ; then
|
|
ARCH=msp:44
|
|
ROM_START=0x1100
|
|
ROM_SIZE=0xeee0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=0x0800
|
|
STACK=0xa00
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430xE423" ] ; then
|
|
ARCH=msp:42
|
|
ROM_START=0xe000
|
|
ROM_SIZE=0x1fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430xE425" ] ; then
|
|
ARCH=msp:42
|
|
ROM_START=0xc000
|
|
ROM_SIZE=0x3fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=512
|
|
STACK=0x400
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430xE427" ] ; then
|
|
ARCH=msp:42
|
|
ROM_START=0x8000
|
|
ROM_SIZE=0x7fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=1024
|
|
STACK=0x600
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430xG437" ] ; then
|
|
ARCH=MSP430x43
|
|
ROM_START=0x8000
|
|
ROM_SIZE=0x7fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=1024
|
|
STACK=0x600
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430xG438" ] ; then
|
|
ARCH=MSP430x43
|
|
ROM_START=0x4000
|
|
ROM_SIZE=0xbef0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=0x0800
|
|
STACK=0xa00
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430xG439" ] ; then
|
|
ARCH=MSP430x43
|
|
ROM_START=0x1100
|
|
ROM_SIZE=0xeee0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=0x0800
|
|
STACK=0xa00
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430xW423" ] ; then
|
|
ARCH=msp:42
|
|
ROM_START=0xe000
|
|
ROM_SIZE=0x1fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=256
|
|
STACK=0x300
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430xW425" ] ; then
|
|
ARCH=msp:42
|
|
ROM_START=0xc000
|
|
ROM_SIZE=0x3fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=512
|
|
STACK=0x400
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430xW427" ] ; then
|
|
ARCH=msp:42
|
|
ROM_START=0x8000
|
|
ROM_SIZE=0x7fe0
|
|
RAM_START=0x0200
|
|
RAM_SIZE=0x400
|
|
STACK=0x600
|
|
fi
|
|
|
|
if [ "${MSP430_NAME}" = "msp430X" ] ; then
|
|
ARCH=MSP430x43
|
|
ROM_START=0x02000
|
|
ROM_SIZE=0x0dfe0
|
|
RAM_START=0x10000
|
|
RAM_SIZE=0x30000
|
|
STACK=0x600
|
|
fi
|