The Embedded Experts

Release notes for Ozone - the J-Link Debugger V3.10

Version 3.10 [05 Dec 2019]

New Features

  1. Ozone now supports custom instructions via disassembly plugins.
  2. The timeline window now supports the simultaneous display of instruction trace-, symbol trace- and power trace data in a combined signal plot.

Improvements

  1. The data graph window was renamed "data sampling" and the graphs tab was removed.
  2. The power graph window was renamed "power sampling" and the graphs tab was removed.
  3. The macOS shipment is now notarized.
  4. The macOS shipment now links against the standard C runtime library "libc++".
  5. The macOS shipment no longer includes 32 bit support for a reduced download size.
  6. The project wizard now allows users to select the CPU register set of the target.
  7. The full-screen window layout is now saved and restored independent of the normal window layout.
  8. Vector catches are now set to a target-dependent default state.
  9. The value of function pointer variables is now displayed as the function pointed to, if available.
  10. Debug snapshots can now be dragged & dropped onto the main window.
  11. Start and stop of instruction trace now only depends on the selected trace source and no longer on the window state.
  12. Start and stop of power- and symbol-trace now only depends the selected sampling rate and no longer on the window state.
  13. Improved the accuracy of symbol name demangling.
  14. Instruction breakpoints are now disabled on program file reload when the breakpointed program code has changed.
  15. Added project script function "OnError".
  16. Added context menu entry "sampling frequency" to the data and power sampling windows.
  17. Added context menu entries "refresh rate" and "add SVD file" to the registers window.
  18. Added commands Window.WaitForUpdateComplete and Profile.Reset.
  19. Added a disassembly plugin for the RI5CY core, PULP platform.
  20. The command line "Ozone -project filepath" is now supported.
  21. The user guide was overhauled.
  22. Updated the included J-Link library to version 6.56b.

Program corrections

  1. Expressions with constant data location could possibly not be added to the data graph window (introduced with version 2.70c). Fixed.
  2. Command Project.RelocateSymbols possibly failed to relocate symbols (introduced with version 2.70). Fixed.
  3. When a script command was used with an incorrect parameter type, a project warning was possibly not shown. Fixed.
  4. An inadvertent project warning was shown when Ozone was started via a project generation command line for which the project file already existed. Fixed.
  5. Power sampling possibly started and did not stop following a source-step. Fixed.
  6. The text of string pointer symbols was possibly not updated when the string was edited. Fixed.
  7. System variable VAR_MEM_ZONE_RUNNING was possibly not evaluated correctly. Fixed.
  8. Command Profile.Export possibly did not handle empty item lists correctly. Fixed.
  9. Command line argument "-select HIF=ID" was possibly not evaluated correctly. Fixed.
  10. Reading of 1 FPU register on non-FPU targets possibly returned a valid register value. Fixed.
  11. The table header of debug windows possibly did not adapt to application font changes. Fixed.
  12. The semihosting, debug snapshot and find in files dialogs possibly did not adapt to application font changes. Fixed.
  13. Symbol data breakpoints were possibly restored incorrectly from user files. Fixed.
  14. Source viewer action Open.IncludeFile possibly failed when used with resolved file paths. Fixed.
  15. Memory window selections smaller than the block size were possibly highlighted incorrectly. Fixed.
  16. Local data window display mode "auto" possibly did not show all referenced global variables. Fixed.
  17. Touchpad zooming within the memory usage window was possibly nonoperational. Fixed.
  18. When the project file was open within the source viewer, it was possibly not automatically reloaded when edited from within Ozone. Fixed.
  19. Table windows possibly inadvertently scrolled horizontally when the selection was changed. Fixed.
  20. The breakpoint window's filter bar was possibly not shown when toggled visible while the window was empty. Fixed.
  21. The call stack and data graph windows possibly did not adapt to user preference PREF_FILTER_BARS_DISABLED. Fixed.
  22. Columns "code" and "code total" of the call graph window were possibly not sorted correctly. Fixed.
  23. Memory selection dialog hotkeys "del" and "+" were possibly nonoperational. Fixed.
  24. Ozone possibly crashed when hotkey arrow-right was pressed on the last table column of the source files window. Fixed.
  25. Action Show.InMemoryMap possibly opened the memory usage window using an incorrect initial zoom factor. Fixed.
  26. When a filter bar cell was cleared, it did not return to display string "*" on focus out. Fixed.

Version 2.70e [22 Nov 2019]

Program corrections

  1. The quick find widget could possibly not be rejected by pressing ESC (introduced with version 2.70). Fixed.
  2. Memory window context menu action "go back" was possibly inoperative (introduced with version 2.70). Fixed.
  3. Under special circumstances, the breakpoint state was possibly not restored correctly on program file reload. Fixed.
  4. Symbol tooltips were possibly not hidden when the document state was changed. Fixed.
  5. Instruction breakpoints were possibly not restored correctly from user files. Fixed.
  6. The quick watch dialog could not be re-opened on the same cursor location using hotkey Shift+F9. Fixed.
  7. The quick watch dialog did not maintain size and table layout when closed and reopened. Fixed.
  8. IRQ and FIQ vector catches could possibly not be set on Cortex-A/R. Fixed.
  9. Register window table column "auto refresh" possibly did not maintain visibility state when the debug session was started or stopped. Fixed.
  10. Code profile filters were possibly not applied correctly. Fixed.
  11. A breakpoint could possibly not be set via hotkey F9 immediately after the disassembly window gained focus. Fixed.
  12. Local data window context menu action "auto mode" was possibly inoperative. Fixed.
  13. An inadvertent warning message was possibly printed to the console window when an expression was added to the watched data window. Fixed.

Version 2.70d [14 Nov 2019]

Program corrections

  1. The disassembly of LDR instructions possibly contained errors (introduced with version 2.70). Fixed.
  2. Editing of register fields possibly failed for display formats other than binary (introduced with version 2.70). Fixed.
  3. Command "Trace.ExportCSV" was possibly inoperative when used with default parameter InstCnt=0. Fixed.
  4. J-Link script errors were possibly output to the console window using an incorrect text color. Fixed.
  5. Command Elf.GetEntryPointPC possibly returned uneven addresses (e.g. thumb bit on ARM). Fixed.

Version 2.70c [07 Nov 2019]

Program corrections

  1. Register and register field tooltips were possibly missing text lines (introduced with version 2.70b). Fixed.
  2. Under special circumstances, arbitrary instructions were possibly misidentified as semihosting traps (introduced with version 2.70). Fixed.
  3. Ozone possibly displayed inadvertent project warnings when a big endian program file was loaded (introduced with version 2.70). Fixed.
  4. Composite symbol data locations were possibly not evaluated correctly for big endian targets. Fixed.
  5. Bitfields were possibly not displayed correctly for armclang compiled program files. Fixed.
  6. Register set description file "RV32I.svd" contained typos. Fixed.
  7. Selection highlighting possibly covered PC line highlighting. Fixed.

Version 2.70b [29 Oct 2019]

Improvements

  1. Updated the included J-Link library to version 6.52a.

Program corrections

  1. Command Target.SaveMemory possibly failed when executed from script function AfterTargetDownload (introduced with version 2.70). Fixed.
  2. The project script could possibly not be loaded when it contained a function with an empty body (introduced with version 2.70). Fixed.
  3. The download address selection dialog of the project wizard was possibly not shown for bin-type program files (introduced with version 2.70). Fixed.
  4. Watched data live updating was possibly not started following connection to target (introduced with version 2.70). Fixed.
  5. Code profile data restored from a debug snapshot was possibly inadvertently reset when the program was resumed. Fixed.
  6. JavaScript functions "parseInt" and "parseFloat" were not implemented. Fixed.
  7. JavaScript function "peekBytes" possibly caused unnecessary memory allocations. Fixed.
  8. When a target of different architecture was selected within a session, core plugin reinitialization possibly failed. Fixed.
  9. On big endian targets, bitfield values were possibly displayed incorrectly. Fixed.
  10. Register tooltips were possibly not shown, when the register was not visible within the registers window. Fixed.
  11. Symbol tooltips possibly contained inadvertent description text lines. Fixed.
  12. Notifications concerning modified source code documents were possibly inadvertently shown when a non-source code document was edited. Fixed.

Version 2.70a [24 Sep 2019]

Improvements

  1. In wizard-generated projects with ELF program, the ELF's entry point (e_entry) is now used as the default PC register initialization value on all supported architectures.
  2. Updated the included J-Link library to version 6.50b.

Program corrections

  1. Multiple data graph window hotkeys were nonoperational (introduced with version 2.70). Fixed.
  2. Semihosting operation SYS_READ was possibly not carried out correctly (introduced with version 2.70). Fixed.
  3. When dragging an item from the watched data window to another window, the item was inadvertently removed from the watch list (introduced with version 2.70). Fixed.
  4. Code profile information was possibly not updated when execution counters were toggled (introduced with version 2.70). Fixed.
  5. Code profile information was possibly not updated when trace source ETB was selected on ITM-capable hardware. Fixed.
  6. The list of supported target devices was possibly incomplete on macOS. Fixed.
  7. Ozone possibly failed to open program files under network URL locations. Fixed.
  8. Ozone possibly crashed when the debuggee contained C++ template code. Fixed.

Version 2.70 [30 Aug 2019]

New Features

  1. The debug session can now be saved to (and restored from) a session file called debug snapshot.
  2. Semihosting is now available on any target (including RISC-V) using the SEGGER SEMIHOST module.
  3. The breakpoints/tracepoints window now allows users to set and clear vector catches.
  4. Added a quick watch dialog for easy inspection of variables and expressions.
  5. Ozone now automatically stores a minidump crash report to disk when it encounters an unexpected exception.

Improvements

  1. Extended the debugger's semihosting capabilities and added tool menu dialog "semihosting settings".
  2. Semihosting user input requests are now served by an input dialog.
  3. Added setting "TargetCmdLine" to command "Project.ConfigSemihosting".
  4. The semihosting user input mode is now configurable: input can be supplied via a popup dialog or via the terminal window prompt.
  5. The register window now supports the display of floating-point values using formats "binary" and "hexadecimal".
  6. The instruction trace window now displays the time/cycle duration of each call frame.
  7. The display of C++ member functions can now be toggled via context menu entry "member functions".
  8. The project script now supports global variables and constants.
  9. Debug windows now display demangled symbol names instead of unprocessed mangled names.
  10. The user is now asked for a display limit when expanding array symbols.
  11. Added table columns "code total" and "code local" to the call graph window.
  12. Added toolbars to the memory usage and watched data windows.
  13. Added context menu entries cut/copy/paste to the source viewer.
  14. Table windows now display a drop position indicator when a drag operation is in progress.
  15. Console window command feedback now includes a text describing the returned data for commands that query data.
  16. Added a new command group "Snapshot".
  17. Added command Break.SetVectorCatch.
  18. Upgraded commands Profile.Export, Profile.ExportCSV, File.ExportDisassembly and Trace.ExportCSV to accommodate all of their respective dialog settings.
  19. The host interface dialog and the project wizard now display the list of J-Link/J-Trace emulators connected via LAN and USB.
  20. Wizard-generated projects now include a file header.
  21. Improved project script error reporting.
  22. When opening a file that has no extension, the debugger now asks the user if the file is to be handled as binary or source file.
  23. All file dialogs now include the display filter "All Files".
  24. Added file menu entry "Edit Project File".
  25. Ozone's now requires less RAM for loading large ELF program files.
  26. Added build-time information to the about dialog.
  27. Updated the included J-Link library to version 6.50a.

Program corrections

  1. The debugger possibly performed an incorrect instruction to source mapping for programs containing multiple source files of identical name. Fixed.
  2. Incorrect disassembly of instruction VMOV. Fixed.
  3. RISC-V: disassembly was possibly not rendered correctly when option "instruction encodings" was set. Fixed.
  4. RISC-V: multiple instructions were possibly not disassembled correctly. Fixed.
  5. RISC-V: possible crash when showing vector catches within the breakpoint window. Fixed.
  6. Vector catches were possibly inadvertently cleared following program reset. Fixed.
  7. Vector catches were possibly not displayed when Ozone was started from Embedded Studio. Fixed.
  8. Breakpoints could possibly not be set on address 0. Fixed.
  9. Data type names were possibly rendered incorrectly within symbol tooltips. Fixed.
  10. Within the list of emulators connected via USB, the first entry was possibly duplicated multiple times. Fixed.
  11. The instruction trace window possibly displayed incorrect call frame information when time reference points were set. Fixed.
  12. The disassembly window possibly showed an inadvertent PC highlight at address 0 in offline mode. Fixed.
  13. The instruction trace window exhibited an incorrect scrolling behavior when using the mouse wheel on the vertical scrollbar. Fixed.
  14. The file version of the windows installer executable was possibly incorrect. Fixed.
  15. Projects created with the project wizard possibly missed automatic project directory macro replacement (introduced with version 2.62g). Fixed.
  16. Symbol values stored in 64-bit floating-point registers D0-D15 were possibly not displayed correctly. Fixed.
  17. Ozone inadvertently used carriage return (\r) as newline operator on macOS. Fixed.
  18. Generic semihosting via breakpoint was possibly inoperative following a write access to the target. Fixed.
  19. Stopping the debug session while a semihosting operation was in progress could cause an inadvertent popup dialog to be shown. Fixed.
  20. Semihosting output by the target application was possibly lost when the program underwent a halt/resume cycle. Fixed.
  21. The context menu entries of the export menu (File->Export) possibly did not log command feedback to the console window. Fixed.
  22. The position of undocked windows was possibly not restored correctly on multi-monitor setups. Fixed.
  23. The memory dialog did not allow to specify files without extension. Fixed.
  24. Ozone possibly crashed on exit following use of a JavaScript RTOS plugin. Fixed.
  25. Local data with block scope was possibly updated incorrectly. Fixed.
  26. Warning "duplicate commands found within the project file" was possibly shown even when all duplicate commands were out-commented. Fixed.

Version 2.62g [12 Jul 2019]

Program corrections

  1. Ozone possibly crashed when the target application performed terminal output via semihosting (introduced with version 2.62f). Fixed.
  2. Project settings could possibly not be applied before the project file was saved to disk. Fixed.
  3. The display format of floating point registers could possibly not be changed. Fixed.
  4. Single-precision floating point registers were possibly displayed using an incorrect number of decimal digits. Fixed.
  5. Settings edited via the J-Link control pannel were possibly not applied correctly. Fixed.
  6. The title of the breakpoint window was possibly displayed incorrectly. Fixed.
  7. Register FPSCR possibly displayed a duplicate V bit field within the register window. Fixed.
  8. Graph window shift-selection was possibly inoperational. Fixed.
  9. Graph window context menu action "fit selection" could possibly not be triggered via hotkey. Fixed.
  10. Semihosting operation SysRead possibly returned an incorrect result code to the target. Fixed.

Version 2.62f [09 Jul 2019]

Improvements

  1. Updated the included J-Link library to version 6.46i.

Program corrections

  1. Ozone was possibly missing symbol member information due to IAR compiler optimizations. Fixed.
  2. Source viewer action "copy to clipboard" possibly removed quotation marks from the copied text. Fixed.
  3. For programs generated by the ADS compiler, Ozone possibly misevaluated source code location information for function symbols. Fixed.
  4. Ozone possibly crashed on current linux distributions (such as Ubuntu 19.4) when the trace settings dialog was opened. Fixed.
  5. The tab panes of the data- and power graph windows possibly displayed an incorrect content after the tabs were moved. Fixed.
  6. Advanced properties of source breakpoints consisting of multiple derived breakpoints were possibly not restored correctly. Fixed.
  7. String-type symbols were possibly not updated reliably. Fixed.
  8. Data graph capture was possibly not started when connection mode "attach" was used. Fixed.
  9. Power Graph Window: on slow machines, an empty power trace buffer was possibly continued to be queried for more than the preset amount of retries. Fixed.
  10. Semihosting operation SysRead possibly wrote more user input to the target than requested. Fixed.
  11. Semihosting operation SysRead possibly did not write all file content to the target when more data was requested than available. Fixed.
  12. Semihosting operation SysRead possibly returned an error code when used with stdin file handle. Fixed.
  13. Event object and system information was possibly displayed incorrectly when javascript plugin "embOSPlugin.js" was used. Fixed.
  14. The data graph window possibly did not display a confirmation dialog when action "remove all" was triggered. Fixed.
  15. Source line mapping information for instructions preceding the function with lowest base address was possibly evaluated incorrectly. Fixed.
  16. The RTOS window possibly displayed selection-highlighting on all tables, instead of on the active table only. Fixed.
  17. Within the RTOS window, tables were possibly not auto-scrolling to the selected item when navigation keys were used. Fixed
  18. Local data window context menu entry "auto mode" possibly caused the item selection state to be lost. Fixed.

Version 2.62e [06 Jun 2019]

Program corrections

  1. Action "view.source" was possibly inoperable when used with address string parameter (introduced with version 2.62d). Fixed.
  2. Enumeration-type symbols possibly displayed an incorrect value name. Fixed.
  3. Functions window column "source" possibly displayed the declaration coordinate instead of the implementation location. Fixed.

Version 2.62d [05 Jun 2019]

Improvements

  1. Updated the included J-Link library to version 6.46c.

Program corrections

  1. The debug session could not be started when target device ARM7 was selected (introduced with version 2.62). Fixed.
  2. The J-Link control panel was possibly not refreshed following a change of the debug state. Fixed.
  3. Action "show disassembly" possibly did not selected the expected location when executed on a source line breakpoint. Fixed.
  4. The hotkey for callstack window action "show stack frame" was possibly inoperable. Fixed.
  5. The disassembly of instruction MCR was possibly not shown when debugging ARM-v4 targets. Fixed.
  6. The contents of the disassembly window were possibly inadvertently cleared when the CPU mode was edited. Fixed.
  7. Ozone possibly tried to activate RTT on targets not capable of background memory access. Fixed.
  8. Incorrect warnings about unsupported DWARF opcodes 'DW_OP_x' were possibly caused by a bug in the ELF parser. Fixed.
  9. In rare circumstances, the ELF parser misread binary symbol attributes. Fixed.
  10. A table window possibly did not respond to hotkeys when activated via shortcut. Fixed.
  11. The type string of a void pointer was possibly incorrectly displayed as a single star. Fixed.
  12. The evaluation of an expression containing both ELF and DWARF symbols possibly failed. Fixed.
  13. Within code profile reports, the unaccounted fetch count was possibly incorrectly stated as 0. Fixed.
  14. When a pointer value was edited, the input value was possibly not parsed in accordance with the item's display format. Fixed.

Version 2.62c [22 May 2019]

Improvements

  1. Updated the included J-Link library to version 6.44i.
  2. Changed the hotkey for "Find In Files" from "Ctrl+Alt+F" to "Ctrl+Shift+F".

Program corrections

  1. For exceptions taken from Cortex-M thread mode, the call stack was possibly missing frames. Fixed.
  2. Thumb instructions SETEND and SWI were possibly not disassembled correctly. Fixed.
  3. Inline disassembly of inline expansion call sites was possibly incomplete. Fixed.
  4. When attaching to a running program, periodic refresh of target memory and special function registers was possibly inoperable. Fixed.
  5. Decimal number strings were possibly not displayed correctly when the value of user preference "PREF_DEC_BLOCK_SEPARATOR" was "none". Fixed.
  6. Change-level and match result highlighting possibly showed aliasing artifacts. Fixed.
  7. Co-installation of the J-Link software package has been discontinued but Ozone's installer page was not updated accordingly. Fixed.

Version 2.62b [09 May 2019]

Improvements

  1. Updated the included J-Link library to version 6.44h.

Program corrections

  1. File paths containing an Ozone directory macro followed by a change directory macro were possibly not evaluated correctly (introduced with version 2.62). Fixed.
  2. Ozone's ELF parser possibly failed to parse program macro information larger than 1 MB (introduced with version 2.62). Fixed.
  3. Debug windows positioned on a secondary screen were possibly not moved onto the primary screen when the secondary screen got disconnected. Fixed.
  4. Backslash directory separators could not be used within Ozone project scripts. Fixed.
  5. Closing the J-Link Settings dialog w/o settings change possibly caused a reinitialization of the register window. Fixed.
  6. When a source code document was edited, the PC line highlight was possibly cleared. Fixed.
  7. Text selection within the disassembly window did not work properly when the horizontal scrollbar was not at origin. Fixed.
  8. Mouse-over register tooltips within assembly code source files were possibly not shown. Fixed.
  9. Local variables of the bottom call frame were possibly shown to be out of scope even when in scope. Fixed.

Version 2.62a [18 Apr 2019]

Improvements

  1. Updated the included J-Link library to version 6.44f.

Program corrections

  1. Source files sharing the same name could possibly not be opened reliably within the source viewer. Fixed.
  2. Power-trace data recording possibly continued even after the program had been halted. Fixed.
  3. The disassembly window's PC line highlight was possibly not updated following action "Set Next PC". Fixed.
  4. The register window possibly displayed an incorrect CPU mode when in monitor or hypervisor mode. Fixed.
  5. The debugger returned an incorrect result code for a semi-hosted "SysRead" when the input string fell below the request length. Fixed.
  6. On input of enter into the terminal prompt while handling a semi-hosted "SysRead", an inadvertent error message was printed to the console window. Fixed.
  7. The timeline possibly misidentified exception frames when the vectors were contained within a data section w/o executable flag. Fixed.
  8. Backward compatibility for obsoleted constant name "auto" was not maintained. Fixed.
  9. Within the user guide, multiple user action "GUI Access" descriptions were outdated. Fixed.
  10. Ozone possibly crashed when evaluating recursive macro definitions. Fixed.

Version 2.62 [05 Apr 2019]

New Features

  1. Ozone's RTOS-awareness plugin interface was extended to support JavaScript plugins.
  2. Ozone now ships with JavaScript plugins that provide embOS-, FreeRTOS- and ChibiOS-awareness.
  3. Added main menu "Find", providing convenient navigation to program symbols and source locations.

Improvements (Debugging)

  1. The load time and RAM consumption for large ELF program files was reduced significantly.
  2. The sample cursors of the timeline, power graph and data graph windows are now synchronized.
  3. The robustness of the timeline against influences of compiler optimizations was improved.
  4. The main window now supports drag & drop of source code documents, project files and program files.
  5. The call stack window can now be configured to display the function parameters for each call frame.
  6. The focus-chain cycling behavior of debug information windows was improved.
  7. The performance of the data graph window was improved.
  8. The context menu settings of the data graph and power graph windows are now restored from the user file.
  9. Ctrl+TAB can now be used to cycle the focus between all open debug windows.
  10. Source viewer context menu entry "Show.Source" was split into entries "Show.Declaration" and "Show.Definition".
  11. Table items that could previously only be activated via double-click can now also be activated via enter or return.
  12. User actions of category "Show" no longer move the input focus to the targeted debug window when activated.
  13. Added support for CMSIS-SVD register cluster arrays.
  14. Added source viewer context menu entry "goto header/implementation file".
  15. Added source viewer context menu entry "select in file explorer".
  16. Added table column "stack used" to the call stack window.
  17. Added option "export file paths" to the code profile export dialog.
  18. Added data column "time stamp" to the instruction trace CSV export.
  19. Updated the included J-Link library to version 6.44.

Improvements (Project Scripts)

  1. Added command "Debug.IsHalted".
  2. Added command "OS.AddContextSwitchSymbol".
  3. Added command "Target.SetFPU".
  4. Added JavaScript command "TargetInterface.message".
  5. Command category "View" was renamed "Show".
  6. Command "Profile.Export" and "Profile.ExportCSV" now provide an additional export options parameter.
  7. Path substitutes set with command "Project.AddPathSubstitute" are now applied to source files only and executed before directory macros are expanded.

Improvements (GUI)

  1. The source viewer now supports proportional character display.
  2. The task window was renamed RTOS window and is now displayed within category "advanced" of the view menu.
  3. The timeline now allows cursor-centric zooming also in the vicinity of its data boundaries.
  4. The user preference dialog now displays general settings in a tabular fashion.
  5. Added value reset buttons to the system variable editor.
  6. Editing changes to the memory window are now reflected immediately after enter is pressed.
  7. Table windows now display an inactive selection highlight when not focused.
  8. The source viewer's cursor line background color can now be selected via the user preference dialog.

Program Corrections

  1. The values of registers BASEPRI, FAULTMASK and CONTROL were incorrectly displayed as shifted by n bytes under certain circumstances. Fixed.
  2. The debugger possibly tried to access FPU registers on targets without FPU. Fixed.
  3. Expressions containing program labels that were not contained in any code section were possibly evaluated incorrectly. Fixed.
  4. In rare circumstances, source file properties "code size" and "instruction count" were incorrect. Fixed.
  5. For code-size optimized programs, the functions window possibly displayed incorrect function properties. Fixed.

Version 2.60p [21 Feb 2019]

Improvements

  1. Updated the included J-Link library to version 6.42d.

Program corrections

  1. Expressions containing the C++ scope operator were possibly evaluated incorrectly. Fixed.
  2. Under special circumstances, an inadvertent warning message "script interpretation failure: unknown function" was printed to the console window. Fixed.

Version 2.60o [12 Feb 2019]

Improvements

  1. Updated the included J-Link library to version 6.42c.

Program corrections

  1. On macOS, the hit-test for table item expansion indicators was possibly imprecise. Fixed.
  2. On macOS, the source viewer possibly exhibited an incorrect text cursor repainting behavior. Fixed.

Version 2.60n [07 Feb 2019]

Improvements

  1. Updated the included J-Link library to version 6.42b.

Program corrections

  1. Expressions containing anonymous type members were possibly not evaluated correctly. Fixed.
  2. Ozone possibly crashed when reading trace timestamps from the target. Fixed.
  3. Trace timestamps were possibly activated even when the trace source was not TRACE_SOURCE_ETM. Fixed.
  4. Removed command "Project.SetTraceFile" from the user guide. The feature is scheduled for upcoming releases. Fixed.

Version 2.60m [23 Jan 2019]

Improvements

  1. Updated the included J-Link library to version 6.40b.

Program corrections

  1. Within command arguments, an environment variable that contained another environment variable was possibly not expanded correctly. Fixed.
  2. Within command arguments, Unix-style environment variables containing special characters were possibly not expanded correctly. Fixed.
  3. An incorrect command feedback was printed to the console window when function window context menu action "clear breakpoint" was executed. Fixed.
  4. Corrected a possible string pointer overflow within the ELF-parser. Fixed.

Version 2.60l [16 Jan 2019]

Program corrections

  1. The list of open source documents was possibly not restored correctly from the user file (introduced with version 2.60h). Fixed.
  2. Pressing ESC while editing a table filter cell did not restore the previous filter cell content. Fixed.
  3. The input focus possibly did not return to the source viewer when confirmation dialog "continue editing" was closed. Fixed.
  4. Symbol lookup possibly failed for symbol names matching Ozone system constants. Fixed.
  5. Canceling a drop-down menu by pressing ESC possibly did not restore the input focus to the drop-down control. Fixed.
  6. The clipboard content generated by memory window action "copy as C initializer" missed a trailing comma in each text line. Fixed.
  7. On Unix systems, Ozone-style environment variable specifiers were possibly not evaluated correctly. Fixed.
  8. Ozone possibly crashed when a user file was loaded that specified an exceedingly large number of table columns for a table window. Fixed.
  9. When a table window contained multiple items of identical name, the affected item group was possibly not updated correctly. Fixed.

Version 2.60k [02 Jan 2019]

Program corrections

  1. On Legacy-ARM and Cortex-A/R targets, the value of register R13 was possibly not updated correctly. Fixed.
  2. The last line of the active source document could not be navigated to using context menu action "goto line". Fixed.
  3. The shortcut for memory window context menu action "go to" was not functioning. Fixed.
  4. Entries of the find results window could not be shown within the source viewer by pressing enter. Fixed.
  5. Ozone possibly crashed when the ELF file contained less than 3 DWARF debug symbols. Fixed.

Version 2.60j [18 Dec 2018]

Program corrections

  1. The source viewer's text area possibly became illegible when the sidebar was hidden (introduced with version 2.60). Fixed.
  2. On Legacy-ARM and Cortex-A/R targets, the values of banked core registers were possibly not updated correctly (introduced with version 2.60). Fixed.
  3. Ozone possibly crashed when disassembly data was exported. Fixed.
  4. The disassembly window possibly did not display labels for symbols in ELF file section SHN_ABS. Fixed.
  5. User preference PREF_SHOW_SIDEBAR_SRC was possibly not restored across sessions. Fixed.

Version 2.60i [13 Dec 2018]

Improvements

  1. Updated the included J-Link library to version 6.40a.

Program corrections

  1. The range of the horizontal scroll bar of table windows was possibly not sufficient to fully display the content of the last visible column (introduced with version 2.60). Fixed.
  2. On GUI themes with very bright text color for disabled elements, execution counters and line numbers were possibly hard to read (introduced with version 2.60). Fixed.
  3. An incorrect command feedback was printed to the console window when functions window context menu action "view source" was executed. Fixed.
  4. Source viewer line numbers were possibly not aligned to their respective text lines at large font scales. Fixed.
  5. When the ELF file contained call frame augmentation "armcc+", an incorrect warning message was printed to the console window. Fixed.
  6. When a project directory containing an Ozone project file was moved to a new location, the program file could possibly no longer be found. Fixed.
  7. When resolving file paths, path substitutions were applied to all file types but should have been applied to source files only. Fixed.
  8. The address ranges of static functions with name conflicts were possibly computed incorrectly. Fixed.
  9. Source viewer context menu entry "open include file" was possibly not shown when the cursor was over an #include line. Fixed.

Version 2.60h [06 Dec 2018]

Program corrections

  1. Character arrays were possibly not updated correctly when table option "show character value" was enabled (introduced with version 2.60). Fixed.
  2. Ozone possibly queried and processed trace timestamp data from J-Link even when trace timestamps were disabled. Fixed.
  3. Type casts from array to pointer type were possibly not evaluated correctly. Fixed.
  4. The title bar of the task window was not highlighted when the window was focused. Fixed.
  5. The global data window was possibly not updated correctly following reload of the program file. Fixed.
  6. When a filter was edited within the device selection dialog, the table was possibly inadvertently scrolled down. Fixed.
  7. Command "View.Data" with pointer symbol argument was possibly selecting an incorrect memory location. Fixed.
  8. When user file settings were restored, source code files with unresolvable file path were not removed from the list of open documents. Fixed.

Version 2.60g [20 Nov 2018]

Program corrections

  1. For watched expressions with auto-refresh disabled, symbol members with positive refresh rate were possibly not live-updated correctly (introduced with version 2.60). Fixed.
  2. Input of empty text into the watched data window could possibly lead to program crash (introduced with version 2.60). Fixed.
  3. Possible performance problem when array symbols were expanded within the watched data window (introduced with version 2.60). Fixed.
  4. Data symbols with identical value were possibly table-sorted incorrectly. Fixed.
  5. Ozone possibly failed to load OS-awareness plugins that provided an outdated API. Fixed.
  6. The debugger possibly called RTOS plugin API function "OnDebugStart" before target memory was accessible. Fixed.
  7. The debugger did not call RTOS plugin API function "OnDebugStart" following (re)download of the program file. Fixed.
  8. The values of FPU status and control registers were displayed as floating point numbers. Fixed.
  9. The names of floating point registers were possibly displayed incorrectly within symbol windows. Fixed.
  10. The instruction trace window possibly did not display the source text of instruction blocks. Fixed.
  11. Ozone possibly failed to evaluate the data location of floating-point register variables. Fixed.
  12. An inadvertent project warning "duplicate project command: Script.DefineConst" was possibly shown. Fixed.

Version 2.60f [13 Nov 2018]

Program corrections

  1. The source viewer did not respond to RTOS task selections (introduced with version 2.60). Fixed.
  2. Ozone possibly tried to access the FPSCR register (index 32) on Cortex-M targets without FPU unit. Fixed.
  3. On Ubuntu, the project warnings dialog's "ignore" button was possibly displayed with a trash bin icon. Fixed.
  4. The debugger's memory data cache was not invalidated following program file download. This could possibly lead to incorrect RAM debug session startup, amongst other symptoms. Fixed.
  5. Watched data was possibly not live-updated correctly when the watch list contained a structure or class-type expression. Fixed.

Version 2.60e [09 Nov 2018]

Improvements

  1. Ozone now logs a warning message when the trace contains an invalid instruction timestamp.
  2. Removed columns "index" and "execution count" from the instruction trace export.
  3. When the project wizard is requested within a running debug session, the debug session is now stopped before the dialog is shown and no longer following dialog completion.

Program corrections

  1. Action "find next under cursor" (Ctrl+F3) was inoperative until the first time the find dialog was shown (introduced with version 2.60). Fixed.
  2. Source text selections performed using the keyboard (shift-key) possibly missed one character when copied to the clipboard. Fixed.
  3. When Ozone was closed while a debug session was running, the confirmation dialog "stop debug session" was not shown. Fixed.
  4. Warning messages emitted by Ozone's ELF parser were possibly not printed in red text color. Fixed.
  5. Interpolation of instruction timestamps possibly failed in the vicinity of instructions with invalid timestamp. Fixed.
  6. Possible crash when a symbol was updated whose member tree contained a symbol with identical data location. Fixed.
  7. A text search result was possibly not highlighted correctly when the corresponding document line contained tabs. Fixed.
  8. Numeric values exported by the instruction trace export dialog possibly contained block separators. Fixed.
  9. Setting "maximum instruction count" of the instruction trace export dialog was inoperative and shown using an incorrect display format. Fixed.
  10. Accepting the project wizard while a debug session was running could lead to the inadvertent warning message "script interpretation failed" being shown. Fixed.
  11. When a script file syntax error was encountered at runtime, two identical warning messages were printed to the console window. Fixed.
  12. On devices with high resolution touchpads, graph zooming via vertical panning was possibly too sensitive and interfered with horizontal panning. Fixed.
  13. On devices with high resolution touchpads, the scrolling sensitivity of the memory window was possibly too low. Fixed.
  14. The timeline windows' tool bar label contained an inadvertent ampersand. Fixed.

Version 2.60d [31 Oct 2018]

Improvements

  1. Updated the included J-Link library to version 6.40.

Program corrections

  1. Watched expressions were possibly not updating correctly while the program was running (introduced with version 2.60). Fixed.
  2. Right-alignment of numeric text values was inoperative (introduced with version 2.60). Fixed.
  3. Source code documents possibly missed syntax highlighting (introduced with version 2.60). Fixed.
  4. The window position of the find dialog was possibly not restored correctly across multiple sessions. Fixed.
  5. Supported expressions could possibly not be added to the data graph window while the debug session was stopped. Fixed.
  6. User actions "Find.Function" and "Find.GlobalData" were inoperative in 32-bit builds of Ozone. Fixed.
  7. The PC line did not display selection highlighting following debug session stop. Fixed.
  8. The window menu displayed an incorrect and inoperative entry for the break & tracepoints window. Fixed.
  9. View menu accelerators were corrected and missing accelerators were added to debug window context menus. Fixed.

Version 2.60c [26 Oct 2018]

Program corrections

  1. The project wizard was inadvertently closed when button "next" was activated (introduced with version 2.60b). Fixed.
  2. CSV files generated by the data and power graph windows possibly contained block separator characters. Fixed.
  3. A window-pinned sample cursor was possibly reset to movable mode when a graph window was cleared. Fixed.

Version 2.60b [24 Oct 2018]

Program corrections

  1. Project files generated via the project wizard possibly contained a duplicate SVD file selection command. Fixed.
  2. The terminal window's default data limit was inadvertently set at 10 GB instead of 10 MB. Fixed.
  3. SWO data capture was possibly deactivated with error message "invalid CPU frequency" following run to main. Fixed.
  4. Within script files, unary operators applied to bracketed expressions were possibly not evaluated correctly. Fixed.
  5. The first character of the selected disassembly text was not copied to the clipboard. Fixed.
  6. The power graph window's context menu "show time average" possibly displayed an incorrect check state. Fixed.
  7. The timeline possibly exhibited an excessive use of CPU time at high levels of zoom. Fixed.
  8. When the device selection dialog was canceled via the ESC key, an inadvertent warning message box was shown. Fixed.
  9. The file header of disassembly export files possibly contained an incorrect Ozone version number. Fixed.

Version 2.60a [19 Oct 2018]

Improvements

  1. The call graph window now evaluates and displays the local stack usage of external functions.
  2. The function and callstack windows now display source file information for external functions.

Program corrections

  1. Timestamp format "off" could not be selected within the timeline window. Fixed.
  2. On macOS, Ozone possibly crashed when executing code in external library "libiconv2". Fixed.
  3. When a project was opened for which no user file was present, the default window state was possibly not restored correctly (regression since version 2.56w). Fixed.
  4. The power graph window's sample table was possibly not updated following execution of command "clear data". Fixed.
  5. The time delay after executing command "Target.PowerOn" was set too low. Fixed.
  6. The power graph window was possibly not cleared following a program reset when setting "ClearEvent" was set to "OnReset". Fixed.
  7. When a project file was opened while a graph window was visible, the source viewer possibly did not obtain initial focus. Fixed.
  8. The timeline window's toolbar text was possibly not updated following a change of the active frame. Fixed.
  9. The project warnings dialog did not display a warning when the specified program file did not exist. Fixed.
  10. On Unix systems with theming packages installed, tooltips were possibly displayed using an incorrect text color. Fixed.
  11. The selected text line of the find results window was displayed in an incorrect color. Fixed.
  12. The source viewer's "file not found" notification was displayed in an incorrect text color. Fixed.

Version 2.60 [12 Oct 2018]

New Features

  1. Added support for trace timestamps.
  2. The timeline's x-axis unit can now be toggled between the options "cycles", "nanoseconds" and "instruction count".
  3. Added support for selective tracing: users may now set tracepoints on source and assembly code lines in order to filter MCU trace data in hardware.
  4. Added a new debug information window "Power Graph". The power graph window displays the target's power usage within an interactive signal plot.
  5. Added a new main menu: "Find". The find menu facilitates navigation to program symbols.
  6. Users may now add as many memory and register windows to the main window as desired.
  7. Program disassembly can now be exported as GNU-syntax assembly code.
  8. Debugging features requiring BMA can now be used even when BMA is not supported in hardware (via J-Link emulation). This includes RTT and live watches.

Improvements (Debugging)

  1. Added support for target interface cJTAG.
  2. The breakpoints and data breakpoints windows were unified to become the "breakpoints/tracepoints" window.
  3. Disassembly was upgraded from ARMv7 to ARMv8 and label resolution was improved.
  4. Ozone now evaluates the VFP register context of the program before exception entry on ARM.
  5. The disassembly window now supports text selection.
  6. Environment variables can now be specified within file path arguments.
  7. Ozone project scripts now support unary C++ operators.
  8. Program defines can now be used as operands within expressions.
  9. Identical expressions can now be added multiple times to the watched data window.
  10. The instruction trace and timeline windows are no longer reset when the debug session is stopped.
  11. The call stack window now displays the reason for unwinding stop in a separate table row.
  12. The navigation facilities of the memory window were improved.
  13. The time to open ELF files containing a large amount of data sections was improved.
  14. The data graph window's performance when running for long periods of time was improved.
  15. Improved the comprehensibility of warning messages emitted by Ozone's ELF parser.

Improvements (Projects)

  1. Users are now notified about erroneous project settings via a popup dialog that opens when the project file is loaded.
  2. The project's hardware configuration is now compared to the build target of the ELF file. A warning is displayed when the settings mismatch.
  3. When the project file contains function or command parameter errors, project loading is no longer aborted.
  4. Project wizard generated projects now remain valid even when the application's root folder is moved to a different location.
  5. Plugin names can now be specified case-insensitively.
  6. The display formats and refresh rates of watched expressions are now restored from the user file.
  7. Graphed expressions are now restored from the user file.
  8. The current tab of the data graph window is now restored from the user file.
  9. Added system variables VAR_MAX_POWER_SAMPLES, VAR_POWER_SAMPLING_SPEED, VAR_TARGET_POWER_ON, VAR_TRACE_CORE_CLOCK, VAR_TRACE_TIMESTAMPS_ENABLED and VAR_MEM_ZONE_RUNNING.
  10. Added commands "Project.SetTerminalLogFile", "Project.DisableSessionSave", "Break.SetCmdOnAddr", "Trace.ExportCSV", "Coverage.ExcludeNOPs", "Script.DefineConst", "Util.LogHex" and "Edit.MemZone".
  11. Command "Debug.ReadIntoTraceCache" was renamed to "Debug.ReadIntoInstCache".

Improvements (Dialogs)

  1. All input dialogs were reworked to show concise input examples.
  2. The trace settings dialog was simplified and new settings were added.
  3. The instruction trace export dialog now provides an input field for the number of instructions to export.
  4. Added checkbox "reload skip" to the breakpoint dialog: when unchecked, the breakpoint's skip condition only applies until the first time the breakpoint is hit.
  5. Added option "search inline assembly code" to the text search dialog.
  6. The text search dialog is now opened at its previous position instead of window-centered.
  7. All tool dialogs now feature a "save to project file" button.
  8. Added a dialog to the register window that allows the configuration of the displayed registers.
  9. Minimized system variable editor content. All variables that can already be accessed from context menus or the user preference dialog were removed.

Improvements (GUI)

  1. Pointer members are now displayed as immediate children of the pointer symbol.
  2. Table columns no longer resize to contents when items are expanded or collapsed.
  3. Double-clicking on the header of a table column now causes the column to resize to fit all content.
  4. The sample cursors of the data graph and timeline windows may now be fixed at intervals of 10% of the window width.
  5. The source viewer's sidebar now resizes to fit the last document line number instead of the last visible line number.
  6. Touchpad control of the data graph window was improved.
  7. The toolbars of the data graph and timeline windows can now be toggled.
  8. When all instruction trace nodes are collapsed, reloaded data is added to initially collapsed nodes.
  9. Added a zoom position indicator to the memory usage window.
  10. Row selections now use system-default highlighting colors.
  11. The positions of expressions within the watched data window may now be rearranged via drag & drop.
  12. Added context menu entry "Memory Zone" to the memory and watched data windows.
  13. Added context menu entry "Edit Segments" to the memory usage window.
  14. Added context menu option "Current Frame On Top" to the call stack window.
  15. Added context menu option "Group By Root Functions" to the call graph window.
  16. Added context menu entries "Fit Width", "Fit Height", "Fit Selection", "Auto Fit Height" and "Uniform Sample Spacing" to the data graph window.
  17. Added context menu entries "Fit Width" and "Fit Selection" to the timeline window.
  18. Added context menu entry "Open Include File" to the source viewer.
  19. Context menus now open at the position of the text cursor or text selection when evoked via hotkey.
  20. Added user preferences PREF_CALLSTACK_LAYOUT, PREF_CALLSTACK_DEPTH_LIMIT, PREF_MAX_POWER_SAMPLES, PREF_TIMELINE_TOOLTIPS, PREF_CG_GROUP_BY_ROOT_FUNCS, PREF_TERMINAL_CAPTURE_LIMIT, PREF_RESIZE_COL_ON_EXPAND, PREF_RESIZE_COL_ON_COLLAPSE and PREF_TIMESTAMP_FORMAT.

Improvements (Other)

  1. The user guide underwent a general update.
  2. Ozone's installer filenames were unified across all supported operating systems.
  3. Updated the included J-Link library to version 6.34h.

Program corrections

  1. The invisible part of the memory selection was not copied to the clipboard. Fixed.
  2. The project wizard did not support backslash directory separators. Fixed.
  3. The timeline stack could become misaligned in the vicinity of WFE/WFI instructions. Fixed.
  4. Instructions not contained in any function were possibly disassembled incorrectly. Fixed.
  5. The callgraph window possibly did not display function pointer calls for ELF files not including relocation symbols. Fixed.
  6. Launching a RAM debug session from SES or via command line possibly failed. Fixed.
  7. Hotkey F9 possibly toggled a breakpoint on a source line different from the selected one. Fixed.

Version 2.56w [31 Aug 2018]

Improvements

  1. Updated the included J-Link library to version 6.34e.

Program corrections

  1. The FreeRTOS-Awareness plugin was not compatible with the latest FreeRTOS release 10.1. Fixed.
  2. Expressions containing symbol operands could not be added to the Data Graph Window before the debug session was started. Fixed.
  3. Expressions containing floating-point arithmetic were possibly not evaluated correctly (since version 2.42). Fixed.
  4. Expressions were possibly not evaluated correctly following reload of the program file (introduced with version 2.56v). Fixed.
  5. Removed a typo from a popup message. Fixed.

Version 2.56v [21 Aug 2018]

Program corrections

  1. Under special circumstances, the timeline got misaligned in the vicinity of function pointer calls and memory-loading control transfer instructions. Fixed.
  2. The total stack size of FreeRTOS tasks was possibly determined incorrectly when configuration flag 'configRECORD_STACK_HIGH_ADDRESS' was set. Fixed.
  3. The refresh rates of watched expressions were possibly reset when the program file was reloaded. Fixed.
  4. Expressions containing type cast operators were possibly not evaluated correctly (introduced with version 2.56u). Fixed.

Version 2.56u [17 Aug 2018]

Improvements

  1. The performance of the data graph was improved.
  2. Updated the included J-Link library to version 6.34b.

Program corrections

  1. Data breakpoints having word or half-word access widths were possibly not unset correctly. Fixed.
  2. Ozone was inadvertently limited to a maximum RTT data readout rate of around 250 KB/s. Fixed.

Version 2.56t [02 Aug 2018]

Improvements

  1. Updated the included J-Link library to version 6.32i.

Program corrections

  1. The device selection dialog did not display supported device Zilog Z32F3841. Fixed.
  2. Possible string buffer overflow within Ozone's ELF parser. Fixed.
  3. The data graph window's automatic vertical scaling possibly failed for signals with small values. Fixed.
  4. The refresh rates of watched expressions were inadvertently reset when the program file was reloaded. Fixed.
  5. The context menu actions of vertical scrollbars were possibly not performing the expected operation. Fixed.
  6. Possible incorrect console feedback for commands "Target.Write[x]". Fixed.
  7. The functions window was possibly not showing the row selection highlight on sub-items. Fixed.

Version 2.56s [06 Jul 2018]

Improvements

  1. Updated the included J-Link library to version 6.32h.

Program corrections

  1. Automatic selection of CMSIS-SVD files for Cortex-M33 targets with floating point unit was inoperative. Fixed.
  2. The timeline possibly became unaligned in situations where an ARM LDR instruction was succeeded by an ISR entry. Fixed.
  3. The disassembly window could possibly not be scrolled beyond memory segment start addresses. Fixed.
  4. Data graph interaction above time values > LONG_MAX microseconds was impossible. Fixed.
  5. The device selection dialog displayed memory sizes above 1MB incorrectly. Fixed.
  6. The task list possibly remained empty when the program contained a source file with filename "OS_Global". Fixed.
  7. Symbol member tooltips were possibly not evaluated correctly in 32-bit builds of Ozone. Fixed.
  8. Editing of bitfields possibly resulted in wrong values being written to target memory. Fixed.
  9. Next/previous word keyboard navigation within tabulated document lines was possibly executed incorrectly. Fixed.
  10. A warning message for command "Project.SetOSPlugin" contained an incorrect plugin name on unix ("FreeRTOSPlugin" instead of "freeRTOSPlugin"). Fixed.

Version 2.56r [12 Jun 2018]

Improvements

  1. Updated the included J-Link library to version 6.32f.

Program corrections

  1. The included J-Link library contained a software bug that possibly caused Ozone to crash on debug session start. Fixed.
  2. The status bar was possibly not updated following program file download. Fixed.

Version 2.56p [05 Jun 2018]

Improvements

  1. Added command "Trace.ExportCSV".

Program corrections

  1. Ozone macOS and Linux: source file paths were possibly read incorrectly from ELF files compiled under windows. Fixed.
  2. The refresh rates of watched symbols were possibly reset when the symbol went out of scope (regression since version 2.56n). Fixed.
  3. Call stack evaluation possibly failed for PC's above 0xFF000000. This bug possibly also induced invalid memory accesses. Fixed.

Version 2.56o [01 Jun 2018]

Improvements

  1. Updated the included J-Link library to version 6.32d.

Program corrections

  1. When ELF data section "debug.frame" contained an invalid entry, Ozone possibly crashed. Fixed.
  2. Command "Debug.Connect" possibly returned before the debug session startup sequence was complete. Fixed.
  3. FreeRTOS tasks with floating point context possibly displayed incorrect call stacks. Fixed.
  4. When multiple instances of Ozone were opened, Ozone became sluggish in reaction. Fixed.

Version 2.56n [24 May 2018]

Program corrections

  1. Incorrect disassembly of multiple ARM/Thumb instructions. Fixed.
  2. The refresh rates of watched expressions were erroneously reset to "off" when the program was resumed. Fixed.
  3. Incomprehensible warning message originating from the ELF parser were printed to the console window. Fixed.

Version 2.56m [17 May 2018]

Improvements

  1. Timeline analysis was improved in situations where the instruction trace contains unknown code.
  2. The file open time for C++ programs was improved.
  3. Updated the included J-Link library to version 6.32c.

Program corrections

  1. Fixed a possible infinite recursion within the ELF parser module. Fixed.
  2. Static class member variables were missing the "static" type name prefix. Fixed.
  3. Command "Project.RelocateSymbols" could not be used while the debug session was running. Fixed.

Version 2.56l [08 May 2018]

Program corrections

  1. Symbol members were possibly not displayed for compiler-optimized programs. Fixed.
  2. The status bar text was possibly not updated while the timeline window was loading data. Fixed.
  3. Selecting an instruction with "unknown address" within the instruction trace window caused the disassembly window to scroll to undefined positions. Fixed.
  4. Table window cells were possibly not updated when command "Edit.DisplayFormat" was executed. Fixed.

Version 2.56k [04 May 2018]

Improvements

  1. The global data window now also displays local static variables.
  2. Ozone's idle-state CPU usage has been reduced.
  3. Updated the included J-Link library to version 6.32a.

Program corrections

  1. Text search possibly did not begin at text position 0 when the cursor was placed at that location. Fixed.
  2. Breakpoints were possibly not restored correctly following reload of a modified program file. Fixed.
  3. When the debugee was rebuild while Ozone's "reload program file confirmation dialog" was not yet closed, the dialog was opened a second time. Fixed.

Version 2.56j [26 Apr 2018]

Improvements

  1. Updated the included J-Link library to version 6.32.

Program corrections

  1. Possibly incorrect y-axis auto-scaling within the data graph window. Fixed.
  2. Ozone printed embOS task priorities as 32bit signed (instead of unsigned) integers. Fixed.

Version 2.56i 20 Apr 2018]

Improvements

  1. Periodic refresh of watched expressions is now initially disabled in order to avoid adverse effects on the target system's real time behaviour.

Program corrections

  1. Ozone possibly crashed when analyzing streaming trace data of large functions. Fixed.
  2. Ozone printed embOS task priorities as 8 bit (instead of 32 bit) integers. Fixed.
  3. The windows installer created a start menu folder structure on Windows 10 (where it is not supported). Fixed.
  4. The disassembly window possibly read from target memory address 0x0 after program reset even when the PC was initialized to different value in script function "AfterTargetReset". Fixed.
  5. Command 'View.Data' was disfunctional for arguments "PC", "SP" and "LR". Fixed.
  6. When an expression was removed from the data graph window, sampling data possibly became corrupted. Fixed.
  7. The data graph window's samples list was erased when the debug session was stopped. Fixed.
  8. The horizontal scrollbar of table windows possibly remained hidden even when contents did not fit the viewport. Fixed.

Version 2.56h [13 Apr 2018]

Improvements

  1. Updated the included J-Link library to version 6.30k.

Program corrections

  1. Ozone auto-resumed the debugee when it stopped on a semihosting software breakpoint and semihosting was disabled. Fixed.
  2. Register properties were possibly read incorrectly from SVD files when only specified within the top level "device" node. Fixed.
  3. Setting a string-type system variable via command "Edit.SysVar" possibly failed. Fixed.
  4. Wrong color highlighting for console message notifying about core support plugin loading. Fixed.

Version 2.56g [06 Apr 2018]

Improvements

  1. Updated the included J-Link library to version 6.30j.

Program corrections

  1. Peripheral register values were not updated correctly (regression since version 2.54). Fixed.
  2. When the project file contained a syntax error, Ozone possibly became unresponsive when closed. Fixed.

Version 2.56f [29 Mar 2018]

Improvements

  1. Updated the included J-Link library to version 6.30i.

Program corrections

  1. Reset mode "Reset & Break at Symbol" was disfunctional when the reset handler was specified as destination symbol. Fixed.
  2. Symbols not contained in any ELF file data section were not displayed within the memory usage window. Fixed.
  3. The name of symbols with string table data section offset 0 was possibly not displayed correctly. Fixed.
  4. Inline assembly text lines were possibly displayed duplicated following reload of the program file. Fixed.
  5. The task list remained empty when an RTOS-Plugin was loaded after the debug session had already been started. Fixed.
  6. During debug session startup, the debugger possibly accessed registers while the CPU was not halted. Fixed.
  7. An incorrect command feedback was printed to the console window when a source breakpoint was set. Fixed.
  8. The register window's title bar text was possibly updated incorrectly. Fixed.
  9. Filenames such as "main.c" could not be specified as source file arguments. Fixed.
  10. Source line information was possibly read incorrectly from ELF files containing DWARF version 4 debug information. Fixed.
  11. Source breakpoints set from script files were possibly disabled on program file load. Fixed.
  12. On macOS, the debugger possibly displayed incorrect filenames for filepaths containing backslash directory separators. Fixed.

Version 2.56e [12 Mar 2018]

Improvements

  1. Updated the included J-Link library to version 6.30g.

Program corrections

  1. The data graph window's symbol list was cleared when a different program file was loaded. Fixed.
  2. Expressions containing cast or dereference operators were possibly not evaluated correctly on Linux. Fixed.
  3. Conditional breakpoints referencing local register variables were possibly not evaluated correctly. Fixed.
  4. The layout of floating windows was possibly restored incorrectly from user preference files. Fixed.
  5. RTT data capture was not started when connection mode attach (or attach/halt) was used. Fixed.
  6. File.Exit possibly did not close Ozone in case a debug window was floating. Fixed.
  7. Commands given relative file paths arguments possibly failed when path substitution settings were configured. Fixed.
  8. Tooltips were not displayed (introduced with V2.56). Fixed.
  9. When a source line or instruction address of a non-active call frame was selected and F9 was pressed, the breakpoint was possibly not set on the selected line/address. Fixed.
  10. Instruction trace data was possibly not reloaded when the instruction trace window was scrolled to the top. Fixed.
  11. Fixed multiple bugs related to the display and layout of window items.

Version 2.56d [05 Mar 2018]

Improvements

  1. Updated the included J-Link library to version 6.30f.

Program corrections

  1. Settings edited via the J-Link Settings dialog were not applied when Ozone was started with an empty project. Fixed.
  2. Ozone possibly crashed when the download address input dialog was accepted. Fixed.
  3. The generic memory dialog displayed an incorrect file size when opened in download mode. Fixed.
  4. Data breakpoints could not be toggled on array elements via command "Break...OnSymbol". Fixed.
  5. Debug windows were possibly not updated following a reset with mode RM_RESET_HALT. Fixed.
  6. Data graph output possibly became erroneous following a reload of the program file. Fixed.
  7. Ozone possibly became unresponsive when a program file was reopened while source breakpoints were expanded. Fixed.
  8. Fixed multiple bugs related to the display and layout of window items.

Version 2.56c [16 Feb 2017]

Improvements

  1. Added user manual sections "5.5. Downloading Program Files", "5.6. Register Initialization" and "6.3. Incorporating a Bootloader into Ozone's Startup Sequence".
  2. Updated the included J-Link library to version 6.30d.

Program corrections

  1. Ozone applied standard PC and SP register values even when script function "AfterTargetReset" was implemented. Fixed.
  2. On unix, absolute source file paths were possibly missing the leading directory separator. Fixed.
  3. Script commands requiring the CPU to be halted possibly failed when executed immediately after hardware-reset. Fixed.

Version 2.56b [12 Feb 2017]

Improvements

  1. Updated the included J-Link library to version 6.30c.

Program corrections

  1. Script callback functions were possibly not executed synchroneously with Ozone API commands. For example, script callback "AfterTargetDownload" was possibly not executed subsequent to command "File.Load". Fixed.
  2. The debugger possibly did not switch to running state in situations where the target was resumed unexpectedly following a single step. Fixed.

Version 2.56a [08 Feb 2017]

Improvements

  1. The time to open complex ELF programs was improved.
  2. Updated the included J-Link library to version 6.30b.

Program corrections

  1. On Linux and macOS, symbol tooltips displayed file paths instead of file names. Fixed.
  2. ELF source file paths possibly contained duplicate directory separators. Fixed.
  3. Code profile data was possibly missing when debugging ELF files with large code size (>1 MB). Fixed.
  4. Code profile text filters were possibly not applied to unexpanded nodes. Fixed.
  5. Changes to CPU register performed within script function "TargetReset" were possibly not applied. Fixed.
  6. Incorrect console feedback for command "Edit.SysVar" with parameter "VAR_BREAKPOINT_TYPE". Fixed.
  7. Globally disabled table columns were possibly reactivated by user preference files. Fixed.
  8. Fixed multiple bugs related to the display and layout of window items.

Version 2.56 [01 Feb 2018]

New Features

  1. Added general support for the RISCV MCU architecture and concrete support for RISCV ISA specification RV32I.

Improvements

  1. Added commands "Break.SetCommand", "Project.ConfigSemihosting" and "Script.Exec".
  2. Added a button to the find dialog: "find previous".
  3. Ozone expressions now support the scope operator ("::").
  4. Symbols are now displayed using qualified (scoped) names wherever neccessary.
  5. Symbol resolution by name was improved and is now sensitive to both the PC and text cursor location.
  6. The view menu was regrouped and a new entry was added: "Enter Full Screen".
  7. Renamed the edit menu to "Tools". Affiliated user actions now start with the prefix "Tools", e.g. "Edit.Preferences" is now "Tools.Preferences".
  8. Renamed three debug windows: "Memory" to "Memory Content", "JLink Web Control" to "JLink Control Panel" and "Data Breakpoints" to "Breakpoints on Data".
  9. The window menu now shows the list of open source documents.
  10. The memory usage window now provides thumbnail previews of memory regions and keyboard navigation was improved.
  11. Breakpoint application is now delayed until after the program file was downloaded.
  12. Added a "save to project file button" to the J-Link settings dialog and removed the popup dialog.
  13. Peak memory usage was reduced.
  14. Ozone now ships with the most current J-Link device definition files.
  15. Updated the included J-Link library to version 6.30a.

Program corrections

  1. The automatic selection of peripheral unit SVD files for Cortex-M0/M1 target devices was inoperable. Fixed.
  2. Disassembly export of purely inline expanded functions was not possible. Fixed.
  3. The user notification "program file opened, download to target?" was no longer shown after command "File.Load" was used. Fixed.
  4. For watched expressions of the form "const char*+offset", the string pointed to was possibly not displayed. Fixed.
  5. It was impossible to set a breakpoint on an overridden function via the context menu of the functions window. Fixed.
  6. Ozone's ELF parser module possibly failed to parse ELF files containing debug data sections larger than 2^25 bytes. Fixed.
  7. The source viewer did not accept key sequences containing Alt-Gr on Windows. Fixed.
  8. Documents with expanded source lines could not be edited. Fixed.
  9. The active document could not be closed via the window menu when the source viewer had no input focus. Fixed.
  10. When a text line containing tabulators was edited, characters were possibly not inserted at the correct text position. Fixed.
  11. Project files created on macOS could not be opened on Windows or Linux. Fixed.
  12. The find results window possibly displayed blank lines in between search results. Fixed.
  13. After accepting the notification dialog "continue debugging with modified documents?", the debug session could no longer be started. Fixed.
  14. Commands "File.Load" and "Target.LoadMemory" applied load address relocation only to single-record data files. Fixed.
  15. Semihosting via software interrupt (SWI) was inoperational. Fixed.
  16. Text search within edited documents was inoperable. Fixed.
  17. Text search via find next (F3) did not start at the current text cursor position. Fixed.
  18. The Memory Usage Window discarded symbols and data sections not contained within any top level memory segment. Fixed.
  19. Fixed multiple bugs related to the display and layout of window items.

Version 2.54b [20 Dec 2017]

Improvements

  1. Added input field "end address" to the generic memory dialog.

Program corrections

  1. Project settings were possibly not inserted at the correct project file text location. Fixed.
  2. Multiple instances of the find/replace dialog could be opened. Fixed.
  3. Multiple svd files contained incorrect CP15-register bit field specifications. Fixed.
  4. Action find next (F3) was disfunctional (regression). Fixed.
  5. The source files window possibly displayed duplicate file paths. Fixed.
  6. Fixed multiple bugs related to the display and layout of window items.

Version 2.54a [20 Dec 2017]

Improvements

  1. Disassembly now forces output alignment on user input addresses.
  2. Updated the included J-Link library to version 6.22d.

Program corrections

  1. Faulty conversion to native newline format when editing standard text files. Fixed.
  2. The debugger did not adapt to a changed RTT control block location following program file reload. Fixed.
  3. When editing the find dialog's search text field, the text cursor jumped to the last character. Fixed.
  4. Thumb instructions were possibly showing incorrect condition codes. Fixed.
  5. The memory window remained empty following debug action "Reset & Run". Fixed.
  6. For ELF files without mapping symbols, source lines could possibly not be expanded. Fixed.
  7. Fixed multiple bugs related to the display and layout of window items.

Version 2.54 [05 Dec 2017]

New Features

  1. Added debug information window "Memory Usage".

Improvements

  1. Disassembly output has been improved and brought to conformance with UAL.
  2. Ozone expressions now support casts to array type and from program variables.
  3. The dialog option "Do not show again" is now persistent across Ozone sessions.
  4. Added command View.MemoryMap.
  5. Updated the included J-Link library to version 6.22a.

Program corrections

  1. The RPM package installer could fail due to a letter casing error in the dependancy description. Fixed.
  2. When an empty project was created and a target device was selected via the device selection dialog, the register window was not reinitialized. Fixed.
  3. Fixed a possible crash that could occur when target memory was read. Fixed.
  4. Ozone possibly crashed when an out-of-date RTOS plugin was loaded. Fixed.
  5. Members of bitfield-structures were possibly displaying an incorrect data type and value. Fixed.
  6. Bitfield-structures of packed size less or equal to 1 byte were possibly displayed incorrectly. Fixed.
  7. Added missing peripheral "USART3" to svd file STM32F407IG.svd.
  8. Multiple peripheral register SVD files were missing from the macOS application bundle. Fixed.
  9. Disassembly for functions of size less than 4 bytes was not shown. Fixed.
  10. Fixed multiple bugs related to the display and layout of window items.

Version 2.52d [10 Nov 2017]

Improvements

  1. Added submenu "Recent Programs".

Program corrections

  1. Automatic reload of modified program files was inoperable. Introduced with 2.52c. Fixed.
  2. Initial table column sizes were possibly incorrect when no user settings file and no registry data were available. Fixed.

Version 2.52c [09 Nov 2017]

Improvements

  1. The console window now provides message timestamps.
  2. When a debug session is running and a program file is opened, users can now select if the file is to be downloaded via a confirmation dialog.

Program corrections

  1. The source viewer exhibited font kerning artificats on unix. Fixed.
  2. Source file resolution was partially inoperable on macOS. Introduced with version 2.52. Fixed.
  3. Static class member variables were possibly displayed as being out of scope. Fixed.
  4. The task list was possibly empty for "extreme release"-type embOS builds. Fixed.

Version 2.52b [02 Nov 2017]

Improvements

  1. Updated the inluded J-Link library to version 6.20h.

Program corrections

  1. The device selection dialog did not allow to select Cortex-M3 R2P1 target devices. Fixed.
  2. Static class member variables were possibly displayed as being out of scope. Fixed.

Version 2.52a [27 Oct 2017]

Improvements

  1. The memory window's "copy special" context menu was reworked.

Program corrections

  1. When a project was generated and a breakpoint was set, the breakpoint did not get added to the breakpoint window until the debug session was started. Fixed.
  2. Incorrect display of multi-line description texts within the register window. Fixed.
  3. On execution point change, the memory window possibly did not auto-scroll to the input box value. Fixed.

Version 2.52 [20 Oct 2017]

New Features

  1. The terminal window was upgraded with options "Echo Input", "Zero-Terminate Input" and "End Of Line Format".
  2. The memory window was upgraded with selection and copy-to-clipboard capabilities.

Improvements

  1. Added commands "Profile.Export", Profile.ExportCSV" and "Project.SetConsoleLogFile".
  2. Disassembly is now always performed from a safe starting point such as a function or data section base address.
  3. Added keyboard-specific hotkey aliases (e.g., the shortcut "Ctrl-+" can now also be triggered by pressing "Ctrl-=" on UK and US keyboards).
  4. The page scrolling behaviour of all debug information windows was improved.

Program corrections

  1. User input to register-based local variables was possibly not reflected within symbol windows. Fixed.
  2. Trace settings were possibly not applied correctly when option "override trace settings" was selected. Fixed.
  3. Program segments larger than 10 MB could not be downloaded. Fixed.
  4. Source line information for the instruction preceeding the program's high PC was possibly incorrect. Fixed.
  5. File paths starting with backslashes were misidentified as relative paths on windows. Fixed.
  6. Bitfield structures containing non-bitfield members were possibly showing incorrect data. Fixed.
  7. The application crashed when a hidden J-Link device was selected. Fixed.

Version 2.50c [05 Oct 2017]

Improvements

  1. Updated the included J-Link library to version 6.20d.
  2. Added context menu entry "Show Instruction Encodings" to the disassembly window.
  3. Added user preferences PREF_NO_SRC_EDIT and PREF_NO_SRC_EDIT_ONLINE.
  4. Byte sizes of source files are now computed as the sum of byte sizes of all contained functions. Previously, byte sizes were computed as the difference between high and low PC values.
  5. A small breakpoint icon on an unexpanded source code line now indicates that at least one breakpoint is set on an instruction affiliated with the line.
  6. The default setting for uninstaller option "Remove Application Settings" was set to "no".

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. When a data file was opened, the source viewer's document state was possibly not restored correctly. Fixed.
  3. The disassembly window was cleared and remained empty when the program file was reloaded in offline mode. Fixed.

Version 2.50b [22 Sep 2017]

Improvements

  1. Updated the included J-Link library to version 6.20a.
  2. The execution counter display state is saved session persistently to user perspective files.
  3. A message box notification is shown when system variable VAR_BREAK_AT_THIS_SYMBOL is invalid.

Program corrections

  1. The initial disassembly view location was possibly determined incorrectly when the ELF file did not provide entry point information. Fixed.
  2. When system variable "BreakAtThisSymbol" was set to an invalid value and the ELF file did not provide entry point information, the program was resumed following reset. Fixed.
  3. ELF files without data sections could possibly not be loaded. Fixed.

Version 2.50a [15 Sep 2017]

Program corrections

  1. User perspective files of older format possibly caused the state of table windows to be restored incorrectly. Fixed.
  2. Removed invalid symlink 'libQtWebKit.so.' from subfolder Lib. Fixed.
  3. Library libQtWebKit.so.4 contained an invalid dynamic linker name. Fixed.

Version 2.50 [11 Sep 2017]

Improvements

  1. Updated the included J-Link library to version 6.20.

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. Incorrect disassembly output in offline mode when symbol relocation settings were used. Fixed.
  3. When the complete document text was deleted, undo was not available. Fixed.
  4. FreeRTOS-Plugin: the xPSR register value was updated to an invalid value when switching tasks. APSR, IPSR and EPSR were not affected. Fixed.
  5. Source breakpoints with mixed-state derived breakpoints could not be cleared by clicking on the sidebar. Fixed.

Version 2.47 [06 Sep 2017]

New Features

  1. Ozone now supports editing of documents.

Improvements

  1. Added user preferences PREF_SHOW_ENCODINGS_ASM and PREF_SHOW_ENCODINGS_ITRACE.
  2. Added command 'Project.AddRTTSearchRange'.
  3. Added command line arguments --jlinkscriptfile and --jtagconfig.
  4. Disassembly for PC-relative load instructions now displays the values of loaded data.
  5. Literal data is no longer disassembled as program code.
  6. File path resolution settings do no longer have to be specified before opening the program file.
  7. The timeline window's zooming behaviour has been reworked to allow continous zoom level adjustments.

Program corrections

  1. Directory macros were expanded with trailing directory separator but should have been expand without. Fixed. Please note that users may have to adjust their project's path resolution settings following this change.

Version 2.46c [05 Sep 2017]

Improvements

  1. Updated the included J-Link library to version 6.18d.

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. When the text cursor was positioned on empty source lines, view-category actions could still be triggered via hotkey. Fixed.
  3. Console feedback for commands containing the dollar sign was erroneous. Fixed.
  4. Register descriptions were possibly cut off within tooltips. Fixed.
  5. Incorrect initial width of the register window's name column following debug session start. Fixed.
  6. The window layout was possibly restored incorrectly from user perspective files on certain platforms such as ARCH-Linux. Fixed.

Version 2.46b [25 Aug 2017]

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. CMSIS-SVD tag "cluster" was not supported. Fixed.
  3. User perspective files: dock window height restored incorrectly by the title bar margin. Fixed.
  4. Integer variables with type string "long ulong" were possibly misinterpreted as 32 bit integers. Fixed.
  5. Editing memory window items possibly caused the editor to jump to undefined locations. Fixed.

Version 2.46a [21 Aug 2017]

Improvements

  1. Updated the included J-Link library to version 6.18c.

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. Action "View.Source" was possibly jumping to incorrect source lines when used via hotkey. Fixed.
  3. Disassembly of PC-relative load/store instructions possibly displayed incorrect data addresses. Fixed.

Version 2.46 [17 Aug 2017]

Improvements

  1. Added option "clear on reset" to the terminal window.

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. Modifiying breakpoints via keyboard shortcuts could lead to undefined breakpoint behaviour. Fixed.
  3. Startup of Ozone from within SEGGER's Embedded Studio was possibly taking unusually long. Fixed.
  4. Following program file reload, disabled breakpoints were possibly no longer displayed by the source viewer. Fixed.

Version 2.45a [14 Aug 2017]

Improvements

  1. Updated the included J-Link library to version 6.18a.
  2. Added user preference "PREF_MAX_SYMBOL_MEMBERS".
  3. Command "File.Open" does no longer download the opened program when a debug session is running.
  4. Command line option "--datafile" was replaced with option "--programfile".
  5. Ozone's touchpad scrolling behaviour was improved.
  6. Ozone's expression evaluator now supports multi-dimensional arrays subscripts.

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. When the reset mode was RM_RESET_HALT and script function "AfterTargetHalt" was in use, PC highlighting was possibly missing initially. Fixed.
  3. Disassembly was not aligned to symbol and section boundaries when in offline mode. Fixed.
  4. Local data window contents were cleared when the call stack window was closed. Fixed.
  5. Symbol expressions with enumeration-type array subscripts were possibly not evaluated correctly. Fixed.
  6. The command line parser did not accept both "-" and "--" as option specifiers and did not allow dashes in file paths. Fixed.

Version 2.45 [07 Aug 2017]

New Features

  1. A filter bar has been added to the table-based debug information windows.
  2. All disassembly-related features of Ozone are now also available in offline mode.

Improvements

  1. Updated the included J-Link library to version 6.18.
  2. Added columns "Address" and "Description" to the register window.
  3. Added command "Debug.ReadIntoTraceCache".
  4. Added option "parent relative load" to the code profile window. When set, the CPU load of an item is displayed relative to its parent item.
  5. The memory window now accepts drops of register and symbol items.
  6. The address input box of the memory window now supports expression input. When the expression value changes, the memory window auto-scrolls to the new value.
  7. When the J-Link dialog is accepted, a notification dialog will appear that allows users to commit changes to the project file.
  8. Table header titles are now aligned identical to column content.
  9. The table column state and the toolbar state are now saved to/restored from user perspective files.
  10. The C++ runtime library is now statically linked to avoid possible library dependancy issues on linux.

Program corrections

  1. None.

Version 2.44e [03 Aug 2017]

Program corrections

  1. Symbol tooltips were no longer displayed (regression). Fixed.
  2. SVD register field arrays possibly not parsed correctly. Fixed.
  3. The project wizard did not support single backslashes as directory separators. Fixed.
  4. The project wizard possibly selected an incorrect SVD file for ARM7/9/11 targets. Fixed.
  5. Source viewer arrow key navigation was inoperable on windows. Fixed.

Version 2.44d [26 Jul 2017]

Program corrections

  1. The display of hexadecimal numbers was possibly incorrect when display option "divide big hexadecimal numbers" was set. Fixed.
  2. Incorrect display of array elements for arrays with more than 2 dimensions. Fixed.
  3. The layout of stacked debug information windows was not restored correctly from user perspective files. Fixed.
  4. Ozone possibly crashed when viewing the FreeRTOS task list while RAM was not initialized. Fixed.

Version 2.44c [25 Jul 2017]

Improvements

  1. Updated the included J-Link library to version 6.16j.
  2. Improved integration of pointing devices with horizontal scrolling capability.

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. On unix, the file dialog did not allow to select files without extension.
  3. The viewport of the disassembly window could be scrolled beyond address 0. Fixed.
  4. Source viewer arrow key navigation was inoperable on macOS. Fixed.
  5. Certain types of expressions were not evaluted correctly. Fixed.
  6. Register window contents were no longer available following a reconnect. Fixed.

Version 2.44b [20 Jul 2017]

Improvements

  1. Updated the included J-Link library to version 6.16i.
  2. Added checkbox "override trace timings" to the trace settings dialog.

Program corrections

  1. The default trace pin sampling delay was configured at 0 ns, but should have been 2 ns. Fixed.

Version 2.44a [19 Jul 2017]

Improvements

  1. Updated the included J-Link library to version 6.16h.

Program corrections

  1. Fixed multiple problems related to the layout and display of window items.
  2. Entering "?" or "help" into the console did no longer print the command list. Fixed.
  3. Hotkeys "y" and "n" for dialog buttons yes and no were not accepted. Fixed.
  4. Branch labels for CBZ/CBNZ instructions were not displayed. Fixed.
  5. Following a reload of a modified program file, disassembly output was possibly incorrect. Fixed.
  6. RTT IO could not be started when no program file was specified. Fixed.
  7. The debian installer contained an invalid library dependancy. Fixed.

Version 2.44 [13 Jul 2017]

New Features

  1. Added new command line arguments for startup project generation (user manual chapter 7).
  2. Ozone now assigns each project a user perspective file (*jdebug.user). When the user perspective file is present and the project is opened, the project-specific window layout is restored.
  3. Added a new debug information window: J-Link Web Control.

Improvements

  1. Source file resolution information is now aggregated and output in a single log message.
  2. The disassembly window no longer shows source line labels affiliated with invalid symbol information (optimized code).
  3. Restructured the command layout within wizard-generated script function "OnProjectLoad".
  4. SWO Settings have been moved from the terminal settings dialog to the trace settings dialog.
  5. Trace configuration was reworked. Added new commands "Project.SetTraceSource", "Project.SetTraceTiming", "Project.SetTracePortWidth" and "Project.ConfigSWO". Command "Project.SetSWO" is now obsolete. Use commands "Project.ConfigSWO" and "Project.SetTraceSource" instead.
  6. The project wizard now automatically selects an appropriate SVD-file for the private peripheral bus when a Cortex-M device is selected.
  7. When completing the trace settings dialog, the user is now asked if changes should be commited to the project file.

Program corrections

  1. Fixed multiple bugs related to the display and layout of GUI items.
  2. Ozone tooltips possibly remained on top of other windows. Fixed.
  3. Enum-type symbol members were possibly displayed at a wrong byte size. Fixed.

Version 2.44 [13 Jul 2017]

New Features

  1. Added new command line arguments for startup project generation (user manual chapter 7).
  2. Ozone now assigns each project a user perspective file (*jdebug.user). When the user perspective file is present and the project is opened, the project-specific window layout is restored.
  3. Added a new debug information window: J-Link Web Control.

Improvements

  1. Source file resolution information is now aggregated and output in a single log message.
  2. The disassembly window no longer shows source line labels affiliated with invalid symbol information (optimized code).
  3. Restructured the command layout within wizard-generated script function "OnProjectLoad".
  4. SWO Settings have been moved from the terminal settings dialog to the trace settings dialog.
  5. Trace configuration was reworked. Added new commands "Project.SetTraceSource", "Project.SetTraceTiming", "Project.SetTracePortWidth" and "Project.ConfigSWO". Command "Project.SetSWO" is now obsolete. Use commands "Project.ConfigSWO" and "Project.SetTraceSource" instead.
  6. The project wizard now automatically selects an appropriate SVD-file for the private peripheral bus when a Cortex-M device is selected.
  7. When completing the trace settings dialog, the user is now asked if changes should be commited to the project file.

Program corrections

  1. Fixed multiple bugs related to the display and layout of GUI items.
  2. Ozone tooltips possibly remained on top of other windows. Fixed.
  3. Enum-type symbol members were possibly displayed at a wrong byte size. Fixed.

Version 2.42b [10 Jul 2017]

Improvements

  1. Updated the included J-Link library to version 6.16f.

Program corrections

  1. Script error when specifying negative numbers in project files. Fixed.
  2. When no data file was specified and the connection mode was "Attach & Halt", disassembly output was possibly incorrect. Fixed.
  3. Pressing hotkey F6 triggered command "Debug.Halt" multiple times. Fixed.
  4. Possible incorrect frame alignments within the timeline window. Fixed.
  5. Sidebar breakpoint indicators were possibly lost when reloading a modified program file. Fixed.

Version 2.42a [28 Jun 2017]

Improvements

  1. Updated the included J-Link library to version 6.16e.

Program corrections

  1. The expression evaluator neglected the program execution point scope when evaluating symbol expressions. Fixed.
  2. Scope of local variables possibly determined incorrectly. Fixed.
  3. XMC 1100 series devices were no longer selectable within the device selection dialog. Fixed.

Version 2.42 [22 Jun 2017]

New Features

  1. Ozone now supports ARMv8-M based devices.

Improvements

  1. CSV exports now use comma as column separator to improve compatibility with CSV viewers.
  2. Tooltips have been reworked to use less display space.
  3. Added two new user preferences: "PREF_SHOW_SYMBOL_TOOLTIPS" and "PREF_SHOW_HEX_BLOCKS".
  4. Contents of debug windows with PC-dependant data is no longer cleared when the program is resumed. Instead, content is grayed out.
  5. For pointer-type symbols, "view.data" now jumps to the memory location pointed to instead of the pointer location.
  6. The code profile CSV export was reworked. Users may now select the program entity reported about.
  7. Added two additional code profile filters: "Coverage.Exclude" and "Coverage.Include".
  8. The Code Profile Window now displays code profile statistics on two more tree levels: "source line" and "instruction".

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. User Action "View.InstrTrace(n)" did not select instruction n. Fixed.
  3. Floating dock windows were not closed when pressing the corner button. Fixed.
  4. When SWO speeds were configured within the project file, SWO data capture was not started on debug session start. Fixed.
  5. When searching for text, button "Find Next" needed to be clicked twice in order to jump from the last to the first matching line.
  6. Fixed a possible infinite recursion in the ELF parser module. Fixed.
  7. The CSV output of the Data Graph Window contained non-printable characters. Fixed.

Version 2.40d [14 Jun 2017]

Program corrections

  1. Symbols with constant or undefined data locations were possibly showing incorrect values. Fixed.
  2. Dwarf-V4 attributes of type "DW_FORM_ref_addr" were not evaluated correctly. Fixed.
  3. Script command "Target.GetReg" possibly returned incorrect values. Fixed.
  4. On Linux, Ozone possibly did not start on distrubutions with Qt4 versions other than 4.8.6. Fixed.

Version 2.40c [12 Jun 2017]

Improvements

  1. Updated the included J-Link library to version 6.16b.

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. Expressions containing members of anonymous structures were not evaluted correctly. Fixed.
  3. Byte sizes of 32-bit integer array elements were possibly evaluated as 8 bytes. Fixed.

Version 2.40b [01 Jun 2017]

Program corrections

  1. ELF library: fixed a parse error that occurred in conjunction with unsupported Dwarf-V5 location expressions. Fixed.
  2. CMSIS SVD files: field arrays possibly not parsed correctly. Fixed.

Version 2.40a [26 May 2017]

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. When a document was closed within an inactive source viewer, the active debug information window was closed instead. Fixed.
  3. The Q flag of the XPSR register was displayed incorrectly within register group "All Cpu Registers". Fixed.

Version 2.40 [19. May 2017]

Improvements

  1. Updated the included J-Link library to version 6.14h.
  2. Added two new user preferences: "PREF_INDENT_INLINE_ASSEMBLY" and "PREF_DIALOG_SHOW_DNSA".
  3. The register groups "All" and "Current" on Cortex-M have been merged into a single register group "CPU".
  4. The column order and sort indicator of table windows is now maintained persistently across sessions.
  5. When navigating instruction trace rows, function blocks are now auto-expanded.
  6. When navigating from the source viewer to another debug window via a shortcut, the ESC key can now be used to switch back to the source viewer.
  7. The source viewer's line number, execution counter and inline assembly fonts can now be configured individually via the user preference dialog.
  8. The source viewer now supports further standard hotkeys such as F3, Ctrl+F3 and Ctrl+Tab.
  9. Added a context menu entry to the source viewer that allows to select the line number frequency.
  10. The Memory Window now supports drag & drop of program symbols.
  11. Added a new main menu "Window" that aids in navigating the currently open debug information windows.
  12. Within the Windows start menu, the version number was added to the application name.
  13. The instruction trace and timeline windows now retain their data content when the program is resumed.
  14. Ozone's source-stepping code was improved in order to support current versions of GCC.
  15. The hotkey navigation behaviour of the timeline window was improved.
  16. For mixed mode disassembly, the display of labels and source lines can now be toggled individually.
  17. The disassembly window's text highlighting was improved.
  18. Multiple hotkeys were adjusted in order to conform to IDE standards.
  19. The breakpoint window has been reworked.
  20. The ID number of a breakpoint (as required by certain commands) has been changed into a text ID (address or source location).
  21. The instruction breakpoint has been split into two types: normal and derived from source. The latter is displayed using a smaller diameter icon.

Program corrections

  1. The source viewer only displayed the first instruction block of multi-block source lines. Fixed.
  2. Performing a text selection anchored at the start or end of a source line did not work properly. Fixed.
  3. Tooltips were possibly displayed outside of the desktop area. Fixed.
  4. Program files of s-record type (.mot, .srec) larger than 1MB could possibly not be opened. Fixed.
  5. Setting a breakpoint's type to "soft" could have erratic side effects such as clearing the breakpoint. Fixed.
  6. Stepping onto a disabled source breakpoint could possibly clear the breakpoint. Fixed.
  7. When no program file was downloaded on debug dession start, disassembly output was possibly wrong. Fixed.
  8. When switching from an IP connection to USB, Ozone could not connect to the target. Fixed.
  9. On MacOS, the find dialog opened up behind the main window and could no longer be used. Fixed.

Version 2.32 [10. Apr 2017]

Improvements

  1. Improved Ozone's compatibility with color themes.

Program corrections

  1. Context menu entry "view data" possibly navigated to a wrong data location for local symbols. Fixed.

Version 2.31 [05. Apr 2017]

New Features

  1. Added symbol relocation support via command "Project.RelocateSymbols".
  2. Added a new debug information window: "Timeline".

Improvements

  1. Updated the included J-Link library to version 6.14c.

Program corrections

  1. Under connection modes "Attach & Halt" and "Attach", instruction trace output was not correct. Fixed.

Version 2.30d [05. Apr 2017]

Program corrections

  1. Using "expand all" within the source viewer multiple times in a row could lead to duplicate assembly code rows being shown. Fixed.

Version 2.30c [27. Mar 2017]

Program corrections

  1. Under special circumstances, source file paths were possibly displayed multiple times within the source files window. Fixed.
  2. Under special circumstances, source file paths were possibly displayed multiple times within the source files window. Fixed.

Version 2.30b [17. Mar 2017]

Program corrections

  1. In situations where an SFR's data range was visible within the memory window, the register value was not updated correctly. Fixed.
  2. Ozone did not skip the special filename "built-in" that some compilers emit to the ELF source file table. Fixed.
  3. Fixed a possible crash that occurred when a program file was downloaded after flash memory was erased. Fixed.

Version 2.30a [13. Mar 2017]

Program corrections

  1. In certain situations, opening a non-ELF data file via command "File.Open" could cause Ozone to crash. Fixed.
  2. Program files of s-record type (.mot, .srec) could not be opened when records were terminated by a single line feed or cariage return character. Fixed.

Version 2.30 [13. Mar 2017]

Program corrections

  1. The watched data window was not updating correctly when switching the current frame via the call stack window. Fixed.
  2. Local data window "auto mode" was disfunctional. Fixed.
  3. In certain situations, expressions containing pointer arithmetic were not evaluated correctly. Fixed.

Version 2.29 [01. Mar 2017]

Improvements

  1. Updated the included J-Link library to version 6.14b.
  2. Various performance improvements.
  3. The log-message quality was improved.
  4. Added system variable "VAR_TRACE_PORT_WIDTH".
  5. The call stack window got four additional columns: stack info, PC, return address and return address location.
  6. 32-bit thumb instructions are now displayed as two individual halfwords.
  7. Added support for context-sensitive symbol tooltips (source viewer).
  8. The call graph window now displays information about the stack usage of functions.

Version 2.22p [22. Feb 2017]

Improvements

  1. Source viewer context menu entries "View.Source", "View.Disassembly" and "View.Data" no longer require a text selection to be made.
  2. The disassembly window now also displays absolute branch addresses.

Program corrections

  1. Fixed multiple bugs related to the display and layout of GUI items. Fixed.
  2. Non-linked functions were displaying breakpoint and line expansion indicators. Fixed.

Version 2.22o [03. Feb 2017]

Improvements

  1. Updated the J-Link software library to version 6.12i.
  2. Arguments to command "Exec.Command" may now include Ozone directory macros.

Program corrections

  1. Project file error messages were limited to 100 characters and printed multiple times to the console window. Fixed.
  2. J-Link script files set via command "Project.SetJLinkScript" were not executed on debug session start. Fixed.

Version 2.22n [31. Jan 2017]

Program corrections

  1. Ozone did not start when a log file was specified. Fixed.
  2. The local data window did not always display the "this pointer" entry when stepping inside class functions. Fixed.

Version 2.22m [19. Jan 2017]

Improvements

  1. Updated the included J-Link library to version 6.12f.
  2. Improved error message logging in cases where unknown or invalid ELF information is encountered.
  3. Changed command "Project.SetRootPath" to "Project.AddRootPath".

Version 2.22l [05. Jan 2017]

Program corrections

  1. The call stack was possibly not build correctly in situations where a call frame's return address was specified to be contained within register R14. Fixed.
  2. The call graph window did not display content. Fixed.

Version 2.22k [02. Jan 2017]

Program corrections

  1. The element capacity of multi-dimensional arrays was not always evaluated correctly. Fixed.
  2. Register bit-fields where not updating correctly when the parent register was out of view. Fixed.

Version 2.22j [22. Dec 2016]

Improvements

  1. Updated the included J-Link library to version 6.12d.

Program corrections

  1. Fixed a possible performance problem when loading ELF-Files on non-Cortex-M targets. Fixed.

Version 2.22i [15. Dec 2016]

Program corrections

  1. When setting or clearing data breakpoints, not all windows were updating icons immediately. Fixed.
  2. The register window displayed incorrect register values for suspended tasks. Fixed.

Version 2.22h [12. Dec 2016]

Program corrections

  1. The application crashed when editing invalid memory (marked with dashes) via the memory window. Fixed.
  2. When command "Edit.Color" was executed from a script function, color name input such as "steelblue" was not recognized. Fixed.

Version 2.22g [08. Dec 2016]

Program corrections

  1. On Cortex-A/R and ARM targets, the Local Data Window possibly displayed incorrect symbol data locations and the Register Window possibly displayed incorrect register values. Fixed.
  2. The application crashed when dragging & dropping source-viewer text onto the watched data window. Fixed.

Version 2.22f [05. Dec 2016]

Improvements

  1. Updated the included J-Link library to version 6.12b.

Program corrections

  1. The data locations of local symbols with block-scope was possibly not evaluated correctly. Fixed.
  2. Non-printable characters were displayed incorrectly within symbol windows and tooltips. Fixed.

Version 2.22e [01. Dec 2016]

Improvements

  1. Updated the included J-Link library to version 6.12.
  2. The user manual was updated to version 2.22 rev. 3.

Program corrections

  1. When using arrow-down within the Source Viewer, the text cursor could go out of sight. Fixed.
  2. Word-Wrapping within ToolTips did not work correctly. Fixed.
  3. CMSIS-SVD value type "ScaledNonNegativeInteger" was not parsed correctly. Fixed.
  4. Console feedback of command "Elf.GetExprValue" showed incorrect data locations for register symbols. Fixed.
  5. Expressions containing local register variables were possibly not evaluated correctly. Fixed.
  6. Expressions with complex-type array subscripts were possibly not evaluated correctly. Fixed.
  7. While holding down a stepping hotkey, the PC and LR register values were possibly updated incorrectly. Fixed.

Version 2.22d [21. Nov 2016]

Improvements

  1. Update the J-Link library to version 6.10n.

Program corrections

  1. The data graph window's y-axis auto-scaling was not always working properly. Fixed.
  2. In certain situations, the instruction trace window was loosing the first chunk of PC backtrace data. Fixed.
  3. When memory was edited while the program was running, Ozone halted the target without querying for BMA capability. Fixed.
  4. On Windows 10, Ozone did not catch the input focus after the user accepted the reload file dialog. Fixed.
  5. Disassembly showed incorrect instruction encodings outside the program's address range on ARM7/9 MCU's. Fixed.
  6. Disassembly was not aligned at ELF file segment boundaries and mapping symbols. Fixed.

Version 2.22c [07. Nov 2016]

Program corrections

  1. Source line coverage statistics were unavailable when debugging on certain Cortex-M target MCU's. Fixed.

Version 2.22b [04. Nov 2016]

Program corrections

  1. J-Link error and warning messages were not delegated to the console window. Fixed.
  2. Members of callsite symbols having register-based memory locations were not always evaluated correctly. Fixed.
  3. Call frame register value R0 was not restored correctly in case the location rule was DW_FRAME_SAME_VAL. Fixed.
  4. Possibly bogus call stacks when debugging ELF programs containing DWARF version 4 debug information. Fixed.

Version 2.22a [02. Nov 2016]

Program corrections

  1. Reset to symbol was broken. Fixed.

Version 2.22 [31. Oct 2016]

Improvements

  1. Updated the J-Link software library to version 6.10j.
  2. A message dialog now warns users in case the connection to the target MCU has been lost.
  3. Expressions can now be edited after having been added to the watched data window.
  4. Added two more columns to the FreeRTOS task window: notify value and notify state.
  5. The selected source text is now evaluated as expression and the result is shown in a tooltip.
  6. Improved the disassembly window's auto-scrolling behavior.
  7. Added new commands "Profile.Include" and "Profile.Exclude" that facilitate filtering of items within the code profile window.
  8. Added new command "Project.SetJLinkLogFile".
  9. Ozone has been tested for runtime errors using valgrind and GCC sanitizers with the result of an overall improved stability.

Version 2.20j [21. Oct 2016]

Improvements

  1. Updated the J-Link software to version V6.10h.

Program corrections

  1. Crash in J-Link software version 6.10d when closing threads. Fixed.

Version 2.20i [18. Oct 2016]

Program corrections

  1. When canceling a message box via the escape key, the dialog was accepted instead of being rejected. Fixed.
  2. "Virtual" was not displayed in the type name of virtual functions (C++). Fixed.
  3. Segment padding bytes were resolved incorrectly in situations where the first data section ended at a segment boundary. Fixed.
  4. The disassembly window's base address could be set to the second half-word of 32-bit instructions leading to incorrect disassembly. Fixed.
  5. Symbol values that contained block separator characters could not be edited. Fixed.
  6. System variable "VAR_BREAK_AT_THIS_SYMBOL" could no longer be set via command Edit.SysVar. Fixed.

Version 2.20h [6. Oct 2016]

Program corrections

  1. Target memory was not read item-wise as fallback in situations where 0 bytes of block were read successfully. Fixed.
  2. Possibility of incorrect disassembly when scrolling upwards within the disassembly window. Fixed.
  3. Possibility of infinite script function recursion when using certain commands within certain script functions. Fixed.

Version 2.20g [30. Sep 2016]

Program corrections

  1. Disassembly window: instruction encoding incorrect for mixed endianess targets. Fixed.
  2. Setting system variables via command "Edit.SysVar" crashed the debugger. Fixed.
  3. An explicit readback of values written to target memory via symbol windows was performed. This could induce unwanted side effects when writing to special function registers.

Version 2.20f [27. Sep 2016]

Program corrections

  1. C++ 11 data type "_Bool" was not supported. Fixed.

Version 2.20e [23. Sep 2016]

Program corrections

  1. Inline disassembly did not separate trailing data blocks from instruction blocks. Fixed.
  2. Watched expressions could not be edited while the program was running. Fixed.
  3. Source viewer sidebar: instruction icons were displayed on invalid text lines. Fixed.
  4. Source viewer inline disassembly: address strings displayed in wrong format for instructions with invalid encoding. Fixed.

Version 2.20d [22. Sep 2016]

Program corrections

  1. Fixed a generic program crash. Fixed.

Version 2.20c [21. Sep 2016]

Improvements

  1. The default data export directory was set to the user home directory.

Program corrections

  1. Instruction trace data was lost in scenarios of quickly succeeding stop/resume operations. Fixed.
  2. The code profile window showed incorrect execution counts following a reload of the program file. Fixed.
  3. Updated the J-Link software to version 6.10a.

Version 2.20b [19. Sep 2016]

Program corrections

  1. The total encompassed address range of header files was determined incorrectly. Fixed.
  2. The disassembly of external library functions could not be exported. Fixed.
  3. Deadlock between the GUI and target sheduler threads. Fixed.
  4. Context sensitivity was broken in situations where the call stack contained a call site multiple times. Fixed.
  5. The functionality of project command "Project.AddPathSubstitute" was broken.

Version 2.20a [16. Sep 2016]

Program corrections

  1. Instruction trace data was unintentionally cleared when selecting a task within the task window. Fixed.
  2. Fixed a possible problem with infinite recursion within the call stack generation code. Fixed.
  3. Data breakpoints could not be set on symbols whose name matched a hexadecimal value. Fixed.
  4. The memory window's data content was unintentionally displayed as invalid after changing the item display format. Fixed.

Version 2.20 [15. Sep 2016]

New Features

  1. Added data export functionalities to the code profile window and the disassembly windows.
  2. Added instruction and source line execution counters to the code windows.
  3. Added streaming (live) trace support.

Improvements

  1. Reworked visualization of breakpoints and PC indicators within inline disassembly.
  2. Navigation facilities of the source viewer were improved. Added horizontal scrolling via Ctrl-up/down and functionality for Home and End keys.
  3. The "Find" context menu entry now performs an infix instead of a prefix substring search.

Program corrections

  1. Internal warnings were printed to the console window on starting the debugger. fixed.
  2. System variable "VAR_BREAK_AT_THIS_SYMBOL" could not be set via script function. fixed.
  3. Expressions including pointers did not evaluate correctly in some cases. fixed.
  4. The device selection dialog allowed the selection of Core #2 for single-core devices. Fixed.
  5. Fixed a synchronization issue that could lead to register accesses while the target was running. Fixed.

Version 2.18c [22. Aug 2016]

Program corrections

  1. The sort order of table windows was not restored after reloading the program file. Fixed.
  2. The call stack window did not highlight the selected call frame. Fixed.
  3. The display of enumeration constants within symbol windows was broken. Fixed.
  4. Code Profile Window: filtered symbols were unintentionally changing position while the program is running. Fixed.
  5. Disassembly window: instruction half-words were displayed in the wrong order. Fixed.
  6. The size of 8-byte integer symbols was displayed as 4 bytes. Fixed.

Version 2.18b [12. Aug 2016]

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. Symbols of floating point type declared as "constexpr" were not displayed correctly. Fixed.
  3. The display of symbol member lists was limited to 100 entries. Fixed.
  4. The watched data window's live update mode became inoperable when setting the refresh rates of all watched symbols to 0. Fixed.
  5. The PC line was not always maintained window-centered when stepping into a different source code document. Fixed.

Version 2.18a [09. Aug 2016]

Program corrections

  1. Crash when expanding source code lines. Fixed.

Version 2.18 [05. Aug 2016]

Improvements

  1. Ozone crashed on Mac when undocking a window that contained a tabbar. Fixed.

Program corrections

  1. Crash on Mac when undocking a window that contains a tabbar. Fixed.

Version 2.17 [26. Jul 2016]

New Features

  1. Added a new debug information window: Data Graph. This window allows users to monitor the time-course of symbol expressions at high resolutions.

Improvements

  1. Added a checkbox to the bottom of all notification dialogs allowing the dialog to be suppressed.
  2. The new project wizard now opens the peripheral file selection dialog in "/Config/Peripherals" per default.
  3. The last table row of the watched data window now acts as an input field.
  4. Added coprocessor register scripting support via commands "Target.SetReg" and "Target.GetReg".
  5. Added a context menu entry "Find" to all table windows that allows users to search for a particular item within a particular column.
  6. The loading time of ELF-Files was improved by a factor of 3.
  7. The call graph window now determines caller-callee relationships via disassembly analysis instead of source-code analysis.
  8. The text value of string-type symbols can now be edited.
  9. The data breakpoint dialog now allows to specify the breakpoint's memory location as symbol expression.
  10. Data breakpoints can now be edited via script command "Break.EditOnData" or via the context menu of symbol windows.

Program corrections

  1. The memory window performed explicit data readbacks when editing items which could lead to unwanted effects when editing SFR's. Fixed.
  2. The context menu did not always open when pressing the context menu hotkey. Fixed.
  3. The register window did not display change levels after Resume / Halt cycle. Fixed.
  4. Plugin API function "OnDebugStart" was called before target connection was established. Fixed.
  5. On mac, the application's monospace font did not adapt to changes of the application font. Fixed.
  6. The instruction trace window became inoperable after a restarting the debug session. Fixed.

Version 2.16h [26. Jul 2016]

Program corrections

  1. On big endian targets, the encoding of assembler instructions was not always displayed in the correct byte order. Fixed.
  2. Symbol data locations using register-based addressing were not always evaluated correctly. Fixed.

Version 2.16g [25. Jul 2016]

Program corrections

  1. An infinite recursion within the call stack generation code lead to empty output. Fixed.
  2. Functions with inline expansions defined in multiple compilation units were displayed as individual functions. Fixed.

Version 2.16f [19. Jul 2016]

Program corrections

  1. Source lines expanded in online mode were not collapsed when going offline. Fixed.
  2. The disassembly window and source viewer displayed incorrect disassembly while the program is running. Fixed.
  3. The memory window did not update correctly when set at address 0x0 when starting the debug session. Fixed.
  4. When script function "AfterTargetConnect" contained a download operation, the main program image was no longer downloaded. Fixed.

Version 2.16e [12. Jul 2016]

Program corrections

  1. Bit-fields of array registers were not displayed correctly. Fixed.
  2. Registers marked as having read-side-effects were read nonetheless. Fixed.
  3. CMSIS-SVD tags "writeConstraint", "readAction" and "modifiedWriteValue" were not supported. Fixed.
  4. Projects generated by the new project wizard tried to read from the vector table even when no program file had been set. Fixed.
  5. After a flash download failed, the error notification dialog was possibly skipped. Fixed.
  6. When adding symbols to the watched data window in offline mode, the initial refresh rate was not set correctly. Fixed.

Version 2.16d [01. Jul 2016]

Program corrections

  1. The data locations of auto-variables were possibly evaluated incorrectly. Fixed.
  2. When toggling the memory window's toolbar on targets without background memory access, window contents were not updated correctly. Fixed.
  3. The watched data window did not display change level highlighting when in live mode. Fixed.
  4. The license dialog's serial number field always showed the value 0. Fixed.
  5. ELF mapping symbols were not evaluated correctly for TI-compiler-generated program files leading to various problems such as inoperable breakpoints. Fixed.

Version 2.16c [27. Jun 2016]

Program corrections

  1. Extra breakpoint actions were performed in situations where the PC was on a breakpoint and the target was reset. Fixed.
  2. Extra breakpoint actions were performed even when the affiliated checkbox was unchecked. Fixed.
  3. The value of an array expression was considered to be the array bytes instead of the arrays memory address. Fixed.
  4. The context menu did not always open when pressing the keyboard's context menu key. Fixed.

Version 2.16b [17. Jun 2016]

Program corrections

  1. the register window did not display change levels after a resume/halt cycle. Fixed.

Version 2.16a [09. Jun 2016]

Program corrections

  1. Fixed a crash within the function window. Fixed.

Version 2.16 [07. Jun 2016]

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. Plugin API function "OnDebugStart" was called before a target connection was established. Fixed.
  3. When editing registers, input values were interpreted in window display format instead of the register's display format. Fixed.
  4. Fixed a bug that lead to incorrect disassembly output for address ranges outside the current function. Fixed.
  5. Fixed a possible invalid string buffer access within the ELF-API leading to a program crash. Fixed.
  6. The instruction trace window became inoperable after restarting the debug session. Fixed.
  7. Fixed a memory leak within the expression evaluator. Fixed.
  8. Downlink RTT data transmission was broken. Fixed.
  9. "View.Source" did not jump to the correct source code location in situations where multiple symbols with the same name were defined within different scopes. Fixed.

Version 2.15b [11. May 2016]

Program corrections

  1. Symbol character values were displayed as is, i.e. line feeds were displayed as line feed. Fixed.
  2. The functions window only displayed class names for class constructors. Fixed.

Version 2.15a [27. Apr 2016]

New Features

  1. Watched data is now updated while the target is running. The live watch feature requires the target to support background memory access.

Program corrections

  1. The source viewer could not be scrolled via multi-point touch gestures. Fixed.
  2. The status of blocked embOS tasks was not displayed correctly. Fixed.
  3. The embOS-plugin did not work with build configurations missing certain TCB members (such as XRelease). Fixed.
  4. Registers R0 and SP of embOS tasks were not evaluated correctly on ARM ports. Fixed.
  5. The call stack and used stack size of FreeRTOS tasks what not evaluated correctly. Fixed.
  6. The device selection dialog did not always behave correctly when editing column filters. Fixed.
  7. The console window did not accept commands "?" and "help" and showed incorrect output on empty input. Fixed.
  8. After reconnecting to the target device, J-Link logging output was no longer displayed. Fixed.

Version 2.15 [01. Apr 2016]

Improvements

  1. Reworked the toolbar icons.
  2. On windows, Ozone now ships with the J-Link software library included within its application directory. This allows for an uncomplicated exchange of individual J-Link runtime versions.
  3. The J-Link settings dialog now displays information about the connected emulator and J-Link software version.
  4. All dialogs can now be closed using the escape key.
  5. A more specific error message is printed to the console window when a data breakpoint cannot to be set.
  6. Context menu entries "display" and "display as" are now available for each table column.
  7. Changed the algorithm for determining the optimal table column widths from a max-width to a histogram-based heuristic.
  8. Each symbol now displays an icon resembling the symbol type. Icon colors can be modified via the user preference dialog.

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. The cache of uncertainly disassembled instructions was not cleared when the thumb bit changed. Fixed.
  3. The debugger crashed upon expanding the this-pointer in situations where it was already expanded in other scopes. Fixed.
  4. Expressions containing the cast or address-of operator did not display the correct data location in online mode. Fixed.
  5. Floating point values were always displayed with maximum precision and could not be edited using comma as decimal separator. Fixed.
  6. In offline mode, static or const data members of null-pointers did not display the correct data location. Fixed.
  7. FPU register fields were displayed as floating point numbers. Fixed.

Version 2.14h [23. Mar 2016]

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. Source file root path's including path macros were not recognized. Fixed.
  3. The console and terminal windows displayed wrong context menus when clicking on their command input fields. Fixed.
  4. The data breakpoint window's context menu entry "View.Source" was inoperable. Fixed.
  5. Coprocessor registers could not be edited. Fixed.

Version 2.14g [22. Mar 2016]

Program corrections

  1. Script command "Elf.GetExprValue" returned an error code instead of the expression value. Fixed.
  2. The target interface was configured twice when connecting to the target. Fixed.
  3. J-Link tunnel mode was inoperable. Fixed.

Version 2.14f [21. Mar 2016]

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. Boolean-type symbols could not be edited. Fixed.
  3. The J-Link selection dialog had to be closed multiple times when triggered from script command "Exec.Connect". Fixed.
  4. A J-Link firmware dialog message "Unspecified device selected" was sometimes popping up when closing the debug session. Fixed.
  5. When a watched expression's data type changed, the expression value was not updated correctly.
  6. When adding command Debug.Start() to function OnProjectLoad(), the project warning dialog unintentionally popped up. Fixed.

Version 2.14e [11. Mar 2016]

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. Breakpoint task filters did not work until the task window was updated at least once. Fixed.
  3. The debugger possibly crashed when it was closed while a plugin was still performing operations.
  4. When setting multiple data breakpoints in offline mode, only the first data breakpoint was applied when going online. Fixed.
  5. The project warning dialog's "open" button was inoperative. Fixed.
  6. In certain situations, the data location of union members was not computed correctly. Fixed.
  7. Anonymous type members were not supported. Fixed.

Version 2.14d [07. Mar 2016]

Program corrections

  1. Fixed multiple bugs related to the display and layout of window items.
  2. Constant symbol values were not always displayed in the correct data and display format. Fixed.
  3. Command "Project.SetSWO" did not allow to enable SWO before the debug session was started. Fixed.
  4. Script command "Target.SaveMemory" did not respect directory macros. Fixed.
  5. Hotkey for "Run to Cursor" was broken. Fixed.
  6. The debugger calculated wrong symbol sizes after the program file was reloaded. Fixed.
  7. Resolved file paths possibly contained "cd-up" (\..\) macros. Fixed.
  8. Eliminated a deadlock situation that occurred when the debugger was closed while it was executing a script function. Fixed.

Version 2.14c [02. Mar 2016]

Program corrections

  1. The delete hotkey was not working on the watched data window. Fixed.
  2. The source viewer's text selection context menu was broken. Fixed.
  3. The debugger crashed when opening the file dialog on mac. Fixed.
  4. Peripheral registers were possibly initialized from incorrect target memory addresses. Fixed.
  5. Expressions of floating-point type and constant data location displayed incorrect values. Fixed.
  6. Incorrect output within the watched data window when both a global and a local variable shared the same name. Fixed.
  7. The debugger crashed when adding multiple SVD files containing registers with identical names. Fixed.
  8. Bit-field registers showed an incorrect number of digits. Fixed.

Version 2.14b [25. Feb 2016]

New Features

  1. The ELF parser module has been reworked to use handles instead of pointers.

Program corrections

  1. Fixed a memory leak.
  2. Source file paths relative to the program file could not be resolved. Fixed.
  3. The disassembly window displayed "EEEE" for invalid memory data instead of "----". Fixed.

Version 2.14a [22. Feb 2016]

Program corrections

  1. The user manual menu entry was inoperable on mac. Fixed.
  2. Symbol text value data was not cleared when closing the debug session. Fixed.
  3. The symbol instruction count cache was not cleared when opening an ELF file. Fixed.
  4. Virtual ELF segment addresses were handled incorrectly leading to wrong calculation of instruction counts, amongst others. Fixed.
  5. Data downloads were performed using the system variable VAR_ACCESS_WIDTH setting which was not intended. Fixed.
  6. On linux and mac, context menus needed to be explicitly closed with a mouse click before a reopening was possible. Fixed.
  7. A warning message "cannot read registers while CPU is running" was popping up in situations where conditional breakpoints were used. Fixed.
  8. The disassembly window showed "no program data" for memory locations that contained program code. Fixed.

Version 2.14 [18. Feb 2016]

Improvements

  1. Solidified memory-IO operations - particularly covering situations where the program is running.
  2. Memory window auto refresh is now also available when debugging on MCU's without background memory access.
  3. ELF-File loading time and memory footprint were improved.
  4. The register window now displays contents in offline mode.
  5. An error message is output to the console window when loading a project file that does not specify a CPU register set description file.
  6. The project wizard now writes a project command to the project file that selects the default CPU register set description file.

Program corrections

  1. The memory window's address box drop-down list used a wrong font. Fixed.
  2. Font styles other than "normal" could not be set on windows. Fixed.
  3. The instruction trace window displayed wrong stack positions while scrolling. Fixed.
  4. The size of class member functions was displayed incorrectly. Fixed.
  5. The call-frame sensitivity of the register window was broken. Fixed.
  6. On connect, a download error dialog was shown in situations where script function "AfterTargetConnect" contained a "Target.Write" operation. Fixed.
  7. When periodically receiving semihosting IRQ's in quick succession, the debugger became unresponsive. Fixed.

Version 2.12b [09. Feb 2016]

Program corrections

  1. The register window did not display registers in offline mode. Fixed.
  2. The project settings applied with "SetJLinkScript" and "AddSvdFile" were not reset when opening a new project. Fixed.
  3. Assembler code highlighting showed artefacts on linux and mac. Fixed.
  4. The instruction trace window's context menu entries "View.Source" and "View.Disassembly" were not available on function headers. Fixed.
  5. The code windows displayed incorrect backtrace highlighting color. Fixed.
  6. The device selection dialog's big endian field was not initialized correctly uppon showing the dialog. Fixed.
  7. The symbol size was displayed using the english number format (for ex. 16, 000). Fixed.
  8. The code profile window displayed functions with address ranges of size 0 bytes. Fixed.
  9. On Cortex-M, ELF::GetEntryPointPC() had priority over [VectorBaseAddr+4] when initializing the PC. Fixed.
  10. The memory window was not updated correctly in situations where at least 1 byte was not read successfully. Fixed.
  11. The call stack was computed incorrectly for interrupted tasks on embOS-versions greater than V3.88a. Fixed.
  12. Fixed a crash that occurred when an SVD file was reloaded. Fixed.
  13. Fixed a crash that occurred when the source viewer repainted itself at the same time a data file was opened. Fixed.

Version 2.12a [29. Jan 2016]

Program corrections

  1. Table columns where not sorted case-insensitive. Fixed.
  2. Program files were still not always downloaded correctly. Fixed.

Version 2.12 [27. Jan 2016]

New Features

  1. Added the code profile debug information window. This window displays runtime code metrics such as instruction coverage and CPU load.
  2. None.

Improvements

  1. Updated the J-Link software version to v5.10g.
  2. Reworked the source viewer's symbol tooltip. It now display additional information about the symbol.
  3. Added a drop-down-list to the source-viewer header bar that allows users to filter functions by scope.
  4. Improved the loading time of ELF-Files.
  5. Reworked the "instruction trace window": the window now groups instructions into function nodes.

Program corrections

  1. Program files were not always downloaded correctly. Fixed.

Version 2.10d [04. Jan 2016]

Improvements

  1. Reduced memory consumption when loading program files with high symbol count.

Program corrections

  1. Following a re-configuration of the hardware setup by the user, trace support was not re-evaluated. Fixed.
  2. Fixed a syntax highlighting error occurring in situations where the document contained both cpp and c-style comments in one line. Fixed.
  3. Stepping over source viewer inline disassembly did not work correctly when debugging optimized code. Fixed.
  4. Ozone crashed when reopening the program file. Fixed.
  5. Ozone crashed when clicking on a member of a local symbol. Fixed.

Version 2.10c [11. Dec 2015]

Improvements

  1. Command "Project.AddSearchPath" now accepts relative file paths.
  2. Updated the user manual to include the description of path macros.

Program corrections

  1. The program crashed when executing command "Target.LoadMemory" using a relative file path. Fixed.

Version 2.10b [07. Dec 2015]

Program corrections

  1. The debugger could possibly run into an infinite loop when an ELF-file was opened.

Version 2.10a [01. Dec 2015]

Program corrections

  1. Values of peripheral registers were not displayed. Fixed.

Version 2.10 [27. Nov 2015]

New Features

  1. Added a new user preference "PREF_PREPEND_FUNC_CLASS_NAMES" that controls whether class scopes are prepended to function names.
  2. Added a "class" column to the functions window that is available when debugging C++ programs.
  3. Changed reset mode "Reset & Break At Main" to "Reset & Break At Symbol" and added System Variable "VAR_BREAK_AT_THIS_SYMBOL".
  4. Added a new user preference: "PREF_START_WITH_MOST_RECENT_PROJECT".
  5. Added system variable "VAR_VERIFY_DOWNLOAD". When set, the debugger validates each downloaded data segment and shows a warning dialog when a segment was not downloaded correctly.
  6. Added an additional column to the breakpoint window that informs about the implementation type of a breakpoint.
  7. Added a breakpoint toolbar.
  8. Added a navigation header bar to the source viewer.
  9. Added a new debug information window that displays the call graph of the selected function.

Improvements

  1. Command "Watch.Add" can now be given an arbitrary C-syntax expression.
  2. Added support for CPU-Register-subgroups within the register window. Specific subgroup via register tag "groupName" within SVD files.
  3. Added new command "Debug.Exec (const char* sCommand)" that executes a J-Link command (see J-Link SDK user manual).
  4. Added new commands "Break.SetEx (Addr, Type)", "Break.SetOnSrcEx (sLocation, Type)" and "Break.SetType (ID, Type)" that allow users to specify the implementation type of a breakpoint.
  5. Added a new command "Project.SetBPType(int Type)" and System variable "VAR_BREAKPOINT_TYPE" that set the default breakpoint implementation type.

Program corrections

  1. The debugger did not display the correct register values and the correct call stack for tasks selected within the embOS task window. Fixed.
  2. GHS-compiler generated source file paths could not always be resolved. Fixed.
  3. Context menu action "View.Data" did not always display the correct data location for the selected symbol.

Version 1.79 [13. Okt 2015]

New Features

  1. Source lines can now be expanded to show the affiliated instructions (inline disassembly).
  2. Added BE8 and BE32 big endian program file support.
  3. Added conditional breakpoint support.
  4. Added x64 support on Windows, Linux and Mac OS X.

Improvements

  1. Added a new command "File.Load (const char* sFileName, U32 Address)" that downloads a data (program) file to the MCU without doing a prior hardware-reset.

Program corrections

  1. Hotkeys for welcome screen buttons were inoperable. Fixed.
  2. When a document lined started with a blank, find results were not displayed correctly. Fixed.
  3. Keywords embraced by curly braces where not syntax highlighted correctly. Fixed.
  4. Commands Break.(x)OnSymbol were inoperative from the project file.
  5. Crash when opening a project while a data breakpoint is set. Fixed.
  6. Hexadecimal values could not be input for symbols of signed integer type. Fixed.
  7. In situations where the PC was written to programatically, debug information windows were updated using a different PC value than the input. Fixed.
  8. No command feedback was printed to the console window when editing the display format of a register. Fixed.
  9. Incorrect behavior when editing the file input field of the generic memory dialog. Fixed.

Version 1.78a [01. Sep 2015]

Improvements

  1. In case the project directory contains a J-Link script (same name as project file, but using .jlink extension) it is executed when the debug session is started.
  2. Added the possibility to configure which data types display a textual representation next to their value.
  3. Added a new command "Edit.DisplayFormat (Symbol, Format)" that allows users to adjust the display format of symbols or registers.
  4. Added the possibility to set the display mode for each symbol individually. The context menu entry was split into entries "Display As" and "Display All As".

Program corrections

  1. Members of reference-type variables were not displayed.

Version 1.78 [24. Aug 2015]

Improvements

  1. Symbols of type "const char*" now display the string associated with the symbol value.
  2. Symbols of type "char" now display the ASCII character associated with the symbol value.
  3. Symbol windows no longer contain columns "namespace" and "access" when debugging a c application.
  4. Removed column "namespace" from the local data window.
  5. Automatically selected peripheral svd files now include the path macro "$InstallDir" instead of an absolute file path.
  6. File paths can now be specified relative to the current working directory.
  7. The application executable, the libraries files and the windows installer are now digitally signed.
  8. A shortcut to the user manual was added to the windows start menu.
  9. When double-clicking an instruction within the instruction trace window, the affiliated source and disassembly lines are displayed within the source viewer and the disassembly window, respectively.
  10. Enumeration variables no longer display child items but a value string of the form "enumerator name (const value)".
  11. Added a "this pointer" to the local data window.
  12. Added support for CMSIS-SVD field enumerators (tag: enumeratedValue) and tooltip descriptions.
  13. Added support for CMSIS-SVD register arrays (tags: dim, dimIndex, dimIncrement).
  14. Added a new command "Project.SetTifScanChain (int DRPre, int IRPre)" for JTAG scan chain configuration.
  15. Added text selection capability to the instruction trace window.
  16. The hotkey for step-into (F11) was replaced with F7 on Mac OS X, as F11 is usually already assigned.
  17. Added a new display format "character" to the symbol windows that displays values as ASCII or unicode characters.
  18. A new user preference was added to the terminal window and to the user preference dialog: "suppress control characters".

Program corrections

  1. Source files with unknown file extension could not be resolved. Fixed.
  2. In case the MCU core was unknown to the debugger, the project file warning dialog displayed a needless warning message. Fixed.
  3. Nested namespaces were displayed in wrong order within scoped symbol names. Fixed.
  4. The memory window displayed incorrect change level highlights when scrolling the window following a program reset. Fixed.
  5. Fixed a program crash due to multiple threads accessing a shared data object at the same time.
  6. The value of enumeration variables was not displayed correctly in certain situations. Fixed.
  7. The debugger was not able to read peripheral registers whose size was not specified within the SVD file. Fixed.
  8. The debugger used a wrong path for the application directory ($AppDir) on Mac. Fixed.
  9. The application crashed when accepting the device selection dialog when no device was selected. Fixed.
  10. When canceling the J-Link settings dialog, settings where applied nonetheless. Fixed.
  11. When the first data section of an ELF file did not start at the download segments base address, padding bytes were unintentionally downloaded to the target. Fixed.
  12. Fixed multiple GUI-related bugs within the generic memory dialog. Fixed.
  13. The register set description file "Cortex-A8.svd" was missing. Fixed.
  14. The debugger was not able to load data files without file extension. Fixed.
  15. The viewport of the instruction trace window could be scrolled over the instruction stack boundary. Fixed.
  16. The windows uninstaller failed to remove the start menu folder. Fixed.
  17. The windows installer failed to create a desktop shortcut. Fixed.

Version 1.76a [11. Aug 2015]

Program corrections

  1. The debugger could not select MCU's whose name contained white spaces. Fixed.

Version 1.76 [23. Jul 2015]

New Features

  1. Added a plugin providing FreeRTOS awareness.
  2. Added C++ support.

Improvements

  1. Improved the performance of the embOS awareness plugin.
  2. A hourglass cursor is now displayed while a program file is beeing opened.
  3. Added C++-support to the ELF parser module and improved its performance.

Program corrections

  1. The device selection dialog did not support wildcard (*) characters in filter strings. Fixed.
  2. The caret was not displayed when editing filters in the device selection dialog. Fixed.
  3. On Mac, the application's dockbar icon resolution was too low. Fixed.
  4. The debugger could not select MCU's whose name contained white spaces. Fixed.

Version 1.74a [01. Jul 2015]

Improvements

  1. Empty debug information windows are grayed out and display a label informing about the device state.
  2. Added directory macros $(InstallDir), $(ProjectDir), $(PluginDir), $(ApplicationDir), $(DocDir), $(LibraryDir) to the scripting interface.
  3. File paths can now be specified relative to the project file-. installation- ,or program file directories.
  4. Both the foreground and background colors of change levels can now be configured.
  5. Added call-frame sensitivity to the register window.

Program corrections

  1. Setting the value of pointer variables could potentially lead to infinite recursion and stack overflow. Fixed.
  2. The device selection dialog did not select a default device when shown. Fixed.
  3. The device selection dialog filters were case-sensitive but should not. Fixed.
  4. The memory window's change level highlighting was not working in situations where the window was resized and automatic update was active. Fixed.
  5. An index mapping bug caused faulty register writes on ARM and Cortex-A/R devices. Fixed.
  6. The instruction trace capability of the employed HW setup was determined incorrectly. Fixed.

Version 1.74 [22. Jun 2015]

New Features

  1. The debugger now ships with a plugin that provides embOS kernel awareness.
  2. Added an RTOS-kernel awareness interface to the debugger.
  3. Added Mac OS X support.

Improvements

  1. The memory window now udpates change levels while the program is running and automatic update is active.
  2. Added a write cache to the memory window.
  3. Added user action "view.source" that displays the source code location of a symbol.
  4. A message is printed to the console window when ETM (instruction) trace is not supported.
  5. Added a new button "Open Existing Project" to the welcome screen.
  6. The J-Link settings dialog is now also available on Linux and Mac.

Program corrections

  1. Internal memory IO functions returned an error status when in fact succeeding. Fixed.
  2. When setting file path aliases, directory separators had to be specified exactly as given in the program file. Fixed.
  3. Callsite highlighting was incorrect in situations where the target halted in handler mode. Fixed.
  4. A refiltering of table rows in the device selection dialog was only performed after the input field lost focus. Fixed.
  5. On Linux, the title of the input dialog was not fully visible. Fixed.
  6. On Linux, the maximize button was displayed in a dialog's title bar but should not. Fixed.
  7. After changing the access width parameter of the memory window, the window's contents were not drawn correctly. Fixed.
  8. The source viewer's text selection context menu was only shown when right-clicking on the cursor line. Fixed.

Version 1.72d [14. Jun 2015]

Program corrections

  1. Uninitialized data sections of ELF-Program-Files where downloaded and intialized with 0's. Fixed.

Version 1.72c [09. Jun 2015]

Program corrections

  1. The call stack output on Cortex-M was incorrect when the program caught an exception. Fixed.

Version 1.72b [13. May 2015]

Program corrections

  1. Target application RTT output could get lost. Fixed.

Version 1.72a [11. May 2015]

Program corrections

  1. Register values were cleared on resume but should not. Fixed.
  2. The start button did not work after reopening a project. Fixed.
  3. Memory window change levels were not always reset correctly. Fixed.
  4. Memory window change levels were not updated after a resume/halt cycle. Fixed.
  5. The functions window still displayed "ghost" functions which were not linked by the compiler. Fixed.
  6. SWO calibration was performed even when instruction trace was active. SWO cannot be used in conjunction with instruction trace. Fixed.
  7. The debugger did not check the J-Link emulator for ETM capability when activating instruction trace. Fixed.
  8. The target MCU was not halted prior to a hardware reset, which lead to J-Link firmware message boxes popping up on ARM7 MCU's. Fixed.
  9. When connecting at an adaptive speed, the connection info text was set incorrectly. Fixed.
  10. The command line help was displayed distorted within the console window. Fixed.
  11. Font styles other than "normal" could not be set under Windows. Fixed.
  12. Commands with more than 3 parameters could not be executed via the project file. Fixed.
  13. Disassembly output was not correct for functions without debug information. Fixed.
  14. The program crashed when entering an exception handler due to a fault within the call stack generation code. Fixed.

Version 1.72 [07. May 2015]

New Features

  1. Added Linux OS support.

Version 1.71g [22. Apr 2015]

New Features

  1. Added a plugin interface.

Improvements

  1. Removed system variables VAR_HW_RESET_TYPE, VAR_INIT_REGS and VAR_RESET_DELAY.
  2. Resolved compilation issues on the Mac's XCode compiler.
  3. Removed obsolete source files from the debugger's directory tree.
  4. Data file paths can now be specified relative to the project or root directory when using command "File.Open".
  5. Binary bit field strings are now divided each four bits by a white space for better readability.

Program corrections

  1. Script function "AfterTargetHalt" and plugin function "OnTargetHalt" were only executed following a go/halt cycle, but not when the program was stepped. Fixed.
  2. Commands "Help.Manual" and "Project.SetOSPlugin" were not printing error messages to the console window when input file paths could not be resolved. Fixed.
  3. Structure types were not resolved correctly when specified as "declarative" within the ELF program file. Fixed.
  4. The register window unintentionally displayed flag symbolizers for peripheral registers. Fixed.
  5. Command feedback for command "Target.WriteU16" was displayed as "Target.WriteU32". Fixed.

Version 1.71f [14. Apr 2015]

New Features

  1. Added commands that return principal program addresses: "Elf.GetBaseAddr", "Elf.GetEntryPointPC" and "Elf.GetEntryFuncPC".

Improvements

  1. The project wizard now generates the script function "AfterTargetDownload" per default when a Cortex-M target device is selected. Within that function, the command "Elf.GetBaseAddr" is used to resolve the reset vector.
  2. Updated the employed Qt software library to version 6.8.6.

Program corrections

  1. The parsing of command lines could fail when using brackets within parameter strings. Fixed
  2. The debugger was performing a reset when a project was opened from a running debug session. Fixed.
  3. The instruction trace window did not clear the selected line when loosing focus. Fixed.
  4. ELF-API function "GetEntryPointPC" was possibly returning an uneven address (thumb bit set). Fixed.
  5. MCU memory could not be written to while the CPU was running. Fixed.
  6. It was not possible to drop items onto undocked windows. Fixed.
  7. The call stack window did not unwind exception frames correctly. Fixed.
  8. Signed integer values of 1, 2 and 8 bytes were not displayed as signed within the symbol windows. Fixed.
  9. CMSIS-SVD file bit-field patterns where parsed as [LSB:MSB] but should be parsed as [MSB:LSB]. Fixed.
  10. Command "Target.WriteU16" and "Target.WriteU8" were accessing target memory word-wise. Fixed.

Version 1.71e [16. Mar 2015]

Program corrections

  1. When executing commands such as "Project.SetTargetIF" in offline mode, a connection to the target device was established. Fixed.
  2. When stepping the program, the disassembly window did not clear the PC line. Fixed.
  3. The terminal settings dialog did not display correct values and SWO data output was broken. Fixed.
  4. The instruction trace window did not update correctly following a Step-Over. Fixed.
  5. The instruction trace window did not display content immediately after connecting to the target device. Fixed.
  6. When editing a variable within a symbol window, the source viewer unexpectedly jumped to the variables source code declaration location. Fixed.

Version 1.71d [18. Feb 2015]

New Features

  1. Added an user manual. The user manual can be opened from the help menu.

Program corrections

  1. The project wizard did not out comment script function "AfterTargetDownload" by default. This function is only needed for RAM debug. Fixed.
  2. When no source file root path was specified, relative file paths could not be resolved. Fixed.
  3. The register window was not updating correctly when undocked from the main window. Fixed.
  4. The values of double-type variables were not displayed correctly. Fixed.

Version 1.71c [28. Jan 2015]

Improvements

  1. Added support for Cortex-M7 MCU's.

Version 1.71b [20. Jan 2015]

Improvements

  1. Added commands supporting file path resolution: "SetRootPath", "AddFileAlias", "AddSearchPath" and "AddPathSubstitute".

Version 1.71a [05. Jan 2015]

Improvements

  1. The memory IO read/write chunk size is now adjusted according to the currently set target interface speed.
  2. When the PC line is invisible and is automatically scrolled into view following a step or halt, the PC line is now set to approx. 25% editor height.
  3. Added console text color options to the user preference dialog.
  4. Improved the performance of the local data window when in auto mode.
  5. Improved the parsing time of ELF mapping symbols.

Program corrections

  1. When scrolling a document to the PC line, the selected line highlight was positioned wrongly. Fixed.
  2. The memory window's scrolling behavior was impaired due to a value conversation bug. Fixed.
  3. A synchronization error lead to hard faults during the connect sequence when connecting at a very low target interface speeds. Fixed.

Version 1.71 [18. Dec 2014]

New Features

  1. Added support for ARM7, ARM9, ARM11, Cortex-A and Cortex-R target devices.

Improvements

  1. The register window now displays flag indicator strings for registers.
  2. The register window now displays the current CPU operating mode.
  3. The project wizard now generates the script function "AfterTargetDownload" only when a Cortex-M device is selected.
  4. Added an option to display all global data referenced within the current function to the local data window (auto mode).
  5. Improved the stepping performance.

Program corrections

  1. In certain situations, variables declared as volatile were not updated correctly. Fixed.
  2. The memory window's auto refresh feature was not disabled when debugging on MCU's without background memory access.
  3. Items in color selection dropdown lists were not sorted. Fixed.
  4. The debugger's MCU data cache was not cleared when executing command "Exec.Reset()". Fixed.
  5. In certain situations, the call stack window columns did not auto-resize to contents. Fixed.
  6. The global data window was switching to update mode "always" after having displayed a value tooltip. Fixed.
  7. In certain situations, memory window change levels were not cleared when resetting the program to main. Fixed.
  8. Prior to performing instruction disassembly, no check was performed if the CPU was halted. Fixed.
  9. In certain situations, the function "Connect" internally signaled a success even when the connection failed. Fixed.
  10. Semihosting command "SYS_READ" returned an error code even when the command was successfully executed. Fixed.
  11. Special register names such as SP,PC or LR could not be used as register command parameters when a Cortex-M device was selected. Fixed.
  12. A bug prevented memory blocks to be divided into chunks when writing or reading large memory blocks. Fixed.
  13. While stepping in the disassembly window, the PC line was possibly hidden behind the horizontal scrollbar. Fixed.
  14. Target interface speed "adaptive" could not be set via command "Edit.SysVar". Fixed.
  15. The user interface and progress bar were not responsive when downloading large data files to the target device. Fixed.
  16. When calling the same API function from different threads, callers were notified about job completion too early. Fixed.
  17. When a custom connection routine was specified within the project file, code and data breakpoints where not applied. Fixed.
  18. When the target MCU resumed unexpectedly (for ex. due to a J-Link firmware error), the debugger's CPU state knowledge differed from the actual CPU state. Fixed.
  19. The debugger performed unaligned word accesses to target memory when disassembling thumb-instructions. Fixed.
  20. It was impossible to set multiple data breakpoints with different parameters on identical memory address ranges. Fixed.
  21. Floating-point variables could not be edited via the symbol windows. Fixed.
  22. Fixed a possible infinite loop situation when loading project files that included loop control structures. Fixed.
  23. The function window was displaying "ghost" functions that were not linked by the compiler. Fixed.
  24. When a data file was reloaded after modification, the target MCU was not hardware-reset properly. Fixed.

Version 1.69 [01. Dec 2014]

New Features

  1. Added data breakpoint support.

Improvements

  1. Action "View.Data" was previously only available for top level symbols of the symbol tree and is now available for symbol members as well.
  2. The new project wizard's peripherals file selection box was set to be editable.
  3. Guarded ELF-API functions against access with invalid pointer parameters.
  4. Changed the peripheral register updating method from a block-wise to a register-wise on-demand scheme.
  5. The register window now displays "--------" instead of an empty field if a register value could not be read.
  6. Added the context menu item "View Data" to the register window (for use with peripheral registers).
  7. The symbol windows now display a breakpoint icon if a data breakpoint is set on a symbol.
  8. The debugger now uses firmware-pre-analyzed SWO data instead of performing the SWO data analysis itself.
  9. Debug probe is now queried for SWO capability when determining if the hardware setup supports SWO.
  10. RTT is now automatically enabled when the HW setup supports it and when it has not been explicitly disabled by the user.

Program corrections

  1. Context menu actions in the data breakpoint window were performed for the wrong item after the breakpoint list was sorted. Fixed.
  2. Fixed a bug regarding the resolution of active data breakpoint handles. Fixed.
  3. Local symbols were not updated when the local data window was invisible. Fixed.
  4. The last cursor position was stored with an offset of 1 line when switching between documents. Fixed.
  5. The application was possibly crashing while in a debug session and when opening a project file. Fixed.
  6. Local variables were removed from the watched data window when going out of scope. Fixed.
  7. When restoring the saved state of a window, scrollbar positions and column sizes were not restored correctly. Fixed.
  8. Fixed a wrong status return value when reading memory word-wise that led, amongst other things, to incorrect disassembly output.
  9. Using "Set Next PC" from the disassembly window was delegating focus to the source viewer. Fixed.
  10. "File->New Project" was not creating a standard project file. Fixed.
  11. Action "View.Disassembly" did not select the correct instruction when activated from the source viewer. Fixed.
  12. Clicking a function within the source viewer did not cause the local data window to adopt to the corresponding call frame. Fixed.
  13. In certain situations, data locations of local variables were not updated correctly. Fixed.
  14. Function "ELF_GetGlobalVarCount" returned incorrect values. Fixed.
  15. In certain situations, a deadlock occurred when opening a new project while the CPU was running. Fixed.
  16. Fixed a runtime error in the memory window when scrolling via Page Up/Down.
  17. Breakpoint hotkeys were not working when the breakpoint window was not visible. Fixed.
  18. The register window update was taking very long (multiple seconds). Fixed.
  19. In certain situations, windows were failing to update correctly after performing a reset & halt. Fixed.
  20. The breakpoint window lost its context column information when the source file of a breakpoint was closed. Fixed.
  21. SWO or RTT capture were not disabled when their activation failed. Fixed.
  22. The RTT data buffer was not flushed prior to activating RTT. Fixed.
  23. SWO, Semihosting and RTT were not enabled by default. Fixed.
  24. The Find/Replace-dialog's search setting "match whole word" was inoperable. Fixed.
  25. The Find/Replace-dialog did not save the current search settings. Fixed.
  26. The table header context menu was not opened on right click onto table header. Fixed.
  27. The disassembly window did not highlight the PC line after a run to main and debugging in RAM. Fixed.
  28. The source viewer did not receive focus on the first reset to main. Fixed.
  29. The watched data window lost its item expansion state after a resume/halt cycle. Fixed.
  30. The memory window showed wrong address selection behavior when displaying 4 or 2 bytes per item. Fixed.
  31. Change Levels were not cleared after a reset to main. Fixed.
  32. User input to the memory window did not affect symbol window display values. Fixed.

Version 1.67d [18. Nov 2014]

Program corrections

  1. Changing the target interface speed parameter had no immediate effect when connected. Fixed.

Version 1.67c [13. Nov 2014]

Program corrections

  1. The program crashed when trying to read SWO data from a target device that does not support SWO. Fixed.

Version 1.67b [12. Nov 2014]

Improvements

  1. Added a peripheral register set description (.svd) file selection box to the new project wizard.

Program corrections

  1. A missing CPU register set description file was not indicated by the project warnings dialog. Fixed.

Version 1.67a [12. Nov 2014]

Program corrections

  1. The debugger crashed when trying to open a project file containing syntax errors. Fixed.

Version 1.67 [11. Nov 2014]

Improvements

  1. Renamed command "Break.SetOnLine" to "Break.SetOnSrc".
  2. Reworked the scripting API.

Program corrections

  1. Script function "AfterTargetConnect" was called at an incorrect time during the connect sequence. Fixed.
  2. SWO and RTT were activated on debug session start even when having been disabled from the project file. Fixed.
  3. Writing to target memory was disabled when the target was not halted. Fixed.
  4. Command "Edit.SysVar" emitted incorrect command feedback. Fixed.
  5. The debugger crashed when downloading a data file via command "Exec.Download". Fixed.
  6. The debugger ran into a deadlock when canceling the connection sequence at a popup dialog. Fixed.
  7. Incorrect behavior when double clicking an item of the functions window. Fixed.
  8. Wrong command feedback emitted when closing a window. Fixed.

Version 1.65 [Internal.]

New Features

  1. Added a navigation history to the source viewer.
  2. Added a context menu entry "view data" to the symbol windows that navigates to a symbol's data location.
  3. Added a debugger API that can be invoked from the command line or project file.
  4. Project file scripting support.

Improvements

  1. Added .xml as recognized extension of peripheral register files.
  2. Added support for adding multiple peripheral files to the register window (instead of only one) and changed command "Project.SetPeripheralFile" to "Project.AddPeripheralFile".
  3. Added support for colorized console text.
  4. Activating context menu entry "View source" on local symbols without source line information now jumps to the symbol's parent function instead.
  5. Separated command "Debug.SetNextPC(...)" into "Debug.SetNextPC (address)" and "Debug.SetNextStatement (source location)" for easier use as scripting commands.
  6. Reworked the way the console window performs asynchronous text output.
  7. Reworked the syntax and feedback messages of multiple commands.

Program corrections

  1. The memory window's address dialog could only be opened once. Fixed.
  2. In certain situations, the value of peripheral registers was not displayed correctly. Fixed.
  3. Fixed a runtime error within the xml module.
  4. There was a highlighting artifact when modifying the PC via the WriteRegister command. Fixed.
  5. Non-monospaced fonts were causing incorrect alignments in the source viewer and other windows. Fixed.

Version 1.63 [05. Nov 2014]

New Features

  1. Added a new source viewer context menu entry "set next statement".
  2. Added three new connection modes: download & debug, attach to running application and attach & halt.

Improvements

  1. The local data window now remembers its item expansion state when switching between functions.
  2. Added a horizontal scrollbar to the disassembly window.
  3. Improved memory value caching.
  4. Icons colors now adapt to changes in user color preferences.
  5. Added support for floating-point frequency names, for ex. "104,34 kHz".
  6. Frequency-related system variables are now showing their dimension.
  7. Added support for cross-session persistent GUI preferences.
  8. The find-dialog now adopts the selected text as search string and focuses the search text box when opened.

Program corrections

  1. In certain situations not all breakpoints were cleared during disconnect. Fixed.
  2. Memory access was allowed when an MCU without background memory access was configured and the CPU was running. Fixed.
  3. Breakpoint commands were disabled when they should not be. Fixed.
  4. Breakpoint commands did not accept source location parameters of the form "main.c:27". Fixed.
  5. Actions "BP.set" and "Bp.clear" used the same hotkey when contained in the same menu. Fixed.
  6. The memory window's address box did not update according to the text input. Fixed.
  7. The memory window did not align its editor address to the row byte size when the window was enlarged. Fixed.
  8. The main window title was not updated after loading a new data file. Fixed.
  9. The main window title was not updated when connecting to the target device. Fixed.
  10. The context menu for action "watch symbol" was popping up twice. Fixed.
  11. The title of the locals data window was not updated according to the selected function. Fixed.
  12. Windows were unintentionally receiving focus when using the mouse scroll wheel. Fixed.
  13. The debugger missed to delegate the focus to the disassembly window in certain situations. Fixed.
  14. Step-Over and Step-Into did not respect user-set breakpoints. Fixed.
  15. In certain situations, the debugger failed to display local variables at call-sites correctly. Fixed.
  16. The call stack window remained empty in certain situations. Fixed.
  17. Table grid lines around tree branch indicators were displayed in wrong color. Fixed.
  18. When reloading the application data file, all source documents were closed. Fixed.
  19. Source files were not reloaded when the application data file was reloaded. Fixed.
  20. The start debug button remained in down-state when start was canceled. Fixed.
  21. Fixed a memory leak in the ELF parser module.
  22. Opening a source file caused the debugger to halt the CPU. Fixed.
  23. Selecting items in the system variable editor caused multiple non-related commands to be executed. Fixed.
  24. The project file was modified after executing certain commands. Fixed.

Version 1.59 [23. Sep 2014]

New Features

  1. Added a GUI-preferences dialog allowing the configuration of fonts, colors and other options.
  2. Added callframe sensitivity to the debugger. The local data window and the register window now adapt output to the selected call stack frame.

Improvements

  1. The source viewer now displays the values of variables in a tooltip when hovering over variable names within the source text.

Version 1.57 [11. Sep 2014]

Improvements

  1. Added DWARF V4 type unit support.

Version 1.55c [09. Sep 2014]

Improvements

  1. Improved the algorithm used to resolve the source line affiliated with a machine instruction.
  2. Added the option to display source line numbers.

Program corrections

  1. Missing syntax highlighting for compiler directives "elif", "elif defined" and "if defined". Fixed.
  2. Missing source line highlighting when single-stepping the application. Fixed.

Version 1.55b [08. Sep 2014]

Improvements

  1. The breakpoint window now displays source line breakpoints that map to multiple machine instructions as expandable table items.

Program corrections

  1. The command "view.source" did not emit console feedback. Fixed.

Version 1.55a [04. Sep 2014]

Improvements

  1. Changed the size of breakpoint icons.

Program corrections

  1. Setting source code breakpoints in inline expanded functions did not set the breakpoint on all affected machine instructions. Fixed.

Version 1.55 [03. Sep 2014]

Improvements

  1. Added a "watch" context menu entry to the watched data window.
  2. Added support for inline function expansions.

Program corrections

  1. Symbols that went out of scope were still displaying location and value. Fixed.
  2. Pointer members were resetting their change levels (color highlighting) whenever getting updated. Fixed.
  3. Variables declared as "artificial" within the ELF program file were nonetheless included in the global / local data windows. Fixed.

Version 1.53a [01. Sep 2014]

Program corrections

  1. The uninstaller selected a wrong installation folder. Fixed.

Version 1.53 [28. Aug 2014]

New Features

  1. Disassembly Window now supports a "mixed mode" view.

Improvements

  1. The local data window now auto-resizes the location column whenever a symbol location changes.
  2. Removed syntax highlighting from the function- and source file windows.
  3. Disassembled instructions are now cached to improve performance.

Program corrections

  1. When using command "view.source" from the console window, the selected source line was not always highlighted. Fixed.
  2. The local data window did not display array variable members properly in situations where a variable left and re-entered scope. Fixed.
  3. When the CPU halted on a source line, focus automatically jumped from the disassembly window to the source code window. Fixed.
  4. When a machine code address maps to multiple source lines, a breakpoint on that address was displayed on the last source line instead of the first one. Fixed.

Version 1.51b [08. Aug 2014]

Program corrections

  1. Bug in command "Step-Over". Fixed.
  2. Source viewer syntax highlighting showed artefacts when quotation marks in strings were encountered. Fixed.

Version 1.51a [07. Aug 2014]

New Features

  1. Automatic change detection and reload of modified application file.

Program corrections

  1. Incorrect console feedback when a command was executed with an incorrect number of parameters. Fixed.
  2. In some situations, the terminal window was missing RTT-output. Fixed.

Version 1.51 [04. Aug 2014]

Program corrections

  1. Timeline window output may not be accurate in the particular situation where the target was interrupted in executing a stack-altering or branch-type machine instruction (in order to handle an IRQ). The J-Link team is currently working on a solution to this problem.
  2. The debugging experience might be impaired when debugging compiler-optimized program code. This is not a bug in the software but rather a result of information loss during the compilation phase. It is advised to recompile programs with optimizations turned off prior to debugging the program. See your compiler's user manual for further information on how to disable code optimization.
  3. The layout of window elements might be impaired on high resolution displays such as MacBook's Retina. The Ozone team plans to eliminate this shortcoming in the near future.
  4. None.

Known problems/limitations

  1. The layout of window elements might be impaired on high resolution displays such as MacBook's Retina. The Ozone team plans to eliminate this shortcoming in the near future.
  2. The debugging experience might be impaired when debugging compiler-optimized program code. This is not a bug in the software but rather a result of information loss during the compilation phase. It is advised to recompile programs with optimizations turned off prior to debugging the program. See your compiler's user manual for further information on how to disable code optimization.
  3. The code windows may exhibit font kerning artifacts when a non-monospace font is used.
  4. Version 5 of the DWARF debugging information format is not yet fully supported. It is advised to setup the toolchain to generate DWARF-V4 (or below) output until further notice.
  5. Large ELF files containing decoded symbol data in excess of 2 GB may not load successfully when opened in 32-bit windows builds of Ozone.