It seems this project has made a rod for its back by identifying all of the individual processor variants by number, rather than family. Just how does binutils care if the MSP430 is an FG439 or a F1101 or whatever, flash based or mask rom based. For that matter, why does GCC or any other tool (maybe with the exception of the debugger interface) care. [And the debugger is only a supposition because knowledge about the interface is not public, but I would expect even there, there are families. Every individual chip isnt going to be different??]

The only place it matters as far as I can tell is the script you pass to the linker to set up the memory map correctly, and the include files you use to define your peripherals.

If this is the case, what is the point in specifying every model of MSP430, when at a binary level they are all the same. The base registers are the same. The instruction set is the same. Where the vectors are is the same. Binutils doesnt care about the memory map.

If GCC and Binutils only knew about the "MSP430" (being the only architecture member i know of in the family). Life would appear to be simpler and all this incessant patching the name tables in binutils and GCC to keep up with the rapidly diversifying range of peripherals available on the one architecture would cease.

I am confused by the necessity of it.
Steven.

John Griessen wrote:

before binutils gets updated, which is likely difficult with all the processors it supports, I would like to patch it to be able to use the FG439 chips I have. Please email me if you will do a little coaching... I'm close to figuring it out...


./src/ld/emulparams/msp430all.sh

has sections that are almost ready...
mainly just need a name for the other software chunks to use... So far, I see 
ARCH stays
same within a model range, and all that differs is ROM and RAM definitions.  
the FG439
might ultimately need a different ARCH definition from the msp430x437,
since it has different analog I/O's, but I could make do with existing ARCH=msp:43
John Griessen

==============
if [ "${MSP430_NAME}" = "msp430x337" ] ; then
ARCH=msp:33
MACHINE=
SCRIPT_NAME=elf32msp430_3
OUTPUT_FORMAT="elf32-msp430"
MAXPAGESIZE=1
EMBEDDED=yes
TEMPLATE_NAME=generic

ROM_START=0x8000
ROM_SIZE=0x7fe0
RAM_START=0x0200
RAM_SIZE=1024

STACK=0x600
fi
===================

if [ "${MSP430_NAME}" = "msp430x437" ] ; then
ARCH=msp:43
MACHINE=
SCRIPT_NAME=elf32msp430
OUTPUT_FORMAT="elf32-msp430"
MAXPAGESIZE=1
EMBEDDED=yes
TEMPLATE_NAME=generic

ROM_START=0x8000
ROM_SIZE=0x7fe0
RAM_START=0x0200
RAM_SIZE=1024

STACK=0x600
fi
=================


-------------------------------------------------------
This SF.Net email sponsored by Black Hat Briefings & Training.
Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com
_______________________________________________
Mspgcc-users mailing list
Mspgcc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mspgcc-users




Reply via email to