c50dsk.jpg

About

This is about software for using the TMS320C5x DSP Starter Kit (DSK) with GNU/Linux.

Somewhere in the 90's I got myself this little Board with DOS software that came on a 5 1/4 inch floppy.


Software

The Software consists of an assembler, a debugger (source code included!) and some pieces of example code.

The old DOS debugger was written in borland-cpp and uses a strange mixture of assembler/c to communicate over RS-232. As a result the old debugger does not run in a DOS box or emulation on any recent operating system.

To create something like the old DOS dsk5d we need at least

  • communication over RS-232
  • resetting, initializing the DSK
  • dumping and modifying program and data memory
  • register views
  • loading dsk-format programs
  • setting breakpoints
  • different modes of program execution
  • disassembling memory

Development

I started with a command line program to set up the main communication routines. Later on I embedded these routines in a GTK-program. With the time I discovered "glade" I decided to do a complete rewrite as I am still learning...

The way the DSK debugger kernel and the DOS software are communicating can be seen in the borland source code available at ftp://ftp.ti.com/pub/tms320bbs/c5xdskfiles/

Some other fine links:

Status

task status
RS-232 communication routines done
reset via CTS line done
initialising DSK done
read D/P memory done
fill D/P memory done
load DSK-files done
read registers done
put registers in text widget! done
execution to address 75%
breakpoints 25%
execution to breakpoint 75%
disassembler 75%
TRAP management 50%
single step execution 75%
automatic update of reg-widget done
display data from load-dialog 0%

Screenshot

  • here is a snapshot of the software in action.

Download

As of Jan 2003 there is only a very early version to offer. It is very basic and somewhat buggy.

Stay tuned as this is under heavy development.

  • gc50-0.2.tar.gz (03 Jan 2003):
    • Bugfix in representation of ARx registers
    • Changes in GUI (still under development)
    • execution to address implemented
    • reverse assembler works

  • gc50-0.3.tar.gz:
    • even more changes in the GUI
    • Status registers added (APR etc.)
    • query for connection status added
    • execute to breakpoint / stop works

  • gc50-0.4.tar.gz (04 Jan 2003):
    • single stepping added
    • automatic update of registers
    • automatic dump/update after reset

Feedback

 
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding mattzz? Send feedback