QP actor frameworks and QM modeling tool Icon

QP actor frameworks and QM modeling tool

1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 (15) Read Reviews | Last Updated
Looking for the latest version? Download qpc_5.4.2a.zip (7.5 MB)
Home / Qtools / 4.4.xx
Name Modified Size Downloads / Week Status
Parent folder
Totals: 2 Items   14.5 MB 2
qtools_win32_4.4.xx.exe 2012-02-28 10.9 MB 11 weekly downloads
qtools_linux_4.4.xx.zip 2012-02-28 3.6 MB 11 weekly downloads
What's New? =========== Scroll down a bit to the section "Qtools Revision History". About Qtools ============ Qtools is a collection of various open source tools for working with the QP state machine frameworks on desktop platforms, such as Windows, Linux, and Mac OS X. The following open-source tools are currently provided by Quantum Leaps: 1. qspy - host application for the QS software tracing system implemented in the QP/C and QP/C++ frameworks 2. qclean - for cleanup of source code files 3. qfsgen - for generating ROM-based file systems to be used in embedded web pages served by the HTTP server 4. qudp - for testing UDP connections to the embedded targets 5. qudps - UDP server for testing UDP connections to the embedded targets. 6. mscgen - for converting .msc files generated by qspy into message sequence charts (MSC) in various graphic formats. Additionally, Qtools for Windows contains the following open-source, 3rd-party tools: 7. GNU-make for Windows (version 3.82) 8. GNU C/C++ toolset for Windows (MinGW version 4.5.2) 9. TCL/TK for Windows (version 8.4) 10. Find And Replace Text (FART) for Windows 11. AVRDUDE for Windows (version 6.1) Additionally, Qtools for Windows contains the following PC-Lint option files various compilers (in subdirectory lint): 12. co-gnu-arm.* (PC-Lint option files for GNU-ARM) 13. co-iar-arm.* (PC-Lint option files for IAR-ARM) Installation ============ Installation of Qtools is trivial and consists merely of unzipping the qtools_<ver>.zip archive into a directroy of your choice. ****** NOTE: To use the Qtools, you should add the <qtools>\bin directory to the PATH, where <qtools> denotes the directory where you have unzipped the qtools_<ver>.zip archive. NOTE: To use the Qtools source code (such as parts of the QSPY) in builds of the QP library, you need to define the environment variable QTOOLS to point to the installation directory of Qtools. ****** On Linux you must additionally make sure that the executables, such as qspy, qclean, etc. have the 'executable' property set. Licensing ========= Most tools included in this collection are distributed under the terms of the GNU General Public License (GPL) as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. The text of GPL version 2 is included in the file GPLv2.txt in the root directory of the Qtools distribution. The TCL/TK 8.4 package is distributed under the terms of the TCL LICENSE AGREEMENT, included in the file TCL_LICENSE.txt in the root directory of the Qtools distribution. Documentation ============= The documentation of the tools is provided in the <qtools>\doc\ directory. Specifically, the PDF version of the make manual is included. A we-link to the TCL/TK documentation is provided in the shortcut tcl_tk_8.4. QSPY Matlab Scripts =================== The Matlab/GNU Octave scripts for the QSPY utility are located in the <qtools>\matlab\ directory. QSPY Sequence Diagrams Examples =============================== The sequence diagram input files for the MSCgen utility and the generated sequence diagrams (in the SVG format) are located in the <qtools>\mscgen\ directory. Source Code =========== In compliance with GPL, this distribution contains the source code for the utilities contributed by Quantum Leaps in the <qtools>\source\ subdirectory, except for the QSPY source code, which is provided in the <qtools>\qspy directory. The tools with names starting with 'q' have been developed and are copyrighted by Quantum Leaps. The GCC C and C++ compilers for Windows has been taken from the MinGW project at SourceForge.net: https://sourceforge.net/projects/mingw/files/Installer/mingw-get-inst/ The installer mingw-get-inst-20110211.exe has been used and after the installation, the files have been pruned to reduce the size of the distribution. Please refer to the MinGW project for the source code. The GNU make executable for Windows has been taken from the MinGW project at SourceForge.net: https://sourceforge.net/projects/mingw/files/MinGW/make/ make-3.82-mingw32/make-3.82-5-mingw32-bin.tar.lzma The GNU make source (make-3.82-src.zip) has been taken from: https://sourceforge.net/projects/mingw/files/MinGW/make/ make-3.82-mingw32/make-3.82-5-mingw32-src.tar.lzma The "GNU Make" manual (make.pdf) has been copied from the GNU make project at: http://www.gnu.org/software/make The file and diff utilities have been taken from the UnixUtils project at SourceForge.net: http://prdownloads.sourceforge.net/unxutils/UnxUtils.zip The file and diff utilities source (source/fileutils-3.16-src.zip) has been taken from: http://prdownloads.sourceforge.net/unxutils/UnxUtilsSrc.zip The fart utility has been taken from: http://sourceforge.net/projects/fart-it/ The AVRDUDE utility has been taken from: http://download.savannah.gnu.org/releases/avrdude/ The Mscgen utility has been taken from the Mscgen project at: http://www.mcternan.me.uk/mscgen/ Contact information: ==================== Web: http://www.state-machine.com Email: info@state-machine.com ####################################################################### #################### Qtools Revision History ########################## Qtools Version 5.4.0 (27-Apr-2015) ---------------------------------- Added the avrdude utility to the Windows release. Modified the qclean utility to use the Windows EOL convention for .txt files. Qtools Version 5.3.1 (21-Apr-2014) ---------------------------------- Corrected the version representation from hex to decimal, to match the change in the QP framework. The version representation mismatch caused problems in parsing newly modified trace records, when the qspy.c implementation was inserted directly into the projects. Qtools Version 5.3.0 (31-Mar-2014) ---------------------------------- Added new trace records to QSPY host application: QS_QEP_TRAN_HIST, QS_QEP_TRAN_EP, and QS_QEP_TRAN_XP. Changed labels for standard records from Q_ENTRY, Q_EXIT, Q_INIT to ENTRY, EXIT, INIT. Qtools Version 5.1.1 (15-Oct-2013) ---------------------------------- Fixed the bug in the QSPY host application, which didn't handle correctly object/functions/signal names longer than 32 characters. The name limit has been raised to 64 characters and this version also correctly truncates the names at the limit without printing any garbage characters. Qtools Version 5.1.0b (01-Oct-2013) ----------------------------------- Modified the stripped-down MinGW C++ compiler included in the Qtools for Windows distribution to correctly compile the std::cout stream from <iostream>. Qtools Version 5.1.0a (18-Sep-2013) ----------------------------------- Modified QSPY utility to support changes in QP 5.1.x: -improved handling of target resets by adding an empty QS record before the QS_QP_RESET record. The empty record provides the frame delimiter in case the last record in incomplete, so that the following QS_QP_RESET record can be recognized. -improved hanlding of internal object/function/signal dictionaries so that symbolic information is displayd for all occurrences of an object/function/signal, for which a dictionary record was received. Qtools Version 5.0.0a (08-Sep-2013) ----------------------------------- Modified QSPY utility to support changes in QP 5.0.x. In particular: -modified the standard trace records QS_QF_TICK, and QS_QF_TIMEEVT_* to contain the tick-rate number. -added trace records QS_TEST_RUN and QS_TEST_FAIL for unit testing. -added version compatibility level 5.0, whereas specifying version -v 4.5 runs qspy in the compatibility mode with QP 4.5.x. -added Find And Replace Text (FART) utility for Windows Qtools Version 4.5.06 (07-Apr-2013) ----------------------------------- Added TCL/TK 8.4 to the Qtools collection for Windows. Fixed a bug in qspy.c for formatting of user-defined I32 elements (used SPRINTF_AT() rahter then SPRINTF_LINE()). Qtools Version 4.5.05 (26-Mar-2013) ----------------------------------- Modified QSPY source code (qspy.c) to use the standard PRIx64 macros defined in <inttypes.h> for portable formatting 64-bit integers. This eliminates all format-related warnings generated by the MinGW compiler. Added a rudimentary <inttypes.h> header file to qspy\win32\vc directory for compatibility with Microsoft Visual Studio. Replaced the MinGW compiler included in the collection to smaller version GCC 4.5.2. Qtools Version 4.5.04 (31-Jan-2013) ----------------------------------- Modified the QSPY source code to consistently use the size_t type in "hal.h" instead of "unsigned int", so that the QSPY utility builds cleanly on 64-bit systems. Modified the qtools\qspy\win32\mingw\make.bat file to use the MinGW compiler now included in the Qtools collection for Windows. Qtools Version 4.5.03 (26-Nov-2012) ----------------------------------- Added the MinGW C/C++ compiler to the Qtools collection for Windows. Changed the location of executables from the root of Qtools to the bin\ subdirectory. This is done to accomodate the structure of the MinGW compiler. Qtools Version 4.5.02 (21-Jul-2012) ----------------------------------- Re-designed the QSPY interface to support more flexible parsing of the trace records in desktop-based simulations (such as Windows or Qt). Users can provide a custom parsing callback function to QSPY_config(). Also added QS_RESET() macro to reset the internal dictionaries (and other cleanup in the future) when the target resets. Qtools Version 4.5.01 (25-Jun-2012) ----------------------------------- Added the QS_USR_DICTIONARY() entry for storing dictionaries of the user trace records. Replaced all remaining sprintf() calls with snprintf(). Qtools Version 4.5.00 (26-May-2012) ----------------------------------- Re-designed the implementation of the QSPY host application, so that it can be convenienty included as part of the QP library. This allows direct QS tracing output to the screen for QP applications running on the desktop. The QSPY application has been converted from C++ to plain C for easier integration with QP/C. Qtools Version 4.3.00 (03-Nov-2011) ----------------------------------- This QSPY version mataches the changes to the critical section macros made in QP 4.3.00. The QS record names QS_QF_INT_LOCK and QS_QF_INT_UNLOCK have been replaced with QS_QF_CRIT_ENTRY and QS_QF_CRIT_EXIT, respectively. Qtools Version 4.2.04 (27-Sep-2011) ----------------------------------- This QSPY version fixes the bug of incorrect reporting function or object pointers for which the dictionary records are not provided and which are repeated in one format line (bug #3405904). For example, trace record AO.FIFO would report (incorrectly) as follows: 0014004078 AO.FIFO: Sndr=200009B4 Obj=200009B4 Evt(Sig=00000009,Obj=200009B4, Pool= 0, Ref= 0) Queue(nFree= 5, nMin= 5) The Sndr= and Obj= are reported to be the same, but they were not. Qtools Version 4.2.01 (01-Aug-2011) ----------------------------------- This QSPY version adds generation of sequence diagrams as files to be processed by MscGen (www.mcternan.me.uk/mscgen/). This version adds the option -g<msc_file> to generate .msc file. Also, this version of QSPY for Windows allows COM ports larger than COM9. Qtools Version 4.2.00 (13-Jul-2012) ----------------------------------- This QSPY version matches the changes made to QS target code in QP/C/C++ 4.2.xx. These changes include sending the additinal byte of sender priority in trace records: - QS_QF_ACTIVE_POST_FIFO, - QS_QF_ACTIVE_POST_LIFO, Additional changes include sending the poolID and refCtr of events in two bytes instead of just one byte. The changes affect the following trace records: - QS_QF_ACTIVE_POST_FIFO, - QS_QF_ACTIVE_POST_LIFO, - QS_QF_ACTIVE_GET, - QS_QF_EQUEUE_GET, - QS_QF_ACTIVE_GET_LAST, - QS_QF_EQUEUE_GET_LAST, - QS_QF_EQUEUE_POST_FIFO, - QS_QF_EQUEUE_POST_LIFO, - QS_QF_PUBLISH, - QS_QF_GC_ATTEMPT, and - QS_QF_GC. Also, for compatibility with the QP 4.2.xx, this version changes the defaults as follows: signal size (-S) from 1 byte to 2 bytes, and baud rate (-b) from 38400 to 115200 This version adds the following trace record: QS_QF_TIMEEVT_CTR The version also adds compatiblity with 64-bit targets (such as 64-bit linux). This version can accept 8-byte pointers (both object pointers and function pointers) as well as 64-bit integers sent in user-defined trace records. This version also adds the hex format for uint32_t integers sent in the user-defined trace records. Finally, this version adds command-line option -v to specify the corresponding QP version running on the target. The default version is -v4.2, but by specifying version -v4.1 or -v4.0 will switch QSPY into the backwards-compatibility mode with the earlier versions of QP. Qtools Version 4.1.06 (09-Feb-2011) ----------------------------------- This is the intial standalone release of the QSPY host application. QSPY is still available in the QP/C and QP/C++ distributions, but other rapid prototyping platforms (such as mbed or Arduino) do not use the standard QP distributions and have no easy access to the QSPY tool. For these users, this pre-compiled standalone release is more convenient.
Source: README.txt, updated 2015-04-28