Version 3.0.0.1
|
Released 5/1/2007
|
First release
|
Version 3.0.0.3
|
Released 5/19/2007
|
* Fixed edit context menu in
text mode
* Added per project file save and restore
|
Version 3.0.0.4
|
Released 5/26/2007
|
- Fixed
simulator problem
- Added
memory use indication to make/build without load
|
Version 3.0.0.5
|
Released 6/10/2007
|
- Fixed
tab/ number of spaces problem in editor customization
|
Version 3.0.0.6
|
Released 8/12/2007
|
- Fixed
a bug in AQ430LINK, which was causing the linker to quit with an
internal error in "reorder_segs".
- Fixed
a bug in AQ430LINK, which was causing the linker to ignore ldseg=
directives when an lddata= directive (used always for the msp430x) is in
effect.
- Fixed
a bug in AQ430C, which was causing the compiler to terminate abnormally,
due to a botch in the program code, when checking to see if an
indirection through a bit field reference contains an operator which
requires the use of a function call.
- Fixed
a bug in the new floating point multiply function, that was causing the
function to return infinity instead of zero, when the exponent of the
result was too small to represent.
- Compiles
for the MSP430x now create a separate code segment for each function,
instead of for each file, being compiled. This will decrease the average
code segment size, making it much less likely that there could be a
linking failure due to being unable to fit a bunch of large code
segments into the available address space, which has a gap in the middle
for the interrupt vectors. However, any single function must take up
less than 64K.
- Fixed
bug that kept loading previous executable when new compilation of
project has errors
- Added
menu option to skip interrupts while stepping
- Added
menu option to keep warning and error messages in the output window
rather than erasing them for each new file compile
- Added menu option to insert an aq430x project in a
workspace
|
Version 3.0.0.9
|
Released 9/3/2007
|
- Added
“tabbed view” for source files
- Fixed
problem with display of individual status bits in CPU window
- We
fixed a bug which caused the register allocator to emit a "suspicious move
instruction" error when
generating
code for a multiplication of two 16 bit operands to produce a 32 bit result,
and when the option "-Vhw_mul=2" (use multiplier in unprotected
mode) was in effect.
|
Version 3.0.1.1
|
Released 9/13/2007
|
- We
fixed a bug in the code generated for register saves/restores for the msp430x,
whereby the compiler was assuming that the registers to be preserved
were in a single contiguous set, suitable for pushm/popm, when in fact
they were not.
|
Version 3.0.1.2
|
Released 9/22/2007
|
- Added support for MSP430F43x1
- Fixed
bug in File/Open when workspace is empty (used to call File/New)
- Fixed
a problem with the assembler, whereby it was restricting the range of
pc-relative addresses to (-32768,32767). It now allows a range of
(-32768,65536), on the understanding that the resulting 16 bit values
are treated as signed.
|
Version 3.0.1.3
|
Released 10/17/2007
|
- Added
support for latest MSP430 releases (MSP430F47xx, MSP430F24x, MSP430F235,
MSP430F233, MSP430F24x1,
MSP430F2410
- This release corrects a bug in the most recent linker
whereby it was failing to allocate space code a code segment with an
address specified by ldseg= in front of data segments specified by
ldseg+=, which could cause the linker to be unable to find space for the
code segment.
- The IDE will no longer warn about erasing the
calibration segment, if it is excluded from erasure in the special user
defined protected zones
|
Version 3.0.1.4
|
Released 12/08/2007
|
- Added
feature to arrange files alphabetically in projects
- Fixed
bug that could cause crash if user picked one of the last chips in the
list
- Added
support for MSP430F24x
|
Version 3.0.1.5
|
Released 1/13/2008
|
- Improved
watch of multidimensional arrays and structures of structures
- Fixed
bug with interrupt vector table for F24x
|
Version 3.0.1.7
|
Released 2/24/2008
|
- Added
support for F21x2
- Improved
watch of multidimensional arrays in structures
- Fixed
bug related to full path/ name display
- Added
support for .dat files to add command line parameters to C compiler
|
Version 3.0.1.8
|
Released 3/2/2008
|
- Fixed
bug that caused a program to run once just after being loaded, under
certain conditions.
|
Version 3.0.1.9
|
Released 3/28/2008
|
- Fixed
bug in floating point library, relative to comparison of floats
|
Version 3.0.2.0
|
Released 5/4/2008
|
- Fixed
problems with make vs build
- We
have changed the MDF file, which is built into AQ430PACK, to correct
an error whereby it was using a 16 bit branch
instead of a 20 bit branch
for the
msp430x, whenever the distance between the branch source and
the
branch target exceeded the short branch range of -1024,+1022
instructions.
This error was causing msp430 programs to fail when
the 16
bit branch instruction was used at addresses at or above 0x10000.
In order
to force code entered from the an interrupt vector on an msp430x
to be in
the lower 64K, we have made the following changes:
- aq430link.exe
now includes a default directive
ldseg=.*_IV.*+=0,0xffff
which will force any segment whose
name contains "_IV" to be placed
into the lower 64K of flash.
- _INTERRUPT
functions generated by AQ430C for the msp430x will have
"_IV" in their unique
segment name.
- The standard
startup file "cstart.asm" has had the the name of
the code segment that contains the
startup code changed to be
"cstartup$code_IV", so that
it will be linked into the lower 64K
when built with -Vmsp430x=1 in
effect.
Any user
writing an interrupt handler in assembler for an msp430x processor
should
either include "_IV" in the code segment name or else use an
individual
linker ldseg=name+=0,0xffff directive to request the linker
to put
the segment into the lower 64K.
|
Version 3.0.2.01
|
Released 6/1/2008
|
- Fixed
problem with long long arithmetic
- Added missing aql file for F22x2
|
Version 3.0.2.02
|
Released 7/27/2008
|
- Fixed
problem in watch of certain bit fields in structure
- Now
give better error message for missing labels in assembly, due to unused
C code
- Beta
support for MSP430f54xx
|
Version 3.0.2.03
|
Released 8/28/2008
|
- Fixed
bug in sscanf and sprintf which could occur in chips with memory larger
than 64K
|
Version 3.0.2.04
|
Released 11/2/2008
|
- Fixed
bug in display of sfr registers
- Added
support for Fx2xA
|
Version 3.0.2.05
|
Released 11/15/2008
|
- We
changed the C compiler to permit the code generator to allow left shifts
and right shifts of pointer types, which can
come up,
in the left shift case, if a pointer is multiplied by a power of 2.
- Fixed
a bug in the display of program memory above 0x10000 for MSP430F54xx
|
Version 3.0.2.06
|
Released 12/06/2008
|
- Fixed
a bug in the C compiler and libraries to handle hardware multiplier for
MSP430F54xx (since the multiplier registers are at different addresses).
We also now take advantage of the 32 bit HW multiplier, if applicable
- Fixed
a bug in the watch window, relative to bit fields in unions
|
Version 3.0.2.7
|
Released 2/28/2009
|
- Fixed
a bug in the C compiler, whereby, when given a declaration like _DMEM2
int x @ 0x1000; the compiler was using a .zero instead of a .bss to
reserve space for the rom memory variable.
- Added
support for the following chips: MSP430FG477, MSP430FG478, MSP430FG479
,MSP430F477, MSP430F478, MSP430F479
,MSP430F47197,MSP430F47187,MSP430F47177,
MSP430F47196,MSP430F47186,MSP430F47176, MSP430F4152, MSP430F4132
|
Version 3.0.2.8
|
Released 8/3/2009
|
- Txt
file now is always created in exe subfolder
- Fixed
bug related to running from CPU OFF mode in certain chips, notably 54xx
- Fixed
bug related to clearing info memory on 54xx (would fail every other
time, in some cases)
|
Version 3.0.2.9
|
Released 10/17/2009
|
- Added
support for MSP430F54xxa
|
Version 3.0.3.0
|
Released 12/6/09/2009
|
- Fixed
problem with sfr window for MSP430F54xxa
- Fixed problem with aql files for MSP430FG4616 and 17
|
Version 3.0.3.0
|
Released 1/30/2010
|
- No
changes to the executable file. Added RTC workaround library
(RTC_WorkaroundLib.lib) in include folder, as well as source code in
example folder
- Included
corrected .h files for MSP430x54x in include folder
|
Version 3.0.4.0
|
Released 5/15/2010
|
- Fix
bug in definition of certain chips (no HW multiplier seen)
- added
the command line option "-Vdo_switch_fix=1" to the AQ430 C
compiler, to work around a problem with the (MSP430X) MSP430F5438A,
whereby a "br label_table(Rn)" instruction was failing because
the address of the label table was being (wrongly) sign extended by the
hardware. The new command line option addresses this problem by
generating slightly different code sequence when accessing a switch jump
table. (it is inserted automatically by the IDE for 5438A parts)
- Added
new functions which safely allow access to data in flash at addresses above 0xffff. These
are
__read_extended_byte
__read_extended_word
__read_extended_long
__write_extended_byte
__write_extended_word
__write_extended_long
__erase_flash_segment
These functions will work for
the non-msp430x parts, as well.
|
Version 3.0.4.1
|
Released 10/3/2010
|
·
We fixed a problem with
ceil(), whereby it was computing ceil(0.9999) as 0.0 instead of as 1.0. The
floor() function was broken as well.
·
We fixed a
"feature" of the linker, whereby an ldseg= directive to load a
specific segment at a specific address could be silently ignored if the
segment name was found to match an ldseg= directive using a regular
expression.
·
We fixed a bug in the 32 bit
signed divide function, reported by a customer in Japan, which was causing incorrect
results when the dividend was a large negative number (<-32768) and the
divisor was positive.
·
We introduced a new installation procedure, which
should be more robust and work on newer OS
|