; -------------------------------------------------------------------------------- ; @Title: Information on the TRACE32 Remote API C Interface ; @Description: - ; @Author: DIE ; @Copyright: (C) 1989-2020 Lauterbach GmbH, licensed for use with TRACE32(R) only ; -------------------------------------------------------------------------------- ; $Id: readme.txt 125610 2020-09-04 10:22:33Z kjmal $ /* $LastChangedRevision: 125610 $ */ Table of contents: 1) File listing of source and demo directories 2) Prerequisites for using the TRACE32 Remote API 3) Usage of the demo applications 1) FILE LISTING OF SOURCE AND DEMO DIRECTORIES: /src t32.h header file of the TRACE32 Remote API hremote.c source file providing the interface functions hlinknet.c source file realizing the UDP socket communication tcpsimple2.c source and header files that contain and handle the TCP socket communication. tcpsimple2.h t32nettcp.c t32nettcp.h /dll makefile NMAKE makefile for building Remote API DLL makefile.linux makefile for building Remote API libraries for Linux makefile.macos makefile for building Remote API library for MacOS t32api.c source file for building Remote API dll/lib/exp-files t32api.dll 32bit TRACE32 Remote API dynamic link library (Windows) t32api.lib 32bit TRACE32 Remote API import library (Windows) t32api.exp 32bit TRACE32 Remote API export file (Windows) t32api64.dll 64bit TRACE32 Remote API dynamic link library (Windows) t32api64.lib 64bit TRACE32 Remote API import library (Windows) t32api64.exp 64bit TRACE32 Remote API export file (Windows) t32api.so 32bit TRACE32 Remote API shared object file (Linux) t32api64.so 64bit TRACE32 Remote API Linux shared object file (Linux) t32api.dylib 32bit TRACE32 Remote API shared library (MacOS) /test makefile NMAKE makefile for building the various demos t32apicmd.c demo source for sending a user specified command to TRACE32 t32apicmd.exe ready to use dos shell application t32apinotify.c demo source for receiving notifications from TRACE32 t32apinotify.exe ready to use dos shell application t32apimenu.c demo source offering various Remote API commands t32apimenu.exe ready to use dos shell application t32bundle.c demo source illustrating the Memory Bundle Transfer t32dllmenu.c demo source offering various 32bit dll Remote API commands t32dllmenu.exe ready to use dos shell application t32fdxhost.c source of fast data exchange demo t32fdxhost.exe ready to use dos shell application t32notification.c demo source for using notifications in CAPI t32rem.c demo source to execute TRACE32 commands from a system shell t32remotedo.c demo source to execute TRACE32 commands from a system shell with additional command line options t32remtest.c demo source presenting a menu for sending various API command /dlltest hrtestdll.c makedlltest.bat t32testdll.exe 2) PREREQUISITES FOR USING THE TRACE32 REMOTE API All important information about the TRACE32 Remote API can be found in the TRACE32 Remote API manual "api_remote_c.pdf" which is located in the pdf-directory of the TRACE32 PowerView installation. In order to establish a remote connection TRACE32 PowerView has to be started with an enabled API port. If T32start is used for start up the "Advanced Settings > Interfaces > API Port" settings have to be adapted, otherwise the configuration file "config.t32" has to contain these lines: RCL=NETTCP PORT=20000 In case this default port value is changed any custom C program has to call T32_Config() for specifying the modified value. A modified port value may be passed to the dos shell demos via command line argument. 3) USAGE OF THE DEMO APPLICATIONS t32apicmd: This demo sends a single, user specified command to PowerView and displays any AREA message. Syntax: t32apicmd [node=] [port=] Example: t32apicmd node=localhost port=20000 PRINT VERSION.BUILD() t32apinotify: This demo receives notifications from PowerView. PowerView is configured accordingly via remote connection. Whether the user has started PowerView for accessing real hardware or in simulator mode is also detected. Syntax: t32apinotify [node=] [port=] Example: t32apinotify node=localhost port=20000 t32apimenu: This demo offers a menu for selection of various API commands. PowerView is configured accordingly via remote connection. Whether the user has started PowerView for accessing real hardware or in simulator mode is also detected. For accessing real hardware the location of the data memory can be specified by . Syntax: t32apimenu [node=] [port=] [] Example: t32apimenu node=localhost port=20000 0x400C000 t32bundle: This demo illustrates the usage of the Memory Bundle Transfer function. t32dllmenu: Same as "t32apimenu" but uses 32bit dll for command execution. t32fdxhost: Host of the FDX feature demonstration. See demo//fdx for the target implementation of FDX. The FDX demos can be executed in the TRACE32 instruction set simulator. Usage: 1. start simulator with API enabled 2. run fdx.cmm 3. run fdxhost (fdxhost [port=]) 4. run (Go) application in simulator t32notifications: Sample program illustrating the use of notifications in the CAPI. Syntax: t32notifications node= [port=] Example: t32notifications node=localhost port=20010 t32rem: Sample program to execute TRACE32 commands from a system shell. Syntax: t32rem [port=] [wait=] Example: t32rem localhost port=20000 wait=5000 DO ~~/demo/practice/pcmd.cmm t32remotedo: Sample program to execute TRACE32 commands from a system shell with additional command line options. Syntax: t32remotedo [--help] [--node=] [packlen=] [--port=] [--verbose] Example: t32remotedo --port=10000 --verbose Data.Set P:0x1000 0x22 t32remtest: Sample program presenting a menu for sending various API command. Syntax: t32remtest [ | ] [port=] Example: t32remtest localhost port=10000