From richard at imagecraft.com Mon Mar 3 03:06:36 2008 From: richard at imagecraft.com (Richard Man) Date: Mon Mar 3 03:22:40 2008 Subject: [Icc-430] ICC430 V7.07 released Message-ID: <200803031122.m23BMcVF051571@mail.imagecraft.com> V7.07 - March 3rd, 2008 TI Supplied Files - new header files from TI - 2.3.x MSP430.DLL IDE - [ADV and PRO only] Added capability to create Library projects. Compiler [ the optimizations below should improve code size 2-4%, depending on the application ] - now generate sym(Rx) addressing mode, e.g. char buf[]; ... int i; ... = buf[i] ... would use a single addressing mode to access the item - More optimal code for some cases when comparing against a constant. (The MSP430 does not have a full set of branch instructions nor does it allow an immediate as the second operand of a CMP instruction. With some comparisons, the old code generates moving of the constant to a register. The new code adjusts the constant by one and eliminates this move) - Added CALL/RET -> BR tail call optimization - Added support for volatile tracking, with effect that the peephole and register history optimizations being more effective. Library - the low level floating point to (unsigned) long conversion function was not working correctly for numbers larger than ~16000000. // richard On-line orders, support, and listservers available on web site. [ For technical support on ImageCraft products, please include all previous replies in your msgs. ] From llchisho at paradise.net.nz Wed Mar 19 17:26:56 2008 From: llchisho at paradise.net.nz (llchisho@paradise.net.nz) Date: Wed Mar 19 18:27:02 2008 Subject: [Icc-430] Assembly labels, line numbers and NoIce Message-ID: <1205976416.47e1bd60dbed4@www.paradise.net.nz> I am using ICC430V7.06A and NoICE 8.8.6.1600 for the MSP430F1611. I have some assembly language source files in my project, and I have put double colons after the public labels and started them with an _. These routines are called from C with prototypes in an h file. The project links and runs correctly, but the names of the labels from the assembly source files are not present in NoICE. They do not appear in the DBG file either. I attempted to add .dbfunc and .dbend directives similar to the ones emitted by the C compiler in the assembly code it writes but this caused a linker crash. Adding the phony -1 and -2 line numbers fixed that but still doesn't give source-level debug. How can I make the public labels visible in NoICE ? How can I do source-level debug of assembly source ? Since first writing this I have tried V7.07beta with NoIce 9, and have got the same result. Ticking the undocumented box under Project/Options/Compiler "Generate Assembly Line Numbers for NoIce430" results in a string of messages saying that .s files cannot be found in the project directory. I generate my output files in an O directory under the project directory, and the .s files which cannot be found are C compiler output files and are in the O directory. However, something is done as all the .o files get line numbers relating to the .s files added which totally mucks up the source display in NoIce. I'm not sure quite what this is supposed to be used for and with what limitations. Perhaps we need an assembly pre-processor which takes a .asm (say) file and generates a .s file with line number definitions and function information added. Then the IDE needs to know how to use it. PS For some cases there may be an advantage in having a "#pragma raw " (or something), which would be similar in usage to "monitor" or "interrupt" but the opposite in effect in that the compiler wouldn't generate any function entry or exit code at all, and wouldn't validate parameter use and return value assignment, but would still emit the necessary directives for block start/end, line numbers etc. This would leave all code to be inserted by the programmer using inline assembly statements, or C for the brave, but register preservation would not be the compiler's job so minimal assembly functions can be tidily added to C source. This would remove the source of the empty declaration messages. Thanks, Len Chisholm. From jdurand at interstellar.com Wed Mar 19 17:47:26 2008 From: jdurand at interstellar.com (Jerry Durand) Date: Wed Mar 19 18:47:21 2008 Subject: [Icc-430] Assembly labels, line numbers and NoIce In-Reply-To: <1205976416.47e1bd60dbed4@www.paradise.net.nz> References: <1205976416.47e1bd60dbed4@www.paradise.net.nz> Message-ID: <20080320014702.A536E6E6D54@smtp.interstellar.com> At 06:26 PM 3/19/2008, you wrote: >I am using ICC430V7.06A and NoICE 8.8.6.1600 for the MSP430F1611. First, get a newer version. I've worked with the programmer there to fix/add things. My version is over 9.0. >I have some assembly language source files in my project, and I have >put double >colons after the public labels and started them with an _. These routines are >called from C with prototypes in an h file. >The project links and runs correctly, but the names of the labels from the >assembly source files are not present in NoICE. They do not appear in the DBG >file either. I've had a lot of trouble with globals not showing up. I often have to look at the map file to get the address and then enter a WATCH manually at that address. Locals always seem to work for me. Oh, and debugging on the MSP430F2xxx series can lead to some interesting problems if you use the LPM modes. I have a debug switch that keeps the processor running but simulates LPM by waiting for a timeout in a loop. -- Jerry Durand, tel: +1-408-356-3886 Skype: jerrydurand, USA Toll Free: 866-356-3886 Durand Interstellar, Inc. www.interstellar.com From richard at imagecraft.com Thu Mar 20 16:56:14 2008 From: richard at imagecraft.com (Richard Man) Date: Thu Mar 20 16:57:48 2008 Subject: [Icc-430] Eliminating RCS - Message-ID: <200803210057.m2L0vlmj057625@mail.imagecraft.com> At the next major releases, unless there is strong objection, support for the RCS will be removed. I believe it has been broken for a while since some Windows upgrade and most people use their own solution for source code management need. Let me know I am wrong on this. // richard On-line orders, support, and listservers available on web site. [ For technical support on ImageCraft products, please include all previous replies in your msgs. ]