XJTAG 2.2 Change Log

This document lists the main changes in each minor release of XJTAG. Please see the Release Notes for a list of breaking changes and other issues for this release.

Version 2.2.13

Released 3 June 2009

  • Fix handling of filenames and paths containing non-ASCII characters.
  • XJRunner Integration: fix issue where subsequent calls to the NewBoard() method when running from a pack file failed.
  • Support netlist format from Mentor Expedition 2007.3.

Version 2.2.12

Released 20 May 2009

  • LabView integration example: fix to prevent hangs when running code.
  • XJEase: fix crash when attempting to use too large a bit range.
  • XJEase: fix crash when using an expression rather than a constant in a JTAGWAIT statement.
  • Stapl: detect errors in compressed data format.

Version 2.2.11

Released 29 April 2009

  • Developer:
    • Crash when adding an existing board with no netlist defined.
    • Circuit file no longer needs to contain code.
    • Some performance increases when saving files.
    • Crash when running code after adding a new device file.
  • XJEase:
    • Report an error if an unsupported instruction is selected for a device.
    • Stop console window from appearing when executing SYSTEM commands.
    • Additional netlist formats.
  • Connection test: better error message if a DIFF_TERM is connected to a power/ground net.
  • Connection test: don’t try to confirm shorts to power nets, since power nets should not be driven.
  • XJDebug: restore code page on exit so that batch files continue to work.
  • XJIntegration: several fixes to improve LabView integration.

Version 2.2.10

Released 24 February 2009

  • Developer:
    • Fix the display of non-ASCII characters in code.
    • Fix crash opening or importing a project that contained errors that caused no board to be created but had XJRunner tests that referenced the board.
  • XJRunner Integration: fix handling of test output to prevent deadlocks when running multiple instances under LabView.
  • XJRunner: fix erroneous errors on other running XJLink tabs if an XJLink is unplugged.
  • XJEase: fix calling a batch file using the SYSTEM function.

Version 2.2.9

Released 13 February 2009

  • Fix handling of non-ASCII characters in the main circuit file or in the device file preamble (i.e. not in an additional code file).
  • Install schematics for Ioboard v2 and Ioboard-PCI.
  • Added Fabmaster, Allegro “report” and Cadence “expanded” netlist formats.

Version 2.2.8

Released 3 February 2009

  • XJEase:
    • Fix the handling of very long JTAG chains.
    • Make sure the working directory is set correctly for the SYSTEM command.
    • Capture and display output from the SYSTEM command.
  • XJAPI: added example C and C# programs.
  • XJRunner
    • The user managed could delete the last user manager from the database in some circumstances.
    • The XJEase serial number variable was not being set when a user-supplied or automatically generated serial number was used.
    • XJRunner should not be able to import old xjrp projects with an xje file as the project file if the user has no XJEase license.
  • Added support files for the new XJIOv2 and XJIO-PCI boards.

Version 2.2.7

Released 8 January 2009

  • XJDeveloper:
    • Make sure list of global variables gets updated as the code is modified.
    • Fix crash when opeing a project that references a BSDL file with an illegal filename.
    • Fix problems handling filenames in Turkish locales.
    • Improved handling of unicode strings (UTF8) in XJEase code.
  • XJAnalyser:
    • Constant pins were not being saved in the project.
    • If the TCK frequency was specified, it was being set after the chain was scanned for the first time.
    • Fix issue opening projects created in previous versions of XJTAG that contain custom pinmaps with high-drive pins.
  • XJRunner: fix crash when opening a corrupted pack file.
  • XJEase: the system could hang in certain circumstances when running XJEase code.
  • Connection Test: fix failure when a diff-term resistor is connected to a power net.
  • Installer: make sure non-administrators can write to the example files installed for all users.
  • Improved the handling of output text in the LabView integration example code.

Version 2.2.6

Released 9 December 2008

  • XJRunner: fix the use of some netlist types when running code from an XJPack file.

Version 2.2.5

Released 4 December 2008

  • XJDeveloper:
    • Don’t mark the project as modified when automatically packing and there are additional files to be packed.
    • Fix inability to add functional tests.
    • Fix crash in some circumstances when attempting to save a project to a location that the user does not have rights to.
  • XJRunner: fix accessing files from code that exist outside the pack file.
  • XJEase:
    • Fix the use of SVF and STAPL files in test-reset sequences.
    • Fix issue accessing global variables in test-reset sequences.
  • XJAnalyser: some pins were erroneously displayed as outputting when a device was in SAMPLE.
  • Fix crash when loading a pinmap with a test-reset sequence that contains an XJEASE call in the Chain Debugger/XJAnalyser.

Version 2.2.4

Released 28 November 2008

  • XJDeveloper: output DFT results to CSV files correctly when the data contains commas.
  • XJEase: broken chain errors were persisting between tests in XJRunner and XJDeveloper.
  • XJEase: fix the use of an SVF file during a test-reset sequence.

Version 2.2.3

Released 27 November 2008

  • XJDeveloper:
    • Improvements to the automatic packing of projects.
    • Fix configuration of boards that are saved in a different directory than the project.
    • Fix crash when when trying to run code but all XJLinks are in use.
    • Recompile code when test device files are saved – errors with unresolved CALL’s into device files were not disappearing.
    • Fix occasional crash when assigning a JTAG device on the JTAG Chain screen by dragging and dropping.
    • Various improvements to the Constant Pins screen.
  • XJRunner:
    • Fix opening projects in pack files, with non-builtin netlists.
    • Make sure normal output and error output come out in the correct order relative to each other.
    • Optimise output of text when the chain is broken – could cause problems trying to abort the test.
  • XJAnalyser: Fix crash when opening an old XJAnalyser project that contained a test-reset sequence.
  • XJEase: various raw JTAG block fixes.
  • Connection test: fix crash when there is non-JTAG pin on a JTAG device that is on a constant net.
  • STAPL: fix CAPTURE when the destination is an offset into an array.

Version 2.2.2

Released 14 November 2008

  • XJAnalyser: a component of XJAnalyser was not being registered correctly.
  • XJRunner Integration: fix initialisation failure when used in a .net application.
  • XJEase: fix chain corruption when increasing the length of a DR register for a device in a raw JTAG block.

Version 2.2.1

Released 12 November 2008

  • XJDeveloper
    • Recompile code in a number of cases to make sure errors behave correctly and code runs correctly.
    • Remember the state of the Run Tests screen when switching away.
    • Don’t scroll to the top of a code file after saving.
    • Improvement to performance when changing/removing BSDL files.
    • Improve the handling of BSDL package files, including making sure they get packed correctly.
    • Make sure BOM file paths are handled correctly after a Save-As.
    • Packing could fail if an additional code file was referenced from a device file and the circuit file.
    • Be more intelligent about detecting whether a project’s pack file needs updating.
  • XJRunner
    • Imported project settings were not saved unless the user made modifications through the project management dialog.
    • Move an imported .xjrp file into the backup directory once the import has completed successfully.
    • Don’t allow a basic user to open a project that has no tests selected.
    • If user database does not exist allow user to select a new one.
    • Don’t allow a non-authenticated user to select a different user database.
    • Store the database path in the registry so that is global, not per-user.
    • Remember application start position.
  • Chain Debugger
    • Display live pin values.
    • Did not cope with a single device set in BYPASS.
    • Various fixes to waveform editing.
  • XJAnalyser
    • Fix selection of SAMPLE.
    • Make sure constant pins are used during the first scan.
  • XJEase
    • Connection Test: in some cases shorts could be reported more than once or not reported at all.
    • Connection Test: crash when trying to analyse a short in some circumstances.
    • Make sure CHAIN_DEVICES and CIRCUIT_NAME are kept up to date.
    • The SAFE() function in a raw JTAG block was returning the incorrect data.
    • Preserve the state of the DR chain on entry to a raw JTAG block.
    • Example demo board and io board projects updated for XJTAG v2.2.

New features in version 2.2

  • XJDeveloper
    • XJEase test functions can now be run from inside XJDeveloper
    • The XJDeveloper interface is now much more flexible and allows various windows to be “undocked” and float outside the main application window.
    • Improved handling of boards defined in separate files.
  • XJRunner
    • XJRunner now supports running tests on multiple targets simultaneously.
    • Allow TCK frequency to be modified at runtime.
    • Allow the initial values of all global variables to be modified at runtime.
    • Allow the debug output level of the Connection Test to be modified at runtime.
  • XJEase:
    • The READABLE and WRITEABLE functions can now work with subsets of busses.
    • Added the FEXIST function.
    • Added the CHAIN_DEVICES constant that holds the number of devices in the JTAG chain.
    • Added the CONNTEST_RESULT function to retrieve any errors found by the connection test for processing using XJEase.
  • Connection Test:
    • Better support for termination resistors in the Connection Test.
    • The “Nets Test” now allows the user to continue after a failure is encountered.
  • The new, improved Chain Debugger utility now has a much wider range of debugging functions.

Older versions

2.1 | 2.0


We welcome any suggestions for improving our products. Please contact us with any comments you may have and we will look into incorporating your ideas into a future version.