Files
Gen4_R-Car_Trace32/2_Trunk/demo/api/capi
2025-10-14 09:52:32 +09:00
..
2025-10-14 09:52:32 +09:00
2025-10-14 09:52:32 +09:00
2025-10-14 09:52:32 +09:00
2025-10-14 09:52:32 +09:00
2025-10-14 09:52:32 +09:00
2025-10-14 09:52:32 +09:00

; --------------------------------------------------------------------------------
; @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=<name_or_IP>] [port=<num>] <cmd>
                         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=<name_or_IP>] [port=<num>]
                         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 <hexaddr>.

                         Syntax:  t32apimenu [node=<name_or_IP>] [port=<num>] [<hexaddr>]
                         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/<arch>/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 <host> [port=<n>])
                         4. run (Go) application in simulator

     t32notifications:   Sample program illustrating the use of notifications in the CAPI.

                         Syntax:  t32notifications  node=<name_or_IP>  [port=<num>]
                         Example: t32notifications  node=localhost      port=20010

     t32rem:             Sample program to execute TRACE32 commands from a system shell.

                         Syntax:  t32rem <hostname or ip-address> [port=<number>] [wait=<ms>] <command>
                         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=<hostname>] [packlen=<number>] [--port=<number>] [--verbose] <command>
                         Example: t32remotedo --port=10000 --verbose Data.Set P:0x1000 0x22


     t32remtest:         Sample program presenting a menu for sending various API command.

                         Syntax:  t32remtest [<ip-address> | <hostname>] [port=<number>]
                         Example: t32remtest localhost port=10000