Version 2.0.5.1
|
Released 8/12/03
|
- We
have fixed a bug in the peephole optimizer script, which was causing it
to incorrectly remove a compare of a register with zero when the
register was set with an and or an xor and when the conditional branch
following needed to test carry or overflow. Now the compiler will remove
the compare with zero in this case only if the following branch is
je/jne/jz/jnz/jn. The script also checks for bis, as well as xor/and.
- We
fixed an off by one error in the new memcpy() function.
- With
hw_mul=2, char multiplies were failing. For straight multiplications,
the compiler was failing to use byte move instructions for memory
operands. For MULLSSL ops (e.g. char*char -> long), the compiler was
failing to zero-/sign-extend char operands before multiplying.
- We
have corrected a problem with the code generated when multiplying a char
variable by 3, 5, or 6, whereby the compiler was using a word access
instead of a byte access in some cases.
- We
have added a new debugging function, which allows the user to store
and/or display variable values (similar to a printf function). This
function can also be used to input values from a simulated input file.
(See help file, under: Project menu, debug options)
|
Version 2.0.5.2
|
Released 9/19/03
|
- Fix
bug in editor, related to word selection under cursor when word is on
first line, or first column of text file
- Added
project option to store object files in different folder
- Changed max number of groups from 20 to 75
- Fixed
problem with display of watched enum bytes.
- Added more C examples
- Improved C code for index computation in arrays.
- Added “Register Write” breakpoints for chips
equipped with Enhanced Emulation Modules
|
Version 2.0.5.4
|
Released 11/03/03
|
- Fixed
a bug, reported whereby the linker was failing to correctly handle
object files with coff string tables that were large enough to span two
or more object file records. (“cannot find string index A for offset B:
sym/aux C”)
- Fixed
a bug, whereby the compiler was generating incorrect code for
"*long1 -= *long2".
- Fixed
a bug, whereby an assignment of the result of a left shift to a
non-simple address (like an array reference) was incorrectly causing the
address to be evaluated twice, resulting in a redundant address
calculation.
- Added
terminal emulator feature, to debug RS232 communication
- Added
feature to reset and run a program on a target, without loading a
project
|
Version 2.0.5.6
|
Released 1/21/04
|
- Fixed
minor bug in disassembler, which incorrectly displays some instructions
using the constant generator. This has no effect on code generation
- Fixed
bug in watch window related to local variables not yet in scope when
included.
- Fixed
bug that disabled the HW multiplier option for F16x
- Fixed
a bug that messed up line numbering when source files did not end with a
carriage return
- Speed up programming of target
- Added archiving of projects using wzzip
|
Version 2.0.5.8
|
Released 3/2/2004
|
- New
“wizard” for USART
- New
feature in compiler to place RAM variables at pre-defined addresses
- Watch
support for multidimensional arrays up to dimension 4
- Watch
support for structures of any depth
- Support
of latest chips (F1610, F1611)
- Added
manual entry of data for debug printf function
- Added
some options in compiler to deal with potentially unwanted octal
constants
- Fixed
display bug in splitter RAM Window
|
Version 2.0.6.2
|
Released 5/8/2004
|
- Added
a few accelerator keys. Custom values are now shown in menu items
- Consolidated
all versions of AQ430 (AQ430, AQ430-4k, AQ430-449, AQ430-169) into one
- Fixed
a problem in watch of multidimensional arrays and structures of
structures
- Added
support for SoftBaugh’s USBP JTAG interface
- Added
support for longer names in assembler
|
Version 2.0.6.5
|
Released 6/17/2004
|
- Added
Core Simulator ! (also simulates HW multiplier if present, but not
interrupts)
- Made
the LPT port part of the project file, so that 2 instances of AQ430 can
now be run on the same PC, on different LPT ports.
- Fixed problem with launching tools by double clicking
project file
- Fixed a few errors with instruction cycles
computation (profiler, simulator)
|
Version 2.0.6.7
|
Released 8/16/2004
|
- Fixed
a few remaining problems in simulator
- Fixed
problem with long variables in printf debug function
- Fixed one problem in assembler, related to symbolic
addressing in particular cases
- Fixed an unsigned char comparison problem in C
compiler
- Added
possibility to change text and background color in editor
- Added
possibility to remove Archelon artwork (sob!)
- Added
feature to reopen source files when project is open.
|
Version 2.0.6.8
|
Released 10/11/2004
|
- We
changed AQ430PEEP to correct a problem whereby it was deleting any
compare with zero which followed a BIS instruction.
- We
changed the compiler code generator in AQ430C to generate more optimal
code for things like
long x;
x -= 0x20000;
- We
fixed a bug, which was introduced in compiler versions starting July 17,
2004, whereby, in a function containing both (1) local register variables
used in inline assembly code and (2) the use
of
one or more operators (like multiply) which are implemented by a function
call at runtime, some local register variables could be placed in registers
which would be altered by a call to a runtime function.
- In
the compiler, we increased the maximum size of the command line passed
to the C preprocessor, when called by the compiler, to 1024 bytes from
300 bytes.
- In
the compiler, we corrected a problem whereby the compiler was not
compiling code for a switch statement expression, which contained side
effects (like an assignment, a volatile variable reference, or a
function call), when the switch statement contained no cases.
- The
“store program from chip” command has been modified so that it also
saves the program as a list of data statements (extension .qdt) when
saving in TI txt mode. This can be used to include a compiled program
into another project.
|
Version 2.0.6.9
|
Released 1/7/2005
|
- Fixed
bug in display of disassembler , when constant generator was used in BIS
instruction
- There are now up to 4 possible “do not erase” zones
to protect areas of the program’s memory that the user wishes to
conserve intact. We also speeded up the programming operation when these
“exclusion zones” are used.
- We improved the debugging capabilities for code that
is on a target but not included in the current project (helpful for
bootstrap code, for example)
- We added support for fractional arithmetic in the C
compiler. See the aq430.htm help file for details
- We added support for the TI USB FET
- We added support for the MSP430F2xx series.
|
Version 2.0.7.2
|
Released 4/23/2005
|
- Beta
support for “long long” integers (64 bit arithmetic)
- Added
“add files..” choice to context menu in project window
- We
added the "+wundef" command line option to AQ430PP. The new
option
causes AQ430PP to issue a
warning message whenever you use a preprocessor
symbol which has not been
defined (except in "#if defined(name)").
- We
fixed a bug in the passing of arguments to functions with a variable
number
of arguments
- We fixed a bug in the code generation, whereby expressions
of the form a = a*k + b(where k is
a constant 3, 5, or 6) produced incorrect results.
- We
fixed a bug in AQ430C and AQ430PACK, which was causing variables
requested to be at a specific address to be placed into a segment
aligned mod 2. e.g. for the declaration "char x @ 0x801;", the
system was trying to align the one segment containing "x" mod 2, when it was clearly
requested to be at a specific address.
- We
fixed a bug in the "printf" functions, which was causing the
integer zero not to be printed by simple integer format specifiers. This
was because the minimum precision specifier for integers erroneously
defaulted to -1. It now
defaults to 1.
- We
fixed a bug in AQ430C, which was causing an information memory variable
(in _DMEM2), with a specified load address, to be placed in data RAM
instead of in information memory. e.g.
- We
fixed a bug in AQ430C, which was causing it to use a .bss directive
instead of a .zero directive to reserve space for any part of a partially initialized
variable, which was not initialized.
- We
fixed a problem in the AQ430 and AQ430C commands, whereby it was
basically impossible to pass arguments containing embedded strings to
sub-commands. The official way to do this is now to put quotes around
the whole argument and escape (be preceding with backslash) any quote
inside the argument. For
instance,
"-DFILE=\"name
containing blanks\""
- We fixed a bug in the front of AQ430C, according to
which an optimization was causing the loss of the attribute that a tree
node contained a runtime call. This problem could appear in array
subsript calculations which required a multiply and a non simple
subscript expression (like "a - 3").
- We fixed the IDE crash problem that sometimes occurred
when no target was present. It turned out that it was caused by the
checking of the “always save in TI txt” box in project options.
|
Version 2.0.7.3
|
Released 6/23/2005
|
- Support
for automatic CRC computation (see htm help file)
- Final
version for long long integers
- We
greatly decreased the runtime for long left shifts and unsigned long
right shifts by constant values > 16.
- We
improved the code for jump table switch statements by using a single
unsigned compare against the switch value instead of two signed
compares.
|
Version 2.0.7.4
|
Released 8/16/2005
|
- Added
support for bcd_add intrinsic functions
- Added
cycle count in disassembly files
|
Version 2.0.7.5
|
Released 1/13/2006
|
- Added
support for MSP430F20xx (Spy Bi Wire) and MSP430F22x4
- Added
software fix for F21x1 hardware bug
|
Version 2.0.7.6
|
Released 6/18/2006
|
- Fixes
problem with source files coming from Unix without CR+LF at end of each
line
- Now
supports TI’s EZ430-F2013 FET
|
Version 2.0.7.7
|
Released 9/2/2006
|
- Fixed
problem with support for MSP430F22x4 (SpyBiWire / 4 Wire USB JTAG)
- Added
support for Olimex JTAG-TINY (setup through usbinstall.exe)
|
Version 2.0.7.8
|
Released 2/6/2007
|
- Added
support for MSP430F23xx
|
Version 2.0.7.9
|
3/25/2007
|
- Added
support for MSP430F22x2
- Fixed
bug that may have caused problems with installations lacking some admin privileges
|
Version 2.0.7.91
|
8/21/2007
|
- Added
support for MSP430F42x0
|
Version 2.0.7.91
|
9/22/2007
|
- Added
support for MSP430F43x1
- 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 2.0.7.93
|
12/08/2007
|
- Fixed
pesky bug that could occur “randomly” when mouse went over certain
string variables before project was completely loaded.
|
Version 2.0.7.94
|
1/13/2008
|
- Fixed
bug in interrupt vector table for F24x
|
Version 2.0.7.95
|
2/24/2008
|
- Fixed
bug for watch of one dimensional arrays
- Added
support for .dat files, to supply command line parameters to C compiler
|
Version 2.0.7.96
|
3/2/2008
|
- Fixed
bug that cause loaded program to run just after being loaded, under
certain circumstances
|
Version 2.0.7.96
|
3/26/2008
|
- Reissue
of same version (no changes in qvarch430tools.exe) to fix a bug in
libraries that should have been fixed with the previous issue
(comparison of floating point numbers)
|
Version 2.0.7.98
|
5/12/2008
|
- Fixed
bug introduced in 2.0.7.96 in programming of txt file with SpyBiWire
interface
|
Version 2.0.7.99
|
10/12/2008
|
- Fixed
bug in watch of structures with bit fields
|