TI Visual Linker Release Notes

Contents

  1. Setup / Installation
  2. Using Visual Linker with Code Composer Studio
  3. Viewing a Graphical Depiction of Memory
  4. One Recipe Per Visual Linker Session
  5. Notes on the New Recipe Wizard
  6. Limitations of Undo and Redo
  7. Limitations of Drag and Drop
  8. Limitations of Elimination of Unused input sections
  9. Cut and Paste
  10. Hints on Handling Large Links

1. Setup / Installation

[ Top of Page ]

2. Using the Visual Linker with Code Composer Studio

To enable the Visual Linker within Code Composer Studio, select "Tools -> Linker Configuration". Select 'Use the Visual Linker'  and click OK.

The  first time you build your application within CCS, you will receive the following link error:
   "ERROR '.rcp' There is no Recipe file in the project. Double click this message to create one."

Double-click this error message to launch the New Recipe Wizard. The wizard will walk you through the steps necessary to create a recipe file.

A recipe is the main file type used by the Visual Linker. The recipe file, when created, is named <projectfilename>.rcp and is located in the same directory as your CCS project file. This file also appears in your CCS project.

After the recipe is created and added to your project, your CCS builds will use the Visual Linker. To modify your link, double-click the RCP file in the CCS project file list. This opens the Visual Linker graphical user interface. Use drag and drop to modify the objects in your link. For online help, press F1.

[ Top of Page ]


3. Viewing a Graphical Depiction of Memory

The memory view in the Visual Linker interface displays a graphical representation of your board's memory space.

To view a graphical representation of any item within the interface, right-click on the item and select View Memory.

[ Top of Page ]


4. One Recipe Per Visual Linker Session

For technical reasons, only one VL recipe can be used in a VL session. That is, once you've opened a recipe, you cannot open another one without restarting the tool. If you try to close a recipe without closing the VL, you will be prompted to close the VL. This only affects VL when it is running stand-alone (outside of CCS). You do not have to restart CCS to open a different recipe.

[ Top of Page ]


5. Notes on the New Recipe Wizard

When running the New Recipe Wizard, there are certain steps that can only be executed once. If you need to change something in a previous step and the Back button is disabled, you will have to cancel the wizard, restart the tool, and start over.

The disabling of the Back button may depend on options selected during running of the wizard, but in general, it happens after the "Sections Directives Translation" and "Stack and Heap" pages.

It is possible to get the VL in a state where you can do nothing but exit. This will happen if the New Recipe Wizard is cancelled. In these cases, close the VL and start it again to continue working. This only affects VL when it is running stand-alone (outside of CCS). You do not have to restart CCS to start the wizard over again.

[ Top of Page ]


6. Limitations of Undo and Redo

The Visual Linker supports infinite levels of undo and redo. You can "undo" and "redo" M`most drag and drop and related operations. However, not all actions can be undone. Creating new memory regions, deleting memory regions, and changing the addresses of a memory region cannot be undone. Most operations in the Strategy window also cannot be undone. If you are unsure what action will be undone, look at the "Edit" menu. The "Undo" item changes to show what action will be undone. For example, if you just moved something, the menu item will read "Undo MOVE". The Redo menu item operates similarly. Also, a single drag and drop may result in several instructions, which will require several Undo commands to completely undo the effect of the drag and drop.

There are several methods of accessing undo/redo: accelerator keys (CTRL Z and CTRL Y), menu items (on the Edit menu), and toolbar buttons (the curved arrows).

[ Top of Page ]


7. Limitations of Drag and Drop

You can drag and drop from and to many different sources in the Visual Linker. However, not all possible combinations are supported. For more information, see the "Placing Input Sections in Memory" topic in the online help.

[ Top of Page ]


8. Limitations of Elimination of Unused Input Sections

When creating a recipe in the Visual Linker, the default behavior is to eliminate unused input sections. You can override this behavior on the "Roots" page of the New Recipe Wizard. This page allows you to force groups of input sections considered unreachable by the Visual Linker to be included in the link. Normally, you will not want to include anything displayed on the Roots page. However, there are limitations to the Visual Linker reachability check that can cause this display to include sections that are needed. Sections that are only referenced through hard addresses will not be detected as reachable.

[ Top of Page ]


9. Cut and Paste

The Visual Linker supports cut and paste in a couple of different ways. Plain text can be cut from and pasted to edit boxes. The following functions can be accessed by right-clicking on an edit box or by using the following accelerator keys:

        Cut - CTRL X
        Copy - CTRL C
        Paste - CTRL V
        Undo - CTRL Z

Visual Linker objects can also be cut and pasted. This is the same as dragging an object from one place to another. For example, selecting "Code Sections" in the tree view and pressing CTRL-X will "cut" the item.
A "cut" item will not disappear from the screen until a paste operation is completed.

Continuing the example, select a memory region in the tree view and press CTRL-V. The code will placed into that memory region. There is no concept of "copying" Visual Linker objects, they may only be "cut". There are restrictions on cut and paste similar to drag and drop. Objects in the tree and memory views may be cut and pasted. The list view only supports cutting, not pasting. Cut and paste can be accessed in a variety of ways: accelerator keys (CTRL-X and CTRL-V), menu items (on the Edit menu), and toolbar buttons.

[ Top of Page ]


10. Hints on Handling Large Links

The Visual Linker uses code from the legacy linker to read object files.  This code is not optimal for the Visual Linker environment. When there are large numbers (100s or 1000s) of object files, there may be a several-minute delay in reading the files.

To decrease the delay, consider using a faster/newer PC with more RAM and a faster hard drive.

Future versions of the Visual Linker will improve the software throughput of the object file readers.

In addition, when there are large numbers of object files, the Visual Linker interface tends to become sluggish. Zooming the Memory View to just the portion of memory currently being worked on will speed things up. The computational cost of supporting the display and update of the Memory View is proportional to the number of boxes being drawn. In a link with a thousand files, there might be five thousand boxes when displaying the entire space.

[ Top of Page ]