Version 7.32a
Build
- Updated segger-cc compiler to version 16.0.7
- Fix build checking Memory Map file modification date when Linker Script file is used.
- Fixed restoring saved VFP registers on __cxa_throw and __cxa_rethrow.
- Fixed __cxa_throw and __cxa_rethrow corrupting callee save registers.
Debug
- Fixed crash when calling SEGGER_RTT_GetKey() in a tight loop and holding down a key that generates multiple characters.
- Fixed debugger bitfield display of compiler generated DW_AT_data_bit_offset debug info.
- Updated J-Link software to version V7.92q.
Editor
- Fixed incorrect movement of multi-line cursor when cursor is below a collapsed fold.
IDE
- Fixed editor not locating cursor in the centre of the screen when selecting a result in the find window and the cursor is off screen.
- Fixed crash on startup when running on macOS Sonoma.
- Fixed incorrect positioning of combo box menus on multi display systems where the displays have been positioned at different offsets (Linux only).
- Outline window now refreshes if file being viewed is reloaded.
Version 7.32
Build
- Updated segger-cc compiler to version 16.0.6
- Updated segger-ld to version 4.38.6.
- Updated segger-rtl to version 4.24.5.
Debug
- Fixed debugger incorrectly accessing VBAR register on Cortex-R devices.
- Updated J-Link software to version V7.92a.
IDE
- String list property editor now removes text formatting when pasting.
- Find and replace window now opens editor when locating to a match found in a project file.
- Variable, disassembly and memory window address colors can now be customized using the Address color scheme entry.
- Fixed incorrect positioning of popup menus on multi display systems where the displays have been positioned at different offsets (Linux only).
System Requirements
- Linux versions now require GLIBC 2.27 and CXXABI 1.3.11 or later.
Version 7.30
Build
- Updated segger-cc compiler to version 16.0.3
- Updated segger-rtl to version 4.24.4.
- Add support for Stack Overflow Protection.
Debug
- Updated J-Link software to version V7.88g.
Editor
- Fixed Edit > Format command using incorrect start directory for .clang-format file search.
- Fixed cursor positioning when moving cursor by mouse click on Linux.
- C/C++ syntax highlighter now highlights arm_neon.h and arm_mve.h types.
- Only one editor will now be opened if the same file is opened from multiple linked locations.
Version 7.22
Build
- Updated segger-ld to version 4.38.5.
- Updated segger-rtl to version 4.24.2.
- Fix segger-cc command line for compilation of arm_mve.h.
Debug
- Fixed the V8M simulator not initializing the stack pointer register correctly under certain circumstances.
- Add support for ARM64 Simulator debug.
- Fixed crash when debug stop is activated during download.
- Updated J-Link software to version V7.88c.
Editor
- Added Text Editor > Save > Format On Save environment option.
- The Edit > Format command no longer saves the editor contents prior to running the formatter.
IDE
- Variable, register and memory window value colors can now be customized using the Value and Value Changed color scheme entries.
- Project file is sorted with case insensitivity.
Version 7.20
Build
- Updated segger-cc compiler to version 15.2.5
- Updated segger-rtl to version 4.24.1.
- Updated segger-ld to version 4.38.4.
- The Unaligned Access Support property selects the aligned/unaligned versions of mem/str functions to be linked.
- Fixed Disable Interrupts heap locking support.
- Add support for ARM64 build.
Debug
- Fixed editor breakpoints when relative paths have been supplied to segger-cc.
- Fixed editor breakpoints in included source files.
- Fixed always reading the Cortex-M CPUID register on J-Link connect.
- Fixed clearing breakpoints that have been stepped to.
- Updated J-Link software to version V7.86h.
- Fixed corrupting MSPLIM/PSPLIM registers on Cortex-M33 devices that do not have TrustZone.
- Add support for ARM64 J-Link debug.
Editor
- Fixed delimiter matching when there is a string or character literal containing an escaped backslash character between the delimiters.
- Added smart indenting for XML files.
- Added Languages > XML environment options.
- Delete key now unindents when auto indenting is enabled.
- Added preprocessor directive folding.
- Syntax colorer now colors single line doxygen style comments.
- Fixed syntax colorer ignoring the end of a multiline doxygen style comment when it comes after an incomplete command.
IDE
- Fixed find strings not being added to history when operation is started from outside of the find and replace window.
- Fixed opening the frame buffer window's context menu when another window is focused.
- Fixed code completion and code outline window not treating a .h file as a C++ file when used in a C++ project.
Version 7.12
Build
- Updated segger-cc compiler to version 15.2.2
- Fix C++ exception catching.
- Fixed library building in default installation directory on Windows machines that don't have long paths enabled.
- Rebuild of Externally Built projects will now run the clean command before the build command.
- Updated segger-ld to version 4.38.2.
- Updated the GCC/BINUTILS tools build to use the Arm GNU Toolchain 12.2.Rel1 source release.
- Add ARMv8.1-M Mainline library builds.
- Fix incorrect definition of puts in SEMIHOST (host-formatted) builds.
- Fixed emScript access to ElfFile class.
Debug
- Fixed modifying double precision floating point registers in registers window.
- Fixed modifying double precision VFP registers in registers window.
- Fixed incorrectly accessing J-Link secure/non secure registers on devices that don't have secure mode.
- Fixed single stepping of V8.1-M loop instructions.
- Updated J-Link software to version V7.86a.
- Fixed Debug | Step Over not doing build up to date check.
Editor
- Fixed editor scrolling to the end of the file when Edit > Format inserts lines.
- Added EditToggleHeaderCodeFile command (Ctrl+K,Ctrl+O).
IDE
- Find and replace window will now replace in files not currently being edited.
- Fixed multiple "Project modified externally" dialogs when project has been modified externally and an editor has been modified.
- Fixed the dashboard window's list of recent projects not being immediately updated when a new project is created or a non-existent project is loaded.
- Fixed crash when upgrading from a package version that has been removed from the package repository.
- The package upgrade button now automatically selects the latest package versions in the package manager.
- Added support for ARGB32, RGB32, RGB888, RGB565, RGB666, RGB555, RGB444 and monochrome formats to frame buffer window.
- Added auto-refresh, auto-evaluate, zoom and pixel information tooltip to frame buffer window.
- Fixed clipping of project window columns when using dark theme.
- Added save and copy commands to frame buffer window.
Version 7.10
Build
- Updated segger-cc compiler to version 15.0.1
- Updated segger-ld to version 4.38.0.
- Updated segger-rtl to version 4.22.0.
- The $(StudioDir)/lib directory is now writable, libraries are built from source code as required.
- The SEGGER C++ library package is now supplied as source code and built into the $(StudioDir)/lib directory as required.
- Add support for 0X hexadecimal prefix in debug expressions.
- Add "Supply Input Character Set" and "Supply Execution Character Set" project properties.
Debug
- Updated J-Link software to version V7.82c.
IDE
- Fixed prompt to install missing packages not appearing when manually installing packages and no package list has been downloaded.
Version 6.40
Build
- Updated segger-cc compiler to version 15.0.0
- Fixed External Build handling of embedded quotation marks in preprocessor defines and additional compiler options.
- Add support for Cortex-M85 processor.
- Added "Package > Package Directory" solution property.
- Updated the GCC/BINUTILS tools build to use the Arm GNU Toolchain 11.3.Rel1 source release.
- Changed "ARM Library Architecture" project property default to "Default".
- Package libraries now available for Library and Object File project types.
- Updated the LLVM/Clang tools build to use the 15.0.0 source release.
- Fixed "Generate Listing File" when using segger-cc/clang compilers.
- Fixed arm_neon.h so that it can compile with both segger-cc and clang compilers.
- Fixed usage of llvm LTO with compiler driver.
- Removed clang and segger-cc-ng binaries from distribution.
- Updated segger-ld to version 4.36.0.
- Updated segger-rtl to version 4.20.0.
Debug
- Add simulator support for primask, basepri registers.
- The Restrict Memory Access option applies to backtracing.
- Reassigned Alt+F11 to do instruction single step.
- Fixed unsigned decimal and octal display when Show Digit Separator is used.
- Fixed simulation of ARM encoded rev16/revsh instructions.
- The secure/non-secure state of Cortex-M23/Cortex-M33 devices is displayed in the status bar.
- Add option Show Struct Offsets to variable display windows.
- Add support for duplicate names in locals display.
- Add prompt for array slice in variable display windows.
- Fixed simulator clearing the execution trace on debug go.
- Execution trace window now locates to the last entry by default.
- Fixed incorrect % calculation in Execution profile window when used with J-Link.
- Updated J-Link software to version V7.82.
Editor
- Fixed Edit > Selection > Decrease Line Indent when line is below a collapsed fold.
IDE
- Added parallel download and install to package manager.
- Renamed Add Existing Project to Add Link To Existing Solution.
- Add Environment > Startup > Sort Project File On Save environment option which defaults to Yes.
- Add Import Linker Script action to project explorer context menu.
- Fixed graying of inactive code for header and assembly code files.
- Fixed preprocessor tools to use segger-cc when it is set as the compiler variant.
- Add Import CMake Generated Ninja Project to Import Project menu.
Version 6.34
Build
- Updated segger-cc compiler to version 14.2.1
- Updated segger-cc-ng compiler to version 14.92.0
- Fixed Source Navigator/Analyze command lines for libcxx projects.
- Fixed use of "Unwind Tables" with segger-cc compiler.
- Updated the LLVM/Clang tools build to use the 14.0.6 source release.
- Updated segger-ld to version 4.34.2.
- Updated segger-rtl to version 4.18.0.
Debug
- Fixed crash with watch window.
- Fixed crash with quick watch window.
- Updated J-Link software to version V7.70a.
Editor
- Fixed editor using incorrect file encoding when file is opened when a breakpoint is hit.
IDE
- Fixed license manager not allowing ARM and RISC-V licenses to be installed on one J-Link.
Version 6.32
Build
- Fixed percentage memory used calculation.
- Add "Library Heap Locking" project property.
Debug
- Add Show Digit Separator to variables and registers windows.
- Updated J-Link software to version V7.66c.
Editor
- Multi-line comments can now be folded.
- Fixed removal of editor tooltips when mouse cursor moves away.
- Added collapsed fold preview tooltip.
IDE
- Dark theme is now supported on macOS.
- Fixed crash when continue to debug used with no executable file.
- ANSI escape codes are now removed when copying text to the clipboard from the text build log.
- Add existing file now uses the standard native file open dialog on Windows.
Version 6.30
Build
- Updated segger-cc compiler to version 14.0.1
- Updated segger-cc-ng compiler to version 14.90.1
- The C++ new operator now calls abort() on failure.
- Add "Analyze Command" project properties.
- Changed "ARM Architecture" project property default to "None".
- Fixed quoted zero length command line arguments being discarded when spawning processes.
- Updated the LLVM/Clang tools build to use the 14.0.0 source release.
- Updated the GCC/BINUTILS tools build to use the Arm GNU Toolchain 11.2-2022.02 source release.
- Stack Usage window now works without linker relocations section.
- Updated segger-rtl to version 4.16.0.
- Updated segger-ld to version 4.34.1.
- Fixed LTO support for big-endian targets.
- Updated default libcxx packages to version 1.06
Debug
- Add simulator support for vcvt[bt].f64.f16/vcvt[bt].f16.f64 instructions.
- Updated J-Link software to version V7.64c.
- Fixed Step Into debugging start.
Editor
- Fixed incorrect column selection when file contains tabs and there are collapsed folds.
- Fixed incorrect syntax coloring after reloading externally edited file.
- Text decoding is now verified when a file is loaded. This can be disabled using the Text Editor > International > Verify Text File Decoding environment option.
- The Text Editor > Visual Appearance > Font Rendering environment option now defaults to Auto.
- Improved detection of proportional width fonts.
- Improved rendering performance of text containing proportional width characters or tab characters.
- Fixed incorrect spacing between lines when using certain fonts and font sizes.
IDE
- Invalid filename characters are now removed when pasting text into the new project/file dialog's name field rather than preventing the paste altogether.
- Fixed disassembly window reload when object file has been modified externally.
- Print preview can now be scrolled using mouse wheel.
- Fixed license manager allowing invalid license activation strings to be installed.
Installer
- Added --full-install and --minimal-install command line options.
Version 6.22
Build
- Updated segger-cc compiler to version 13.2.2
- Updated segger-rtl to version 2.30.0.
- Updated segger-ld to version 4.16.1.
Debug
- Fixed crash tracing 2 byte address ranges with J-Trace Pro.
- Updated J-Link software to version V7.62b.
- Fixed RTT input on simulator target.
Editor
- Fixed the entering of characters using input method editors (IME).
IDE
- Increased large icon DPI threshold.
- Fixed incorrect width of build log's status column on high DPI displays.
- Progress bar color can now be customized.
- Fixed reading of tools.xml file containing DOS format line breaks.
Licensing
- Fixed crash using the license manager when there is no solution loaded.
Version 6.20
Build
- Updated segger-cc compiler to version 13.2.1
- Updated segger-cc-ng compiler to version 13.93.1
- Fixed integer range selection for segger-ld alignment options.
- Updated segger-ld to version 4.30.0.
- Updated segger-rtl to version 4.10.0.
- Fixed Clean executing pre/post build commands.
- Updated the LLVM/Clang tools build to use the 13.0.1 source release.
Debug
- Updated J-Link software to version V7.62.
Editor
- Added code folding.
- Added Edit > Others > Toggle Split Window.
- Added Text Editor > Visual Appearance > Show Caret Position In Vertical Scroll Bar option.
- Added Text Editor > Visual Appearance > Show Breakpoints In Vertical Scroll Bar option.
- Added Text Editor > Visual Appearance > Show Bookmarks In Vertical Scroll Bar option.
- Added Text Editor > Visual Appearance > Show Errors In Vertical Scroll Bar option.
- Added Text Editor > Visual Appearance > Show Warnings In Vertical Scroll Bar option.
- Improved appearance of gutter icons on high resolution displays.
- Fixed crash using Edit > Selection > Increase Line Endent when virtual space is enabled and a block of text is selected extendin past the end of the file.
- Fixed syntax coloring of integer literals containing single quote separators.
- C/C++ syntax highlighter now highlights stdint.h types.
- The Text Editor > Visual Appearance > Font Rendering environment option now defaults to Proportional.
IDE
- Added pkg command line package manager tool.
- Environment > User Interface > Show Large Icons In Toolbar environment option now defaults to Auto.
- Terminal window color scheme can now be customized.
- Added support for 8-bit and 24-bit color selection escape codes in terminal window.
- The Open Linker Map File project explorer option now opens HTML map files in external web browser.
Installer
- Added optional installation of big and little endian libraries.
- Added optional installation of default libcxx packages.
Version 5.70
Build
- Updated segger-cc compiler to version 13.0.1
- Updated segger-cc-ng compiler to version 13.92.1
- Add macro $(MemorySegments) to link pre/post build commands.
- Fixed section naming of segger-rtl assembly coded functions.
- Updated segger-ld to version 4.22.1.
- Added "Generate Listing File" project property.
Debug
- The macro $(MemorySegments) is now the default memory simulation parameter.
- Updated J-Link software to version V7.60c.
IDE
- Fixed paste keyboard accelerator being handled by editor when focused in the find in files dialog (macOS only).
- Fixed the 'Flat Search Result Output' checkbox in the find and replace window's settings dropdown not showing the current state.
Version 5.68
Build
- Updated segger-cc compiler to version 13.0.0
- Updated segger-cc-ng compiler to version 13.91.1
- Fixed arm_neon.h so that it can compile with both segger-cc and clang compilers.
- Updated segger-ld to version 4.18.0.
- Updated segger-rtl to version 2.30.0.
Debug
- Updated J-Link software to version V7.58b.
Editor
- Improved performance of delimiter matching when editing a large file.
IDE
- Fixed preprocessor tools to use segger-cc when it is set as the compiler variant.
Installer
- Fixed Linux file association.
Version 5.66
Build
- Updated segger-cc compiler to version 12.4.0
- Updated segger-cc-ng compiler to version 12.95.0
- Updated the GCC/BINUTILS tools build to use the GNU ARM Embedded Toolchain 10.3-2021.10 source release.
Debug
- Fixed size display of unsized arrays in variables display.
- Display C file level statics and C++ static members in globals window.
- Updated J-Link software to version V7.56d.
IDE
- The Set Active Project dialog now initially selects the current active project.
Version 5.64
Build
- Updated segger-rtl to version 2.28.0.
- Updated the LLVM/Clang tools build to use the 13.0.0 source release.
- Updated segger-ld to version 4.16.1.
Debug
- Updated J-Link software to version V7.56a.
Editor
- Fixed tab characters not being inserted when in block selection mode.
- Fixed positioning of cursor when carrying out a block insertion past the end of a line and the Use Tabs option is set to Yes.
- Editor now syntax colors files with .html file extensions.
IDE
- Fixed problem reading the environment.xml file on certain systems.
- Project Explorer context menu action Save Solution As... now generates a sorted project file.
Version 5.62
Build
- Updated segger-cc compiler to version 12.2.4
- Updated segger-cc-ng compiler to version 12.93.2
- Updated segger-rtl to version 2.24.0.
- Fixed removing of project output files when project items are removed/added/excluded.
- Fixed -show option for emBuild.
- Updated the GCC/BINUTILS tools build to use the GNU ARM Embedded Toolchain 10.3-2021.07 source release.
- Updated segger-ld to version 4.14.0.
Debug
- Display secure/non-secure MSPLIM, PSPLIM in CPU register group.
- Fixed crash when displaying libcxx containers.
- Fixed simulated pkhbt, pkhtb instructions.
- Fixed variable view tooltip truncating uint64_t decimal values to 19 digits.
- Fix simulator implementation of stm!/push when the base register is stored.
- Add array slice to debug expressions.
- Updated J-Link software to version V7.54b.
Editor
- Fixed syntax coloring of numerical escape codes.
- Fixed syntax coloring of #include filenames.
- Fixed incorrect indentation when inserting a tab character before another tab character.
IDE
- Fixed the find in files dialog not remembering the "Search In" selection between sessions.
- Fixed the find in files dialog not enabling the find button under certain circumstances.
- Fixed font selection when using macOS 12 (Monterey) BETA.
- The project explorer's build configuration combo box now displays the configuration name as the tooltip if the configuration name is wider than the combo box.
- The build configuration search now matches on each word rather than the entire string.
- Assembly code syntax colorer now colors FIXME, ATTENTION and Lint comment tags.
- Package manager groups can now be collapsed and expanded.
- Double clicking in terminal windows now selects words.
- Added BuildLinkProject command (Ctrl+P, K).
- Added OpenLinkerLogFile command (Ctrl+P, G).
- Added OpenLinkerMapFile command (Ctrl+P, M).
- Added "Show Labels In Disassembly" and "Show Source In Disassembly" environment options to disassembly window context menu.
- Fixed project window keyboard accelerators not being enabled and disabled correctly when selecting project nodes.
- Fixed manual package installation not selecting all dependee packages for installation.
- Fixed display of find and replace window results containing tabs.
Version 5.60
Build
- Updated segger-cc compiler to version 12.2.1
- Updated segger-cc-ng compiler to version 12.91.6
- Changed the default Library Optimization to Balanced.
- Updated the LLVM/Clang tools build to use the 12.0.1 source release.
- Updated segger-ld to version 4.12.1.
- Updated segger-rtl to version 2.22.0.
Debug
- Add simulator support for FPv5 vrint/vcvt instructions.
- Updated J-Link software to version V7.52b.
IDE
- Fixed crash after closing disassembly window.
- Fixed crash when using find in files to search in the current document and there is no editor currently focused.
- Build log can now handle colored compiler diagnostics.
- Floating point registers will now be displayed in floating point format when Decimal format is selected.
- Manual package install now removes existing version of package if already installed.
- Improved appearance of macOS combo box dropdowns containing icons.
- Fixed external tools not appearing when the match element is omitted from the tool definition in external tools file.
- Fixed crash when carrying out clipboard operations on files located in output files folder.
- Fixed display of tab characters in terminal emulator window.
- Fixed property values in project explorer not updating when modified using dark theme.
- The selected folder in the find and replace window is now persistent between sessions.
- Opening the new project wizard while debugging now shows the "Stop debugging?" prompt.
- Fixed editor grouping C/C++ source and header files together in the "Single Title Button For All Documents" file selection menu.
Version 5.50
Build
- Updated segger-cc compiler to version 12.0.1
- Updated segger-cc-ng compiler to version 12.91.0
- Add Balanced segger-rtl library builds, selectable with Library Optimization property.
Debug
- Updated J-Link software to version V7.20b.
IDE
- Memory usage window no longer displays zero length segments.
- Fixed drag and drop of files on macOS.
Version 5.44
Build
- Updated segger-cc compiler to version 12.0.0
- Add project property Enable Use Of __cxa_atexit.
- Updated segger-ld to version 4.10.1.
- Updated the LLVM/Clang tools build to use the 12.0.0 source release.
- Add support for target input when RTT/SWO Library I/O is used.
- Set the compiler property Use Builtins default to Yes.
Debug
- Copy text selection in the memory window now copies the exact text to the clipboard.
- Fixed syntax coloring of disassembly when visible whitespace option is enabled.
- Add support for ITM_RxBuffer/ITM_RXBUFFER_EMPTY for target input.
- Updated J-Link software to version V7.20.
Editor
- Fixed scrolling with horizontal scroll wheel.
- Go to definition and declaration operations now highlight the symbol being searched for.
- Fixed the previous horizontal scroll position not being correctly restored when opening a solution and the editor is not docked in the default dock site.
- Fixed the previous cursor column position not being restored when opening a solution.
- C/C++ syntax coloring is now applied to files with no extension.
- Added "String", "String Delimiter", "String Escape", "XML Delimiter", "Spelling Error", "Line Number" and "Line Number Highlight" to customizable color scheme.
- Added EditDeleteLine command (Ctrl+Shift+L).
- Fixed text appearing behind editor scroll bars when using dark theme.
IDE
- Added Export to Text Editor to debug terminal.
- Line editor now scrolls when cursor reaches button or status message rather than removing it.
- Fixed file selector combo box not moving file list if parent window is moved.
- Fixed file selector combo box keeping file list on top of all windows.
- Fixed selecting of files from the file selector combo box file list when using the mouse.
- Find dialogs now preserve the state of the show options button.
Version 5.42
Build
- Fixed BinaryFile.pokeUint32() script function ignoring the littleEndian option.
- Add support for ARMv8.1-M architecture and Cortex-M55 processor.
- Fixed display of multi-line ltollvm errors and warnings in tasks output window.
- The build macro $(RelInputDir) is set to dot for files that are not relative to the project.
- Updated segger-cc compiler to version 11.4.4
- Updated segger-cc-ng compiler to version 11.95.1
- Updated segger-rtl to version 2.4.2.
- Updated segger-ld to version 4.10.0.
- Updated the LLVM/Clang tools build to use the 11.1.0 source release.
- Add project property Compile C Files As C++.
Debug
- Fixed GDB server target interface not working with GDB servers that do not support no ACK mode.
- Fixed crash when GDB server terminates during debug session.
- Fixed crash when debugging if evaluating a preprocessor definition that expands to itself.
- Improved error reporting if download fails using J-Link target interface.
- Changing the PC value in the registers window will now updated the debugger windows.
- The registers window splits up the cfbp register group into individual registers.
- Fixed clang/segger-cc use of WCHAR_MAX with "Wide Character Size" set to "32-Bit".
- Fixed output window still showing 'Working' after chip erase operation has completed.
- Updated J-Link software to version V6.98c.
Editor
- Fixed syntax coloring of XML comments.
- Fixed incorrect syntax coloring of certain C/C++ comments containing ampersand characters.
- Fixed syntax coloring of XML documents when visible whitespace option is enabled.
- Fixed highlighting of text containing tab characters.
- Fixed highlighting of text containing whitespace characters when visible whitespace option is enabled..
- Fixed syntax coloring of single line comments started with the '@' character in ARM assembly code.
- The editor now supports highlighting of C/C++ raw string literals.
- Improved graying of inactive code on lines containing C preprocessor directives.
- Fixed duplicated " or < characters when selecting #include code suggestions.
- Scroll wheel can now be used while selecting text with the mouse.
- Auto-indentation now uses the indentation level of the last non-empty line if enter is pressed on an empty line.
IDE
- Project Explorer context menu action Convert to Regular Folder now operates recursively and can subsequently be modified like a regular folder.
- Fixed edit actions (cut, copy etc) on project nodes in Project Explorer.
- Fixed Code Outline window not updating when editor is saved.
- Dropping project files onto the dashboard window will now open the project in the project explorer.
- Manual package installation now warns of package dependency errors when the depdendee package is unknown to the package system.
- Fixed crash when activating J-Link license and user does not have permission to access J-Link.
- Line numbers are now shown in find and replace results.
Version 5.40
Build
- Replace Run Static Code Analyzer with Analyze action on project explorer context menu.
- clang-tidy now used for Static Code Analyzer, checks are specified in project property Clang Tidy Checks.
- Add project property Analyze After Compile to enable the analyzer to run when a source file is compiled.
- Updated the LLVM/Clang tools build to use the 11.0.1 source release.
- Updated segger-cc-ng compiler to version 11.93.2
- Updated segger-cc compiler to version 11.4.3
Debug
- Added 64-bit view to memory window.
- Updated J-Link software to version V6.94a.
- Add support in registers window to display double precision registers in various NEON formats.
- Add debug support for restrict types.
IDE
- Fixed memory usage window incorrectly representing empty sections.
- Added linker and section placement chooser to new Generic project types.
- Debug terminal no longer erases line if the line been output ends with "\r\r\n".
Version 5.34
Build
- Debug support added to gcc LTO built executables.
- Fixed gcc LTO support for C++ programs that have the same symbol defined multiple times.
- Fixed llvm LTO support discarding weak symbol definitions.
- The build macros $(RelInputDir) and $(RelInputPath) are now defined for project level build commands.
- Updated SEGGER linker to version 4.6.0.
- Fixed section renaming when using clang compiler.
- Escape ; in exported build commands on Linux/macOS.
- Updated segger-cc compiler to version 11.2.2
- Updated the GCC/BINUTILS tools build to use the GCC ARM Embedded Toolchain 10-2020-q4-major source release.
- Updated segger-cc-ng compiler to version 11.93.0
Debug
- Fixed simulator setting carry flag on thumb2 register shifted lsls, lsrs, asrs and rors instructions.
- Updated J-Link software to version V6.92.
- Add support for displaying double precision registers d16-d31 with J-Link target interface.
IDE
- Fixed memory usage window incorrectly representing sections that span multiple segments.
Version 5.32
Build
- Add Linker Search Path option to linker options.
- Fixed double counting of initialized data size statistic in project explorer.
- Fixed lock up when removing Externally Built projects that have the Clean Command property set.
- Updated SEGGER linker to version 4.2.0.
Debug
- Improved type interpretation for STLPort, libstdc++ and added support for libc++.
- Add support for .debug_macinfo debug sections.
- Updated J-Link software to version V6.88b.
IDE
- Improved appearance of memory usage windows when window is small.
Version 5.30
Build
- .icf files are now distributed in native EOL style.
- Add Disable Function Inlining option to code generation options.
- Optimization levels 0-4 are now supplied to the llvm LTO compiler.
- Improved import of projects containing multiple post build steps (Nordic edition only).
- Updated segger-cc compiler to version 11.2.0
- Updated segger-cc-ng compiler to version 11.91.2
Debug
- Fixed umaal implementation in simulator.
- Fixed Debugger > Restrict Memory Access using ELF file to determine target address ranges.
- Added Debug > GDB Server > Breakpoint Types project option.
- Updated J-Link software to version V6.88a.
Version 5.20
Build
- Double clicking on HTML linker map file in project explorer will now open the file in a web browser.
- Symbol renaming of __vfprintf/__vfscanf/__do_debug_operation done by linker command-line rather than in generated ld script.
- rtti can now be used without exceptions enabled.
- Fixed crash when adding files to project folder with no project node selected.
- Updated SEGGER linker to version 3.12.0.
- Added --map-listing-with-comments and --no-map-listing-with-comments.
- Added --map-listing-prefer-adr and --no-map-listing-prefer-adr.
- Added --map-listing-prefer-ldr-literal and --no-map-listing-prefer-ldr-literal.
- Changed map sections selected by each verbosity level.
- Upgraded to use latest SEGGER Disassembler with instruction set decoding fixes.
- Updated the LLVM/Clang tools build to use the 11.0.0 source release.
- Updated segger-cc-ng compiler to version 11.91.1
- Updated segger-cc compiler to version 11.0.3
- Updated SEGGER Compiler/Assembler/Linker to Release 20 October 2020
- Fixed clang/segger-cc LTO build when Keep Assembly Source enabled.
- Fixed clang/segger-cc compiler option for Merge Globals.
- Added SWO to Library I/O option.
Debug
- Object file disassembly now contains intermixed source code.
- Fixed NaN detection in simulator.
- Improved disassembly window's update speed when scrolling.
- Updated J-Link software to version V6.86e.
Editor
- Fixed extension of multi-line cursor after multi-line text insert.
- Fixed matching of delimiters that are within strings.
- Fixed tab characters not being used for auto indentation when tabs are enabled.
- Fixed loading of files from a file system that does not support file locking (Windows only).
IDE
- Fixed project explorer's Open With > System Web Browser menu option doing nothing on Linux.
- Fixed opening of package source files from help contents window.
- Fixed file selector dialog not remembering selected file type filter.
- Fixed GUI locking up when find in files on large files.
Version 5.10
Build
- Correct names of 64-bit clz/ctz helper functions.
- Fixed vfscanf implementation always including support for character classes.
- Added missing wide character, float point implementations of vfprintf.
- Add support for ARMv8 architectures to intrinsics.h.
- Fixed passing Additional Assembler Options to compile step assembler command.
- Updated SEGGER linker to version 3.00.
- Add SEGGER RTL includes/libraries and project option to select.
- Add Run Preprocessor option to assembler options.
- Updated the GCC/BINUTILS tools build to use the GCC ARM Embedded Toolchain 9-2020-q2-update source release.
- Fixed helper_name definition in SEGGER_Thumb_Startup.s
- Added BinaryFile.loadAppend() script function.
- Updated SEGGER compiler to version 10.6.2
Debug
- Add Confirm Automatically Build Before Debug environment option.
- Improve cast support in debug expressions.
- Error now displayed when GDB server breakpoints cannot be set.
- Add Erase All project property.
- Fixed watch windows resetting the radix of child nodes when parent node is selected.
- Replace Clear Disassembly Breakpoints On Debug Stop with Disassembly Breakpoints environment option.
- Source breakpoints are shown in the disassembly window and vice-versa.
- Add debugger project option Alternative LDR Disassembly.
- Updated J-Link software to version V6.82c.
Editor
- Fixed code formatter corrupting characters that cannot be represented using Latin 1 character encoding.
- Fixed code formatter marking file as modified when it has made no changes to the file.
- Fixed code formatter removing all breakpoints and bookmarks.
- Fixed file auto recovery appending characters to the end of recovered file in some circumstances.
- Updated code templates to fit SEGGER coding standard.
- Selection highlight is now visible on text that has a background color specified in the color scheme.
- Fixed syntax coloring of assembly files not working when visible whitespace is enabled.
- Shift+Tab now reduces indentation of current line when no text has been selected.
- Text editor's horizontal scroll bar now uses maximum line length for maximum scroll value.
- Changed the Linux version's default keyboard shortcut for the EditUppercase command to "Ctrl+K, U" in order to avoid a clash with the Ibus input method's default Unicode Code Point shortcut. The original key sequence of "Ctrl+Shift+U" remains defined as an alternative shortcut.
- Added Edit > Selection > Toggle Comment (Ctrl+K, Ctrl+/) command.
- Selection comment and uncomment operations now add and remove comments at indentation level of selection rather than only at the start of the line.
- Added syntax highlighting for Python source files.
- Fixed inactive code coloring being cleared when file is saved.
- Fixed navigation commands being disabled when file is saved.
- The Edit > Others > Duplicate (Ctrl+D) command will now duplicate selected text.
- Spell check now ignores camel case words.
IDE
- Fixed launcher presenting option to select from two identical versions of ES when 32-bit Windows variant is installed on 64-bit Windows system.
- Fixed crash when opening editors on project load.
- Fixed the restoring of main window position when located on a display arranged above or to the left of the display containing the menu bar (macOS only).
- Fixed context menus not appearing on a display arranged above the display containing the menu bar (macOS only).
- Fixed crash when starting and stopping the debugger using the editor toolbar buttons.
- Symbol browser, watch, trace and register windows now save exported text files to the project directory by default.
- Memory usage window now shows the percentage used of segments and sections.
- Build summary now shows size of segments.
- Memory window columns are now grouped in auto column mode.
Licensing
- Fixed crash when closing license dialog while request for free license activation is in progress.
Version 4.52
Build
- Fixed and improved definitions of wchar_t, WCHAR_MAX and WCHAR_MIN in header files.
- Fixed output of floating point numbers using printf when precision value is 1 and the Code > Printf/Scanf > Printf Floating Point Supported project property is set to Float.
- Fixed nRF Connect SDK project configurer error when an attribute value contains a quote character.
- Updated the LLVM/Clang tools build to use the 10.0.0 source release.
- Added Windows > Project Explorer > Check Solution Target option.
- Files now appear in alphabetical order when dragging and dropping them into a project explorer folder.
- Updated SEGGER compiler to version 10.0.0
- Fixed Left-justify printf format directive.
Debug
- Fixed connection failure when using "IP tunnel" in the J-Link > Host Connection property.
- Fixed source file identification when debugging multiple elf files.
- Debug > Debug With Ozone now uses the correct default Ozone installation location when no executable is specified (macOS only).
- Updated J-Link software to version V6.70a.
Editor
- Fixed syntax coloring of hex floating point constants.
- Added Text Editor > Visual Appearance > View Whitespace option.
- Fixed block editing on lines containing tab characters.
- Added Edit > Others > Toggle Column Guide.
IDE
- Added new solution launcher that starts the appropriate variant of Embedded Studio if the target attribute is defined in the solution. This can be enabled and disabled using the Environment > Launcher Enabled environent option.
- Fixed appearance of memory usage windows when window is small.
- Fixed display of non-printable characters in binary editor.
- The binary editor font can now be specified using the Environment > User Interface > Application Monospace Font option.
- macOS application bundle paths can now be used when specifying the location of external executables.
- First run project now created only if one does not exist already.
- Fixed first menu item sometimes being selected when project explorer context menu is opened with mouse or track pad (macOS only).
- Fixed display of non-printable characters in binary editor.
Version 4.50
Build
- Updated SEGGER compiler to version 1.12.
Debug
- Fixed crash with ElfDwarf files containing .debug_types section.
- Updated J-Link software to version V6.62a.
- Fixed timeout problems with TargetInterface.runFromToAddress (and variants) when used with J-Link target interface.
IDE
- Fixed crash after deleting entries from clipboard ring window.
- Fixed dashboard window's package status box not returning to green after all packages have been updated.
Version 4.42
Build
- The User Include Directories are supplied to the assembler to support .include and .incbin directives.
- Updated the LLVM/Clang tools build to use the 9.0.1 source release.
- Fixed lock up when removing Externally Built projects that have the Clean Command property set.
- Corrected integerization of floating values (Thumb-2 instruction set only).
- Fixed new project wizard's build configuration selector selecting incorrect configurations with some project templates.
Debug
- Add cJTAG to Target Interface Type project property.
- Fix cycle counter update for v7m targets.
- Fixed displaying breakpoints on code lines in startup completion symbol before startup completion has occured.
- Add embOS, FreeRTOS and ChibiOS threads scripts to $(StudioDir)/samples.
- Updated shipped J-Link software to V6.62.
Editor
- Fixed block uppercase and lowercase operations when block has been marked from top right to bottom left.
IDE
- Fixed .elf files not appearing in the Target > Download File > Download Elf File... and Target > Verify File > Verify Elf File... file browsers.
- Keyboard options dialog now displays command descriptions as a tooltip.
Version 4.40
Build
- Changed compiler optimization levels. Optimization levels for existing projects will still work as expected.
- Fixed hard fault when calling V6M floating point library functions.
- Fixed generation of projects from a project template when file nodes have parent folder nodes containing no files.
- Updated the GCC/BINUTILS tools build to use the GCC ARM Embedded Toolchain 9-2019-q4-major source release.
- Added Use Compiler Driver project property.
- Added fixed point implementation of expf selected when Library Optimization is set to Fast.
- Project explorer code and data size is now displayed as bytes when less than 1K.
- Updated nRF MDK package included with Nordic distribution to version 8.29.0.
- Project property Access Variables Within Memory Map Only changed to Restrict Memory Access.
- Changing the ARM Core Type project property now updates the ARM Architecture property.
- Supplied SEGGER compiler and added SEGGER to the compiler project option.
Debug
- Fixed crash when PC Sampling used with J-Link.
- Increased the nested structure depth that can be displayed in watch windows.
- Add Load Begin Script and Load End Script project properties.
- SVD dim elements can now be specified as hex numbers.
- Updated shipped J-Link software to V6.60.
Editor
- Fixed text editor auto recovery duplicating end-of-line terminators when file being edited is in DOS format on a UNIX system.
- Fixed incorrect calculation of caret width when using proportional fonts.
- Added missing close button on code editor find and replace dialog.
IDE
- Fixed broken dashboard link to first run Hello project.
- Fixed menu descriptions not appearing on status bar (Windows and Linux only).
- Fixed crash whilst using package manager on some macOS Catalina machines.
- Fixed resizing of device selection dialog.
- Ctrl+F5 is now mapped to Debug.Break command by default rather than DebugExecuteActive.
- Fixed resizing of property editor dialogs.
- Fixed IDE not responding after closing project and clicking cancel option if session file cannot be written.
Installer
- Linux installer now installs J-Link udev rules file.
- Added additional file icons in order to improve appearance at smaller sizes (Linux only).
Licensing
- Fixed inability to remove licenses with Linux license manager.
Version 4.30
Build
- Fixed display of combined regions in memory usage window.
- Updated the LLVM/Clang tools build to use the 9.0.0 source release.
- stddef.h offsetof macro now uses _builtin_offsetof.
- Fixed Windows > Project Explorer > Read Only Data in Code option working the wrong way around.
- Updated SEGGER linker to version 2.34.
- Add build environment option to use the compiler driver cc.
- Faster floating point performance when linking with libraries optimized for speed.
Debug
- Fixed simulator leaving pc on next instruction on b . detection.
- Add Load Additional Projects project property to enable a project to load the outputs of other projects.
- Fixed single stepping when using GDB server target connection.
- Added Debug > GDB Server > Read Timeout and Debug > GDB Server > Write Timeout options.
- Fixed GDB server target connection permitting FLASH erase regions to extend past the end of FLASH.
- Updated shipped J-Link software to V6.52d.
Editor
- Fixed crash when using Edit > Column Tidy and a comment is selected.
- Fixed auto-complete suggestion being inserted when enter key is pressed immediately after closing suggestion dialog with mouse click.
IDE
- Fixed find in files dialog not disabling find button when search text field is empty.
- Fixed crash when using Find References on a preprocessor definition defined on the command line.
- Fixed project explorer not sorting tree when files are added using drag and drop.
Version 4.22
Build
- Add Generate Assembler Listing File project property.
Debug
- Added Debugging > GDB Server Options > Register Access property.
- Added support for pyOCD GDB server.
- Add support for ARM semihosting.
- Updated shipped J-Link software to V6.50a.
Editor
- Fixed the Replace in selection option not appearing on the find and replace dialog when only a single line is selected.
- Fixed selected text not adjusting size when carrying out a replace in selection.
IDE
- Fixed goto definition.
- Fixed positioning of dashboard "Install All Updates" button when window width is small.
Version 4.20
Build
- Added v8mml libraries to Nordic distribution.
- Updated support packages included in Nordic distribution.
- Default linker scripts now place segment specific sections first.
- Fixed crash when creating an empty solution.
- Updated the GCC/BINUTILS tools build to use the GCC ARM Embedded Toolchain 8-2019-q3-update source release.
Debug
- Updated shipped J-Link software to V6.48b.
- Added GDB server target connection.
Editor
- Fixed caret not being visible with certain fonts when located at the end of a line and an underline caret style is selected.
- Editor no longer outputs syntax errors to stderr when carrying out code completion.
- Editor now displays number of lines and columns selected when selecting text.
IDE
- PDF documentation now included in help window search results.
- Help window search now updates while typing.
- Fixed dashboard package status pane not being updated when packages are installed.
- Added dashboard button to update all packages.
Version 4.18
Build
- Added .init_rodata section to samples/SEGGER_Flash.icf.
- Fixed "V8M Mainline" and "FPv5-SP-D16" library build variants.
- Pre-Build and Post-Build commands no longer apply to clean operation.
- Fixed vfprintf %f format when Printf Floating Point Supported is set to Float.
- Added __SEGGER_LINKER and __GNU_LINKER preprocessor definitions.
- SEGGER Linker reports blocks that cannot be placed with enhanced error details.
- SEGGER Linker Module Summary section of the map file is now sorted in file name order.
- Build log window's memory usage summary now displays small sizes in bytes.
- Removed fixed point implementations of expf, logf and tanhf from the C library.
- Fixed crash when LTO processing of big endian object files.
- Fixed -template option on crossbuild.
- The preprocessor define __HEAP_SIZE__ is now set to the value of the Heap Size project property.
Debug
- Added Debug Location toolbar.
- Added additional Debug Symbols File and Debug Symbols Load Address project properties.
- Added Run To Control project property and changed Run To to break on entry if empty.
- Fix watch window latching the initial size of array variables.
- Added Debug > Debugger > Debug Terminal Log File project property.
- Updated shipped J-Link software to V6.46h.
Editor
- Fixed caret not being visible with certain fonts when located in virtual space.
- Significantly improved speed of selection deletion when editing large files.
- Added Hide/Show toolbar on editor context menu.
- Fixed goto definition opening a relative include file under certain circumstances.
- Code editor will no longer match braces, brackets or parenthesis located within comments.
- Fixed incorrect syntax coloring of C comments introduced with the /*!< character sequence.
- Fixed crash when starting a build with a keyboard accelerator whilst the code suggestion popup is visible.
- Fixed breakpointable line markers not appearing on lines that have a temporary breakpoint set.
- Fixed delete forward key deleting two characters when code suggestion dialog is visible.
IDE
- Fixed open with external browser (macOS only).
- Package manager can now be opened from the new project dialog.
- New project file selection puts files into the folders.
- Register window's group selector popup now displays a scroll bar if there are more groups available than will fit on the display.
Licensing
- Restrict license check to active project selection.
Version 4.16
Build
- Added C++14 sized deallocation functions.
- Updated SEGGER linker to version 2.26.
- Fixed crash when calling character type functions and UTF-8 locale codeset has been selected.
- Fixed link error when providing user defined __user_find_locale function.
- Fixed iswspace function not recognising some characters as spaces when UTF-8 locale codeset has been selected.
- Added programNotSection parameter to ElfFile.peekBytes and ElfFile.crc32 JavaScript functions.
- Fixed parseInt and parseFloat JavaScript functions.
- Fixed Date.getTime JavaScript function.
- Updated the GCC/BINUTILS tools build to use the GCC ARM Embedded Toolchain 8-2018-q4-major source release.
- Updated the LLVM/Clang tools build to use the 7.0.1 source release.
- Pre-Build and Post-Build commands now work with solution and batch builds and on dependent projects.
- Replaced environment options Enable All Warnings Command Line Options and Enforce ANSI Checking Command Line Options with project properties Enable All Warnings Command Line Options, Enable All Warnings C Compiler Only Command Line Options and Enable All Warnings C++ Compiler Only Command Line Options.
- Added Enforce ANSI Checking C Command Line Options and Enforce ANSI Checking C++ Command Line Options.
- Add support for ARMv8-A/R AAarch32 architecture.
- Add __clz*i2, __ctz*i2, __popcount*i2 and __parity*i2 helper functions to C library.
- Add stdatomic.h and helper functions to C library.
- Fix include file dependency generation when Keep Preprocessor Output is enabled.
- Fixed SEGGER linker crash when application contains references to unresolved weak symbols.
- Fixed linker script generation and memory usage display when memory segment ends at 0xFFFFFFFF.
Debug
- Added Debug > Target Control > Check Load Sections Fit Target Description project property.
- Fixed incorrect "load section does not fit the target description" error message.
- Fixed saving of TI hex files from memory window.
- Fixed memory window not updating after loading memory from a file.
- Add support for Cortex-A53 executing in AArch32 non-secure state.
- Debugger will display data on debug terminal that is written to the ARM/CortexA/R DCC channel when debugio is not enabled.
- Support ignore count for execution breakpoints.
- Fixed crash clearing execution profile window when not debugging.
- Updated shipped J-Link software to V6.44d.
Editor
- Auto-surround text is no longer activated when using block selection.
- Scroll line up and scroll line down operations now move cursor into visible area if it is off-screen.
- Fixed crash when closing editors.
- Fixed code suggestion dialog not highlighting selected item with correct colour when dark theme is selected.
- The colour of column guide bars can now be modified.
- Fixed caret not being visible with certain fonts when an underline caret style is selected.
- Editor keyboard accelerators will now activate when code suggestion popup is visible.
- Added Text Editor > Visual Appearance > Mate Match Off Screen option.
IDE
- Fixed crash when dragging a window icon over the icon of another window in the the same docking area.
- Fixed register selection pins in register window doing nothing when clicked.
- Fixed crash when closing editor windows with the code outline window active.
- Added option to open file with external editor to project explorer context menu.
- Fixed package manager not correctly uninstalling legacy packages.
- Improved terminal emulator receive performance when using high baud rates.
- Added ProjectExplorerExcludeFromBuild keyboard command.
- Debug terminal now handles carriage return characters.
- Fixed reassignment of FindUsingGoogle command shortcut not being remembered.
- Removed text menu separators on macOS.
- Fixed the recent projects list not being updated when project is opened from the recent projects window.
- Fixed pinning of projects not working in the recent projects window.
- Improved resizing of dynamic folder properties window.
- Fixed crash when docking windows.
- Fixed crash when attempting to create a directory on a Windows drive that does not exist.
- Improved appearance of list view titles when using dark theme.
- Added Internet > HTTP Caching environment option.
- Added Package Manager > Verify Package Downloads environment option.
- Fixed waypoint back and forward keyboard accelerators not working on macOS.
Licensing
- Added Company-wide License option.
Version 4.10
Build
- Fixed placement of .data_tcm_run section in default flash_to_tcm_placement.xml file.
- Added "Unaligned Access Support" code generation option.
- Added "Link Time Optimization" code generation option.
- Updated the LLVM/Clang tools build to use the 7.0.0 source release.
- Added SEGGER linker version 2.25 and project options to set command line options --dedupe-code, --dedupe-data, --inline and --merge-strings.
- Added support for ARM Compiler 6 when importing Keil MDK projects.
- Fixed output of floating point numbers using printf when precision value is 1.
- Fixed use of section attributes in source code when the same section has been renamed using the section name project properties.
- Fixed linker script not being regenerated when Code > Linker > Additional Linker Script Generator Options property is modified.
- Setting the Code > Linker > Check For Memory Segment Overflow property to No no longer disables unplaced sections checks from the GNU LD linker script. These checks can now be disabled by adding the -no-check-unplaced-sections option to the Code > Linker > Additional Linker Script Generator Options property.
- Fixed --gap-fill option not being passed to objcopy if the Code > Linker > Additional Output File Gap Fill Value property is set to 0x00. Clear this property if existing behaviour is required.
Debug
- Fixed crash when target connection is lost or reset.
- Ozone project filename now includes active project name and build configuration.
- Fixed watch window variables not being updated correctly after they have been modified.
- Updated shipped J-Link software to V6.34h.
Editor
- Fixed potential crash when code suggestion popup is displayed and an Alt key combination is pressed.
- Changed default text editor font size to 10pt.
- Comments are no longer displayed as an italic font by default.
- Improved IDE start up and project loading time when a lot of editors are open.
IDE
- Added Environment > User Interface > Theme option (Windows and Linux versions only).
- Fixed sporadic crash when IDE is starting up.
- Editor tabs can now be reordered.
- Editor tab order is now preserved in session file.
- Project files can now be drag and dropped into the project explorer in order to load them.
- Fixed missing environment settings when Japanese system locale is selected.
- Fixed slow register window search.
- Fixed list view windows not using the Environment > User Interface > Application Monospace Font property.
Version 3.52
Build
- Added SEGGER assembler technology preview.
- Added --warn-empty-selects command line option for SEGGER linker.
Debug
- Fixed crash when evaluating certain dwarf information.
- Fixed crash while disassembling a line with a long symbol name.
- Updated shipped J-Link software to V6.34f.
Editor
- Fixed crash if tab size gets set to 0.
IDE
- Changed Project > Edit Options... to Project > Options....
Version 3.50
Build
- Add support for SEGGER linker.
- Fixed crash when building on a machine with more that 16 cores.
- Batch builds are now done in parallel.
- Updated the GCC/BINUTILS tools build to use the GCC ARM Embedded Toolchain 7-2018-q2-update source release.
- Updated the LLVM/Clang tools build to use the 6.0.1 source release.
- Added -disable-missing-runin-error linker script generator option.
- Added Code > Linker > Additional Linker Script Generator Options project property.
- Multiple run in sections can now be specified in section placement file.
Debug
- Updated shipped J-Link software to V6.32i.
Editor
- Fixed using Alt+Tab when quick search window is visible (Linux only).
- Added Text Editor > Programmer Assistance > Code Completion Selection Key option.
- Added EditMoveSelectedLineUp and EditMoveSelectedLineDown commands and assigned them to Alt+Up and Alt+Down keys.
- Added Text Editor > Programmer Assistance > Code Completion Replaces Existing Word option.
- Fixed incorrectly displayed parameters in code suggestion popup when showing overloaded functions.
- Fixed use of tab key when function prototypes are displayed in code suggestion popup.
IDE
- Add capability to import eclipse .project/.cproject files as supplied with STM32Cube sample projects.
- Fixed crash when closing editor windows when code outline window is open.
- Fixed processing of multiple backspace characters in text output windows.
- Fixed crash in outline window when viewing certain C++ code.
- Added terminal emulator window.
- Fixed missing clipboard operations from text output window's context menu.
- Line edit property editors now initially selected.
- Fixed crash in stack usage window viewing certain .elf files.
Version 3.40
Build
- Added Environment > Find and Replace > Greedy Regular Expressions environment option.
- Add support for Cortex-R7, Cortex-R8, Cortex-A15 and Cortex-A17 processor cores.
- Added "V8M Has DSP Instructions" project option.
- Added "V8M Mainline" and "FPv5-SP-D16" library build variants.
- Fix tdata placement in Cortex-M placement files.
- Added c++1z and gnu++1z C++ language standard options.
- Replaced gcc c++ exception handling code with llvm equivalent.
- Fixed command line generated when "Keep Preprocessor Output" is enabled.
- Improved parallel build performance on Linux and macOS hosts.
- Fixed $(FPU) and $(FPABI) macro definitions for external build commands.
- Add $(Undefines) macro definitions for external build commands.
- Renamed Linker option "Section Placement Segments" to Build option "Memory Segments" and is now available for "Externally Built Executable" project types.
- Added __SES_VERSION preprocessor definition.
- Updated the LLVM/Clang tools build to use the 6.0.0 source release.
- Fixed emScript crash when defining a global variable on the command line without a value.
- Supplied versions of arm_neon.h that are compatible with the supplied gcc and clang compilers.
- Command line builder now implements -verbose, default is to build silently.
- Added Code Generation option "ARM Advanced SIMD Auto Vectorize" to enable loop vectorizing in the compilers.
- Added prototype for __putchar() to stdio.h.
- sys/stat.h now declares mode_t and off_t types.
- Added $(UnixTime) system macro.
- Removed deprecated throw declarations in new header file.
Debug
- Fixed crash if something is entered in the disassembly window's expression input when not debugging.
- Word and half-word writes to SWO channel 0 are now displayed in the debug terminal.
- Avoid update of live watch window during J-Link download.
- Avoid deletion of breakpoints when disconnecting from J-Link.
- Improve debug when compiler option "Supply Absolute File Path" is set to "No".
- Fixed crash when quick watch used on a C++ struct containing member functions.
- Enhanced Threads window to be able to display additional RTOS queues.
- Fixed download progress bar showing negative ETA and 0.0 KB total download size on Linux and macOS versions.
- Add support for TargetInterface.runFromAddress in target script.
- Fixed inability to add items to the watch window when periodic update is enabled.
- Edited source files will not be used by the debugger.
- Updated shipped J-Link software to V6.32c.
Editor
- The Text Editor > Programmer Assistance > Check Spelling environment option now defaults to No.
- Fixed code formatting of a selected block not working correctly when the Tab Cleanup On Save option is enabled.
- Fixed NULL being inserted into text file when CTRL+Space is pressed on Linux version of the code editor.
- Added replace in selection to the find dialog's find options summary.
- Fixed freezing of IDE when saving a large text file and the Delete Trailing Space On Save option is enabled.
- Improved performance of tabify and untabify operations.
- Cursor now moved if it is on a location that is deleted by the code formatter.
- Added Formatting > Empty Lines At End Of File option.
- Fixed Find Extras context menu not correctly showing the text that will be searched for.
- Added Text Editor > Formatting > Use .clang-format File formatting option.
- Auto comment no longer activates when in block selection mode.
- Added Text Editor > International > Auto-Detect UTF-8 option.
- Fixed text editor tooltip not working when word starts on first column.
- Fixed goto definition not working correctly when definition has been selected.
- Tab key now indents only if selection is multi-line.
- Find in files dialog can now be opened using Ctrl+Shift+F from the incremental find dialog.
IDE
- Added missing close button on code editor find dialog.
- Pasting of a block selection is now done as a block insertion even if the text editor has lost focus.
- Add environment option to enable the text editor to display section headers of ELF files.
- Fixed generation of unexpected characters when composing a character with ` ' or ^ keys.
- Reinstated default ALT-F5 keyboard mapping to DebugStartOzone command.
- Fixed crash when using a display with a 16-bit color depth.
- Fixed HUD windows not closing when all docked windows have been closed or removed.
- Fixed crash when changing active projects while Source Navigator is running.
- Check boxes in project system dialogs can now be toggled by a single click.
- Fixed menu key not opening context menu in watch and register windows.
- Improved appearance of list view check boxes when using display scaling.
- Property editor dialogs can now be resized.
- Added "Debug Entry Point" debugging option.
- Remove .plist files created by clang static analyzer.
- Fixed long window captions in some popup windows.
- Fixed find window's file extension filter not being saved when using Find Extras options.
- Fixed find window's additional options summary not being displayed when options are concealed.
- Find window's additional options summary now includes file extension filter.
- Full file path now displayed in find window's result list.
- Fixed ordering of history in package release notes.
- Fixed potential problem when multiple processes are accessing settings.
- Fixed unresponsive GUI when build generates a lot of output.
- Added File Search > Flat Search Result Output environment option.
- The file search window now defaults to flat result output and the dock site at the bottom of the main window.
- Fixed incorrectly located line edit in list views.
- Fixed activation of keyboard accelerators from HUD windows.
- Fixed automatic installation of packages when clicking on documentation links.
- Fixed debug terminal find only carrying out search once.
- Fixed bookmarks window updating bookmark line numbers when lines were inserted into or deleted from a different file.
- Fix command line supplied to clang static analyzer for ARM/Cortex-A/Cortex-R devices.
- Fixed opening of project files when the File > File Open Action property is set to Web Browser.
- Popup error message now displayed if package list cannot be downloaded when refreshing.
- Added File Search > Collapse Results environment option.
- Fixed crash when refreshing the outline window while editing an empty XML file.
- Fixed setting propertyGroup defined properties on folder nodes when importing package files.
- Keyboard map is now saved with UTF-8 encoding.
- Web browser links to text files now open in web browser rather than text editor.
Installer
- Fixed crash when running on an Ubuntu 14.04 system using KDE window manager.
- Fixed Windows installer failure when user name contains certain non-ASCII characters.
- Fixed loss of icons and inability to start IDE from desktop if umask has been set preventing read and execute permissions from being enabled for others (Linux only).
Version 3.34
Build
- Added EmbeddedStudioVersionNumber system macro.
- The inttypes.h header file now includes stdint.h as per the c99 standard.
- Added "Math Errno" project option.
- Dependency files are now deleted on project rebuild/clean.
- Does not link Externally Built Executable projects that have a specified Load File.
- Does not compile files in Externally Built Executable projects that do not have compile command(s).
Debug
- J-Link Control Panel window now works with multiple J-Links attached.
- Fixed generation of symbols when address_symbol and size_symbol attributes are used in a memory map or section placement files.
- Fixed crash with IAR v8 generated elf files.
- Fixed usage of brackets in debug watch expressions.
- Additional load files can be relative to the project directory.
- Fixed crash when scrolling the disassembly window with the mouse wheel when debugger is not running.
- Documented the file format for the "Type Interpretation File" project property.
- Updated shipped J-Link software to V6.22d.
IDE
- Fixed renaming of build configurations not applying when clicking on another build configuration after change.
- Fixed crash when pressing Ctrl+Shift+T.
- Modified macOS text editor cursor key mapping to be more like other macOS text editors.
- Double clicking on company logo images in package manager and new project wizard now has no effect.
- Fixed update of registers window status message when no registers are selected.
- Fixed display of multi-line messages in output window's task view.
- Code editor suggestions now inserted on all lines when in block edit mode.
- Code editor replace all now only replaces text within block when in block selection mode.
- WebKit web browser now uses display scaling factor.
- Show Large Icons In Toolbars option now applies to docking windows.
- Added keyboard shortcut editor to environment options dialog.
- Fixed crash that occured when cancelling the new project wizard when on the edit common project settings page.
- Fixed code editor suggestion popup not restoring opacity when ctrl key is released.
- Pasting of a block selection is now done as a block insertion even if text editor is not in block edit mode.
- Fixed text terminal not staying at end of file when maximum line limit is reached.
Licensing
- Fixed wireless network interfaces not being included in list of network adapters on Windows.
Version 3.30
Build
- Added missing __powidf2 and __powisf2 compiler helper functions.
- Updated the LLVM/Clang tools build to use the 5.0.0 source release.
Debug
- Updated shipped J-Link software to V6.20d.
- Added missing JLinkDevices.xml file and accompanying flash loaders.
IDE
- Environment option descriptions are now selectable.
- Improved performance of text editor brace matching in long files.
- Added Text Editor > Formatting > Additional Formatting Styles environment option.
- Added case sensitivity, whole word and regular expression options to code edit's incremental search dialog.
- Code editor's incremental search dialog no longer resets find dialog settings.
- Fixed drag and drop of file onto a project explorer file node from an external program.
- Fixed loss of focus when an expanded project explorer node is deleted.
Licensing
- Fix macro expansion of "Target Device" on license check.
- Do license check when active project is changed.
- License check now applies to "Library" project types based on the "Core Type".
- Fixed installation of license strings containing UNICODE characters.
Version 3.28
Build
- Fixed running of build command lines containing a '>' output redirection character.
- Fixed command line property editor.
- Added static_assert definition to assert.h.
- Fixed crash when Folder Options node is selected in project explorer and Open Solution in Editor is activated.
- Dynamic macros are now expanded in property editor macro preview.
- Added RelInputDir and FolderPath macros.
- Added empty solution project template.
Debug
- Fixed crash using Debug | Restart with the simulator target before startup breakpoint is hit.
- Fixed crash using Target | Attach Debugger with J-Trace target.
- Fixed bug in backtracing code which caused local variables to be displayed incorrectly.
- Local, global, auto and watch window columns are now independently configurable.
- Fixed display of signed 32-bit integer variables on 64-bit Linux and macOS hosts.
- Fixed Cortex-M simulator return from exception when using both main and process stack.
- Speed up single stepping of large programs when there are many unfound symbols in watch window.
- Add "Auto" capability to SWO baud rate project property.
- Updated shipped J-Link software to V6.20a.
- Changed values in variable and register windows are now identified by red text rather than a red background.
- Avoid memory and watch window update during download.
- Improve speed of disassembly when source files cannot be found.
IDE
- Fixed opening of files using macOS Finder.
- Improved opening of files from the command line.
- Fixed crash in text editor when moving left a word at a time.
- Reinstated View > Dashboard menu entry.
- File extension comparisons for project, package and archive files are now case insensitive.
- External diff tool runs as a detached process.
- Fixed error reporting when source file couldn't be opened by IAR compiler.
- Fixed crash in code outline window when viewing an XML file containing a syntax error.
- Add "Copy Full Path" to context menu in project explorer.
- Find in files on solution will not search object and library files.
- Fixed crash reporter hanging if report submission fails.
Version 3.26
Build
- Updated the GCC/BINUTILS tools build to use GNU ARM Embedded Toolchain 6-2017-q2-update source release.
- Updated LLVM/Clang to version 4.0.1.
- C runtime start code now has an optional call to an external function named InitializeUserMemorySections if INITIALIZE_USER_SECTIONS is defined.
- The 'Hello' first run sample project now defaults to the simulator target connection.
Debug
- Fix bug locating to assembly code source files.
- Locals window update when accessing variables that are in restricted memory ranges.
- Stop accessing address zero on debug reset on Cortex-M devices.
- Add "Starting Stack Pointer Value" debug project property.
- Updated shipped J-Link software to V6.18.
- Added Debug > Debug With Ozone menu option and an environment option to override the default location of the Ozone executable.
IDE
- Fixed crash showing symbols browser for IAR generated executables.
- Opening studio from shortcut when Allow Multiple Studios is set to No and studio is already running now unminimizes and raises main window to the top.
- Can now close the solution whilst the Source Navigator or Find References windows are active.
- Statistics in the Project Explorer displays the sum of the files sizes of the containing folder node.
- Improved error message reporting when studio startup fails.
- Check syntax option is now enabled on files with .html extension.
- Find extras menu order now the same in context menu as it is in the main menu.
- Fixed installation failure when installing certain packages.
- Added new look dashboard window.
- Fixed certain Alt key accelerators not working on macOS.
- Macro viewer in property editor now has horizontal scroll bar.
- Fixed blank entries in propery editor's build configuration combo box (macOS only).
- Hyperlinks in property editor's description fields now open in an external browser.
- Highlighted finds are now local to each text editor.
- Fixed text editor match delimiter and extend selection operation (Shift+Ctrl+]).
- Fixed moving of popup windows displayed when project is loading.
- Fixed Delete key not deleting selected text when cursor is at the end of the file.
- Fixed crash running installer on Linux when KDE plugins are installed on the system.
- Windows version no longer requires the Universal C Runtime update to be installed.
- Smaller up and down buttons in property window.
- Shift+Tab now works when text editor is in block selection mode.
- Indent when text editor is in block selection mode now aligns to the indent size setting.
- Highlight all selected text now works when text is selected by keyboard.
Licensing
- Add environment option "Check J-Link For Licenses".
Version 3.24
Build
- Text files shipped in Windows distributions are now in DOS format.
- Reworked compiler driver command line options.
Debug
- The debug restart action doesn't load the target.
- Holding the shift key while scrolling the memory window with the mouse scroll wheel now locks the start address.
- Added Debug > Memory Window > Scroll Wheel Modifies Start Address environment option.
- Memory window size warning can be disabled and is now only shown when the size changes.
- Fixed crash when the memory diff dialog is shown after download verification has failed.
- Updated shipped J-Link software to V6.16g.
IDE
- Editor dock positions are now restored when solution is loaded.
- Fixed incorrect calculation of memory usage window cell height when using high DPI fonts.
- Fixed crashes caused by uncaught exceptions (Linux only).
- Fixed incorrect width of editor margin when using Windows scaling.
- Fixed pressing tab key while in block edit mode.
- Fixed occasional randomly placed tooltips in code editor.
- Added Text Editor > Editing > Tab Key Indents Preprocessor Directives environment option.
- Fixed text editor crash when selecting and deleting past end of file with virtual space enabled.
- Fixed text editor scrolling to the far left column when text is selected and the mouse is moved.
- The Code Outline window now uses the same parser as the Source Navigator this has improved C++ support but has removed conditional preprocessor directives.
- The Code Outline window can now display doxygen style comments in the Preview pane.
Version 3.22
Build
- Change default for "Omit Frame Pointer" to "Yes".
- Added "Export Makefile" to project build context menu.
Debug
- Removed license check from memory window load and save operations.
- Embedded Studio now only uses the J-Link software it ships with, it no longer searches for other installations.
- Updated shipped J-Link software to V6.16c.
- Fixed crash when auto disconnecting simulator before simulator has stopped.
IDE
- Fixed text editor always using proportional font rendering irrespective of the Text Editor > Visual Appearance > Font Rendering option.
- Fixed text editor cursor color when using CrossWorks Dark color scheme.
- Added Insert Cursor and Overwrite Cursor colors to editor color schemes.
- Fixed text editor repaint when highlight cursor line mode is enabled.
- Fixed display of large toolbar icons.
- Fixed activation of popup toolbar icons.
- Fixed path property editor when using scaling on Windows.
- The text editor line number font size now scales with the main text editor font size.
- Project properties dialog now remembers splitter placement.
- Improved support for Windows scaling.
- Fixed code completion suggestion popup appearing on the wrong display on multi-display systems.
- Fixed Edit > Selection > Tabify.
- Added text editor block selection and edit.
- Fixed File > Recent Files and File > Recent Projects not selecting first element of menu when activated by keyboard.
- Fixed Command+W not closing current editor on macOS.
- Improved macOS clipboard support.
- Avoid auto loading externally modified project file during build.
- Grey out goto definition (and others) when indexer is running.
- Fixed window group Close All Windows option not recording in session file that windows have been closed.
- Fixed excessively fast vertical scroll wheel scrolling in text output windows.
Version 3.20
Build
- Change default for "Emit Relocations" to "Yes".
- Add weak attribute to library realloc implementation.
- Added sys/stat.h, sys/time.h and sys/types.h for compatibility.
- Removed STLPort from the distribution. This is available as a library package.
- Add "Post-Archive Command" project options.
- Generic startup code now enables VFP when "ARM FP ABI Type" is not set to "Soft".
- RTT files are not added to new ARM/Cortex-A/R generic projects.
- Add "Pre-Build Command" and "Post-Build Command" project options.
- Default __putchar and __getchar functions are now implemented using debugio.
- Upgraded LLVM/Clang to version 4.0.0.
- Updated the GCC/BINUTILS tools build to use GNU ARM Embedded Toolchain 6-2017-q1-update source release.
- Changed "Printf Floating Point Supported" project option to select between "Float" and "Double" support.
Debug
- Fixed crash when downloading non-existent externally built executable.
- Fixed crash when displaying class variables that contain static member data of the same type.
- Added "Copy To Clipboard" to register and variable display windows.
- Added "Copy To Clipboard" to memory window.
- Single stepping will step again if there is more then one instruction sequence associated with a source line of code.
- Disassembler decodes tbb/tbh pc relative jump tables.
- Updated shipped J-Link software to V6.14h.
- The "Auto Update" feature of the execution profile window uses the j-trace pro streaming feature.
- Added locate next/prev source/instruction buttons to execution trace window.
- Added function call and return entries to execution trace window.
IDE
- Added "Stack Usage" window.
- Changed "Build Macros" environment option name to "Global Macros".
- Fixed missing bottom line of some characters in Linux version of code editor.
- Clicking on studio icon in macOS dock now unminimizes IDE if it is minimized.
- Add up and down project navigation buttons to project properties dialog.
- Fixed reload solution not loading the correct solution if multiple versions of the studio are running with different projects loaded.
- Added Text Editor > Save > Default Line Endings environment option.
- Fixed text editor asking whether it is OK to overwrite an existing file twice.
- Editor now preserves UTF-8 byte order marks.
- Added different bitmaps to the project window for executable, library and staging project types.
- Build detects when files have been excluded/included and cut/pasted into projects.
- Project explorer paste file onto file will add it to the containing folder.
- Fixed wait parameter on JavaScript function "CWSys.run".
- Fixed text editor crash when using delete while cursor is at the end of file.
- Fixed integer property editor not working correctly on Linux and macOS.
- Fixed text editor Tools > Format Code losing last line of file on Linux and macOS.
- Fixed up and down cursor keys not working correctly with search filters on macOS.
- Fixed naming of Formatting > Always Break After Definition Return Type project property.
- Fixed duplicate Debug and Debugging property groups.
- Added Nordic Semiconductor text formatting style.
- The source browser window has renamed the "Stack" colunm to "Frame Size".
- Added "Code", "Data" and "Const" size columns to the source browser window.
Licensing
- The ARM license entitlement is now checked against the "Target Device" project property.
Version 3.12
Build
- The names of temporary files produced by the compiler are now derived from the input filename.
- The rm and chmod commands generated by the build are now implemented as internal commands.
- Added "V8M Has CMSE Instructions" project property.
- Added "CMSE Import Library File" project property.
- Fixed crash caused by clearing build log whilst building.
- Fixed ld executable being loaded into an editor on memory segment overflow linker errors (Linux and macOS only).
- Fixed build for project Link and unity folder Compile.
- Fixed setting strict-aligned clang compiler option for v4t, v5te, v6m and v8m.baseline architectures.
- Removed broken linker variant project property.
- Fixed C++ signbit implementation.
- Fixed build not building newly imported files.
- Changed linker and archiver "Use Indirect File" options default.
- Fixed using indirect files with filenames containing backslashes.
- Show "Batch Build Configurations" property at the solution node.
- Fixed crossscript crash when using ElfFile.peekBytes or ElfFile.crc32 functions on a program compiled with the Clang compiler.
- Fixed importing IAR EWARM/Keil MDK project files containing dots.
- Added linker option "Symbols File" to supply a symbols only file to the link command.
- Added "None" option to "Debugging Level" which is now used for "Release" configuration builds.
- Updated the GCC/BINUTILS tools build to use GCC ARM Embedded 6-2016-q4-major source release.
- Upgraded LLVM/Clang to version 3.9.1.
- Add int sized enums library build variants.
- Add big endian library build variants for architecture v6M.
- Add "Library ARM Architecture" project property.
- Add environment option "Enable All Warnings Command Line Options".
- Add environment option "Enforce ANSI Checking Command Line Options".
- Change default for "Allow Multiple Symbol Definition" to "No".
Debug
- Added "Auto Refresh" to the context menu of the execution count window.
- Fixed set breakpoint on variable from text editor.
- Fixed modifying breakpoint properties.
- Fixed crash when pressing page down on last page of the disassembly in the disassembly window.
- Fixed crash using debug restart with the simulator target.
- Add "Ignore .debug_frame Section" debugging property.
- Fixed crash if memory write fails during download on OS X.
- Fixed crash when connecting to J-Link target interface when no J-Link is attached.
- Fixed disassembly of ldr literal instructions.
- Improved debug support of clang generated code.
- Fixed memory window always evaluating address expression when auto size is selected.
- Fixed crash when opening memory window.
- Fixed watch window not storing the filename and linenumber context in which to evaluate the expression.
- Fixed misc bugs in watch window.
- Fixed Cortex-M simulator handling of word aligned stack pointers on exception return.
- Fixed crash using debug stop during download.
- Control bit zero now shown in CPU registers display for Cortex-M0.
- Added environment option "Show Member Functions" to variable windows to enable C++ member functions to be displayed.
- Add "RTT Enable" and "RTT Control Block Address" debugging options.
- Fixed crash when setting register allocated variables that are less than 4 bytes in length.
- Add "ITM Stimulus Port To Display" debugging options.
- Fixed implementation of rbit insruction in ARM simulator.
- Updated shipped J-Link software to V6.12f
- Add "Access Variables Within Memory Map Only" project property.
- Remove "Leave Target Running" project property.
IDE
- Parallel building of files in projects now shows a progress bar and ETA, both of these can be disabled using new environment options.
- Fixed Microsoft IME support in code editor.
- Removed project property "Build Dependents in Parallel", replaced it with "Project Can Build In Parallel".
- Fixed saving of files from code editor using Shift-JIS encoding.
- Improved appearance of build log's memory usage summary when there are many memory segments.
- Fixed code completion on files with paths containing UNICODE characters.
- Fixed goto definition and find references on files with paths containing UNICODE characters.
- File and project history now shared between all major releases.
- Fixed save prompt dialog not being displayed when modified file is closed.
- Fixed close solution not stopping when the saving of a modified file has failed.
- Improved appearance of debugger tooltips.
- Fixed build summary not being fully visible when build log is larger than window.
- Fixed directory chooser on IAR/Keil project import dialog.
- Fixed crash when entering address in disassembly window that is not within the current visible address range.
- Fixed text editor slow down when rendering very long lines.
- Find dialog auto complete is now case sensitive.
- Enter key now behaves the same as return key in find dialog.
- Fixed crash when dragging a project folder onto one of its own sub folders.
- Register window bitfield entries now use monospace font.
- Ctrl+C and Ctrl+A now work in project property dialog's description field.
- Fixed drag not working in project explorer on new files or folders until project has been reloaded.
- Fixed use of proportional fonts in code editor.
- Added Text Editor > Font Rendering environment option.
- Cannot close solution while Source Navigator and References window are active.
- Added stop button to Source Navigator window.
- Added coloring for #if'ed out code to the editor for C and C++ files. This is computed on file load and save.
- Added .svd file type detection to "Register Definition File" property.
- Added environment option "Parallel Project Building" to enable dependent project (and solution) builds to be done in parallel.
- Fixed text editor cursor not being visible over text drawn with a different background colour.
- Fixed the window group context menu sometimes being displayed higher than the mouse pointer.
- Search box now focused when package manager is opened.
- Fixed project importer not loading shipped jlink.dll when no other is available.
- Fixed pasting of file into a project explorer folder that is already contained within that folder.
- Fixed file overwrite warning dialog not giving the option to cancel.
- Added Title Bar > Show Full Solution Path environment option.
- Fixed crash when closing all editor windows, right clicking and then moving the mouse with the empty dock window.
- Added tooltips on symbols in text editor.
- Fixed editor search not clearing highlights when search string is cleared.
- Added Text Editor > Highlight All Selected Text environment option.
- Added Windows > Debug Terminal > Backscroll Buffer Lines environment option.
- Added Text Editor > Programmer Assistance > Inactive Code Opacity environment option.
- Fixed incorrectly placed resize grip in property editor.
- Fixed previous search not being selected when starting a multi-line find and replace.
- Fixed bookmark not being removed from bookmarks window when the line it is on has been deleted.
- New generic projects now set the "Section Placement Segments" option rather than use memory map files.
- Added new generic projects that enable use of an external GNU toolchain.
- Fixed selection in text editor not being completely cleared under certain circumstances.
- Find and replace window now remembers last search context and file type settings.
- Add support for BE-8 executables.
- Fixed opening of example projects from dashboard and contents window.
- Added dependent files to quick open (Ctrl+o) editor action.
- Help system now uses WebKit web browser to display content.
- Brace matching now takes into account inactive code lines.
- Inactive code highlighting now updates as you type.
- Detects project file has changed on disk and prompts for reload.
- Function keys can now be displayed permanently on OS X Touch Bar when IDE is running. See Using function keys on MacBook Pro with Touch Bar for more information on how to do this.
- Removed "Target" option from Generic project types and added "Target Device" option to enable target device selection.
- Reintroduce tools on project explorer context menu for folder and file nodes.
- Added "Stack" column to the symbol browser window.
Licensing
- The product build date is now compared with the SUA expiry date. The License manager displays licenses that have expired SUA's.
Version 3.10
Build
- Added "Keep Linker Script File" project property.
- Added "Tool Chain Directory" project property.
- Added "Externally Built Library" to the "Project Type" enumeration.
- Added "Section Placement Segments" project property.
- Added "Post-Link Output File" project property.
- Added "C Compile Command", "C++ Compile Command", "Assemble Command", "Link Command" and "Archive Command" project properties to enable user defined build steps.
- Added capability to build "Externally Built Executable" and "Externally Built Library" project types using command lines in project properties.
- Supplied ascii only version of ctype functions in ctype_no_wchar.c in the $(StudioDir)/source directory.
- Supplied non threaded version errno in errno_no_thread.c in the $(StudioDir)/source directory.
- Fixed 0.0 >= 0.0 and 0.0 <= 0.0 not returning true on some architectures.
- Fixed crash when building libraries using indirect files with no files to archive.
- Opening IAR EWARM/Keil MDK project files will now create internal and external build configurations. The external build configuration will use the IAR/Keil tools. The internal build configuration will use the internal tools.
- Fixed setting errno to EDOM with invalid arguments to acos(f), asin(f) and fmod(f).
- Fixed setting errno to ERANGE when overflow occurs with ldexp(f).
- Updated the GCC/BINUTILS tools build to use GCC ARM Embedded 5-2016-q2-update source release.
- Link will now fail with an error if a section has been placed at the end of a segment using the place_from_segment_start attribute and the preceding section overlaps it.
Debug
- Removed "J-Link DLL File" project property.
- Added "Use Built-in RTT support" project property to enable RTT to be used on all devices.
- Add "Ignore .debug_aranges Section" debugging property.
- Fixed crash while using memory window when not connected to target.
- Added "Load ELF Sections" loader project property.
- Added "Stop On Memory Error" simulator project property.
- Removed "Debugger Initial Breakpoint" environment options.
- Can now optionally specify the main load file to download using the "Load File" project property.
- Added "Go To Disassembly" to code editor context menu when debugging.
- Added "Export As Text" to variable display windows.
- Variable display windows now display char * as null terminated strings by default.
- Variable display windows now carry out numerical sort when sorting on size.
- Fixed watch window not moving blank entry to end when using add to watch from editor.
- Adding simulator project property "Stop On Memory Error".
- Enabling of exception breakpoints is preserved in session file.
IDE
- Project properties dialog now defaults to the active build confguration when opened.
- Fixed crash when dragging a project folder onto itself.
- Fixed display of string properties that contain line feeds.
- The "Project Type" property can now be set on a per configuration basis.
- Fixed reload project not working correctly when the project has been opened from the Recent Projects window.
- Project properties editor dialog is now modal.
- Memory window address field now expands to fill available space.
- Fixed blank filenames in Open File From Solution dialog.
- Fixed crash when right clicking in empty area of build configuration dialog.
- Fixed crash when changing configuration with a property editor focused in properties dialog.
- Changed the way modified and inherited properties are shown in the properties dialog/window.
- Code editor no longer displays file modified warning if file has been externally deleted.
- Properties dialog, removed "All" group, deselecting the group/page will show all properties.
- Properties dialog, changed the graphic to indicate that a project property has been modified or is set in another node or configuration.
- Properties dialog, removed the build macros and added a means to display the set of macros on individual property editors.
- Project explorer, added "Exclude From Build" option to folders.
- Add support for ARMv8-M Mainline and ARMv8-M Baseline architecture.
- Properties dialog, added option to show modified properties only.
- Fixed drag and drop in project explorer only working on a new folder after project has been reloaded.
- Project explorer removed automatic usage of memory map, section placement and linker script files in the build.
- Added "Use This Memory Map", "Use This Section Placement" and "Use This Linker Script File" to the appropriate files in the project explorer context menu.
- Files of type Memory Map, Section Placement and Linker Script that are added to the project now prompt to update the appropriate project property.
- Added "Use Manual Linker Script" and "Linker Script File" project properties.
- Removed Calcpad, Debug Immediate, Downloads, Properties, Script Console and Terminal Emulator windows.
- Reorganised menu entries, all window show actions are avaiable on the View menu.
- File path property editor now applies change when enter key is pressed.
- The Application Monospace Font property editor will now only allow monospace fonts to be selected.