CrossLoad is a command line program that allows you to download and verify applications without using CrossStudio. This tool can be used for production purposes but is not designed to be used for development.

Usage
crossload [options] [files...]
crossload [options] [files...] -serve [arguments...]
Options
-target target Specify the target interface to use. Use the -listtargets option to display the list of supported target interfaces.
-listtargets List all of the supported target interfaces.
-solution file Specify the CrossWorks solution file to use.
-project name Specify the name of the project to use.
-config configuration Specify the build configuration to use.
-filetype filetype Specify the type of the file to download. By default CrossLoad will attempt to detect the file type, you should use this option if CrossLoad cannot determine the file type or to override the detection and force the type. Use the -listfiletypes option to display the list of supported file types.
-listfiletypes List all of the supported file types.
-setprop property = value Set the target property property to value.
-listprops List the target properties of the target specified by the -target option.
-loadaddress address When downloading a load file that doesn't contain any address information, such a binary file, this option specifies the base address the file should be downloaded to.
-noverify Do not carry out verification of download.
-nodownload Do not carry out download, just verify.
-nodisconnect Do not disconnect the target interface when finished.
-serve Serve CrossStudio debug I/O operations. Any command line arguments following this option will be passed to the target application. The application can access them either by calling debug_getargs() or by compiling crt0.s with the FULL_LIBRARY C preprocessor definition defined so that argc and argv are passed to main.
-help Display the command line options.
-verbose Produce verbose output.
-quiet Do not output any progress messages.
-StudioDir directory Set $(StudioDir) to be directory.

In order to carry out a download or verify CrossLoad needs to know what target interface to use. The supported target interfaces vary between systems, to produce a list of the currently supported target interfaces use the -listtargets option.

crossload -listtargets

This command will produce a list of target interface names and descriptions:

    usb                   USB CrossConnect
    parport               Parallel Port Interface
    sim                   Simulator

Use the -target option followed by the target interface name to specify which target interface to use:

crossload -target usb ...

CrossLoad is normally used to download and/or verify projects created and built with CrossStudio. To do this you need to specify the target interface you want to use, the CrossStudio solution file, the project name and the build configuration. The following command line will download and verify the debug version of the project MyProject contained within the MySolution.hzp solution file using a USB CrossConnect:

crossload -target usb -solution MySolution.hzp -project MyProject -config Debug

In some cases it is useful to download a program that might not have been created using CrossStudio using the settings from an existing CrossStudio project. You might want to do this if your existing project describes specific loaders or scripts that are required in order to download the application. To do this you simply need to add the name of the file you want to download to the command line. For example the following command line will download the HEX file ExternalApp.hex using the release settings of the project MyProject using a USB CrossConnect:

crossload -target usb -solution MySolution.hzp -project MyProject -config Release ExternalApp.hex

CrossLoad is able to download and verify a range of file types. The supported file types vary between systems, to display a list of the file types supported by CrossLoad use the -listfiletypes option:

crossload -listfiletypes

This command will produce a list of the supported file types, for example:

  hzx                   CrossStudio Executable File
  bin                   Binary File
  ihex                  Intel Hex File
  hex                   Hex File
  tihex                 TI Hex File
  srec                  Motorola S-Record File

CrossLoad will attempt to determine the type of any load file given to it, if it cannot do this you may specify the file type using the -filetype option:

crossload -target usb -solution MySolution.hzp -project MyProject -config Release ExternalApp.txt -filetype tihex

It is possible with some targets to carry out a download without the need to specify a CrossStudio project. In this case all you need to specify is the target interface and the load file. For example the following command line will download myapp.s19 using a USB CrossConnect:

crossload -target usb myapp.s19

Each target interface has a range of configurable properties that allow you to customize the default behaviour. To produce a list of the target properties and their current value use the -listprops option:

crossload -target parport -listprops

This command will produce a list of the parport target interfaces properties, a description of what the properties are and their current value:

  Name:        JTAG Clock Divider
  Description: The amount to divide the JTAG clock frequency.
  Value      : 1

  Name:        Parallel Port
  Description: The parallel port connection to use to connect to target.
  Value      : Lpt1

  Name:        Parallel Port Sharing
  Description: Specifies whether sharing of the parallel port with other device drivers or programs is permitted.
  Value      : No

You can modify a target property using the -setprop option. For example the following command line would set the parallel port interfaced used to lpt2:

crossload -target parport -setprop "Parallel Port"="Ltp2" ...