	TMS320C54x Emulator Version 3.20 Release Notes
	==============================================


Introduction
------------

The TMS320C54x Emulator Version 3.20 is an incremental release of the TMS320C54x 
Emulator Version 3.10.  It adds three new features and fixes several bugs from the 
Version 3.10.  These features and fixes are documented below.


Installation
------------
This tar file contains 3 files:
	emu54xexe
	c5xx510ws.out
	readme.txt

For the Solaris version of the TMS320C54x 3.10 emulator, copy the files emu54xexe 
and c5xx510ws.out over the existing files in the directory where the 3.10 emulator 
is installed.  All the other files remain the same.

The emulator is invoked and operates the same as the 3.10 version.


Features
--------

1. The TMS320C54x Emulator Version 3.20 has been modified to support the TMS320C5410 
and TMS320C5420, which includes a DMA controller.  Because of memory limitations on 
the hardware, the DMA control registers are not directly mapped into processor memory, 
but are accessed by writing an index value to a sub-address register and then reading 
or writing to a sub-bank access register.  Thus the user cannot monitor the status of 
DMA activity just by looking at memory in the debugger.

To remedy this problem, the debugger now has a new window in which the contents of the DMA 
control registers can be viewed and modified.  The DMA window will be displayed automatically 
when the debugger detects that it is connected to a 5410 or 5420.  A ViewDMA Window menu 
selection has been added so this window can be displayed when hidden.  This can also be 
accomplished by typing WIN DMA in the command window.  These features are automatically 
disabled when the debugger is connected to a non-DMA capable target.

The DMA register window behaves much like the CPU window.  The contents of all the registers are 
updated when the target halts, and their values can be changed by editing the text boxes in the 
window.  Due to the base address/sub address model used to access most of these DMA registers, 
direct modification of DMA registers from the command line is currently not supported.

At the time this document was created, the 5410 and 5420 DMA controller documentation indicated 
that all DMA control registers would contain DM as the first two letters in their names 
(i.e. DMPREC for the DMA Channel Priority and Control register).  It was decided that it was 
more visually appealing to eliminate the DM from the register labels in the DMA window.  Thus, 
the DMPREC will just be labeled PREC and so on.

2. The TMS320C5410 and TMS320C5420 also has three multi-channel buffered serial ports (McBSPs) for 
external communications.  The control registers for these ports are accessed through the same 
sub-address/sub-bank access register mechanism used for the DMA control registers.  A debugger 
window has been added to give the user easy access to these control registers.  The window is 
enabled only when the emulator is connected to a processor with sub-addressed McBSP control 
registers.  The window can be accessed by the user via the ViewMcBSP Window menu selection 
or by typing WIN MCBSP in the command window.

NOTE:  Due to the new sub-address access mechanisms for both the DMA and McBSP registers, 
window updates for these new windows requires a significant amount of emulator/target interaction.  
This activity can result in a noticeable degradation in emulator performance, particularly when 
stepping through code.  If this performance degradation becomes a problem, closing one or both of 
these new windows will significantly improve performance.  The windows can be redisplayed when it 
is necessary to monitor or modify the contents of a register.

3. The TMS320C54x Emulator Version 3.20 has been modified so that it can communicate with targets 
running at very slow clock speeds without generating timeout errors.  This feature imposes a 
performance penalty when the emulator is connected to a target running at normal clock speeds, so 
it is disabled by default.  To enable this feature, include the switch -mc on the command line 
for starting the emulator.

4. Currently, the TMS320C5420 device is a RAM only device does not contain a bootloader.  Therefore, 
upon power-up, the device will start running.  Since memory has not been yet been initialized the
5420 device will be executing in uninitialized memory.  To combat this problem, the TMS320C54x 
Emulator Version 3.20 automatically performs a hardware reset immediately after connecting to the 
TMS320C5420 device.  The 5420 device is halted, a hardware reset is performed, and the debugger 
continues loading.

5. A new command has been added that puts the 5420 into reset.  This command is invoked by entering 
HWRESET in the command window.  After this command has been entered, the target device is in reset
mode and the emulator will not be able to communicate with it.  The emulator can be reconnected to the
target by typing entering the RECONNECT command in the command window.  This will reinitialize the
target and release it from reset.  RECONNECT should only be run from the start-up directory as it
reads the board.dat file to obtain initialization parameters.


Bug Fixes
---------

1. Disassembly and Memory windows now properly display extended address in PP:AAAA format where 
PP is the two hexadecimal digit page number and AAAA is the 4 hexadecimal digit address.  The XPC 
has also been modified to display hexadecimal values instead of decimal. 

2. The Disassembly window now properly displays and highlights instructions when stepping through 
code in extended memory.


Known Bugs
----------

  EMULATION
  ---------

- A BCD instruction entered in the Patch Assembly window is displayed
  as a BC instruction in the Disassembly window.

- The CLK register displays 1 less clock cycle than was actually
  executed.

- The Spectrum Digital XDS510PP device does not work with this release.
  The v3.1 emulator is a 32-bit tool.  The dll produced by Spectrum Digital
  is built for 16-bit tools.  32-bit tools will not work with a 16-bit dll.
  If you require support for the XDS510PP device, please contact
  Spectrum Digital for a 32-bit version of the file smg510pp.dll.

- If you receive an error related to URLMON.dll, contact Texas Instruments
  Customer Support for further information.


  GRAPHICAL USER INTERFACE
  ------------------------

- The blue bar (showing the current location in program execution)
  continues to be displayed in the original source window when you 
  step into another source window.

- Profile mode can be selected under both the VIEW and TOOLS menus.

- Enabling Profile mode minimizes the Disassembly window.  
  After disabling Profile mode, you cannot return the Disassembly 
  window to its original size.

- You can move the blue bar (showing the current location in program
  execution) in the C source window by clicking on any location in
  the C source window.

- Switching to MIX mode moves and resizes all open windows.

- Double-clicking on a breakpoint in the Breakpoint window erases
  that breakpoint.

- When stepping into code or running to a breakpoint located in extended
  program space, the contents of the disassembly window are not displayed
  correctly.  To display to correct contents, type 'dasm pc' at the command 
  prompt. 

- Extended program memory is not correctly displayed in the disassembly window.
  The value of the XPC is added to the front of the address, not in the XPC 
  column in the disassembly window.
  For example, the address 0x18000 is displayed as 00:18000 instead of 01:8000.

- Tab markers on the variable dialog have a large font and only the
  tab marker that is on top is visible.  The other(s) are black on black. 

- You cannot see the entire path in the module selection combo box in
  the profile dialog.

- Inconsistent results may be obtained when profiling code.

- The emulator may abort after extended use.

- The debugger's online help displays "NoName" in the title bar.
  This is a bug in Bristol's HyperHelp viewer.

- The File->Print menu option in the debugger's online help viewer 
  does not work.







