## Changes in Release 1.1

###### Compiler

- Added binary constants which are written with a leading 0b, e.g. 0b1010 is 10 decimal. Binary constants are signalled with a warning when the -ansi command line option is given. The C preprocessor also supports binary constants.
- Corrected a problem in the switch statement as in some cases the 1.0.0 compiler would destroy the contents of a register used in the expression.
- The long double type is now treated identically to the double type when Treat 'double' as 'float' is set to Yes.
- Single-bit bitfield manipulation and access now generates much denser code.
- Correctly implemented the __monitor function attribute to support Salvo from Pumpkin, Inc.
- Fixed a corruption problem on return when a multi-register value is allocated to coincide with the function return registers.
- The compiler now fragments the code of a function which enables further size reduction optimizations by the linker.
- Code generation for 0(SP) source address is now always coded using @SP which reduces the size of code.
- for statement generation now recognizes more special forms and codes appropriately.
- Narrowing and widening conversions corrected to ensure that new registers are used when required.
- Corrected a code generation problem compiling x *= y when -mmpy specified.
- Corrected a problem in the spiller which caused incorrect code generation on reload.
- Corrected optimization applied for x & y when y is non-constant.

###### Target Interfaces

- The FET target interface now has a RAM Fill Value property that is used to fill the RAM before a program is downloaded. If this property is empty, the RAM is not filled and is left intact. You can use the RAM Fill Value as a watermark to see how far the stack descends during program execution.
- Added the PRGS430 Serial Programmer target interface to support the Texas Instruments PRGS430 serial programmer.
- Added the SoftBaugh Flash Replicator target interface to support the SoftBaugh flash replicator.
- Added the Gessler Flash Bootloader target interface to support the Gessler flash bootloader.

###### Editor

- Added a setting to allow or disallow Cut and Copy from cutting and copying the current line if there is no selection.
- Added a setting to disable the numeric keypad '–' and '+' keys from being used as Cut and Copy (as they are in Brief).
- Added themes to the Environment Options dialog.
- Made Shift+Insert a synonym for Paste in all contexts.
- Made Ctrl+Insert a synonym for Copy in all contexts.
- Made Shift+Delete a synonym for Cut in all contexts.
- Corrected a crash when editing long lines of plain text without syntax highlighting.
- Corrected syntax highlighting problems with multi-line comments and preprocessor continuations.
- Added a VHDL syntax highlighter.

###### Assembler

- Fixed PC-relative addressing mode offset computations.
- The C compilers preprocessor is now integrated into the assembler.

###### Linker

- Corrected PC-relative addressing mode offset computations.
- User symbols can now replace symbols defined in the library; required to support Salvo from Pumpkin, Inc.
- Added a few micro-optimizations including branch switching.
- The section start and end symbols have been renamed to allow them to be accessed from C.
- The linker now supports section checksum generation using the -H option.

###### Archiver

- The archiver no longer uses PKZIP format for its archives in order to be portable to Linux.

###### C Library

- Added missing __int8_lsl_asgn and __int8_lsr_asgn runtime support routines.
- Corrected__vfprint.c which causes __vfprintf_long not to recognize "%l" format strings correctly.
- Added debug_scanf function.
- The debug_getx functions now take input from the debug I/O console.

###### CrossStudio

- Added new project types for all SoftBaugh, Olimex, and TI boards.
- Added a new project wizard to assist in setting up a project.
- The New Folder dialog is reworked and presents example file filters.
- New projects now have the runtime startup code automatically placed into the project and do not use the standard startup object module.
- Solutions can now be created on drives other than the drive containing CrossStudio.
- Fixed incorrect reporting of file permissions on NTFS and network drives.
- The Evironment Options dialog now displays all properties that are also settable through the Properties Window.
- There is an all-new Build Properties dialog (Alt+Enter) that is much easier to use than the previous dialog.
- The user interface can be switched between the tabbed interface and an MDI-style interface.
- Project files can now be linked into other project files - most of the project dialogs have had to be upgraded to support this.
- Configurations now have a hidden property which causes them to be hidden from the configuration combo box.
- Externally built executables can be debugged.
- Solutions are now created using the new project wizard.
- Linker section placement can now be done using a file that is separate to the memory map file.
- Project system can create an additional output file for example S-Record.
- Special function registers window added which displays the registers defined in the memory map file used to link the project.
- Trace window improvements.
- Breakpoint dialog rehashed to support MSP430 EEM.
- Support for specifying the clock control on MSPF149 and EEM enabled parts.
- Exception support for PC not in FLASH range.
- Register write breakpoints.

###### Installer

- The installer now installs program shortcuts correctly on international versions of Windows.
- The default destination directory is now correct on international versions of Windows.

## Known Problems

We hope to fix all known problems before the next release of the software.

###### Printing

- Printing is a problem; there are a number of problems in the underlying Qt toolkit that make printing a rather hit-and-miss affair. If it works for you, that's good, and could you let us know if it does. If it doesn't and produces erratic results, we'd also like to know about it. It would help us if you could provide the make and model of the printer you are using when you send in your reports.

###### FET examples

- You must define the target property for these examples before building them.

###### Help System

- The help system content is not yet complete. We are converting our printed matter to XHTML as an ongoing activity.

###### User Interface

- Editing code templates in the Editor Properties dialog will not change the templates.