What is it?
KMD is a graphical debugger written for The
University of Manchester, School of Computer Science. It is
intended primarily as a teaching aid rather than a commercial tool.
Originally intended as the `front end' of a remote monitor system it
is also capable of interfacing with local, simulated `back end'
processor models. The primary processor model included is ARM.
Some screenshots are available
The original author of KMD was Charlie Brej.
Considerable tidying and enhancement was done by Roy Schestowitz.
Most of the current maintenance is done by Jim Garside.
Input from John Zaitseff and Chris Page is also acknowledged.
KMD requires the following, freely downloadable libraries:
GLib 1.2 - Provides many useful data
types, macros, type conversions, string utilities and a lexical scanner.
GDK - A wrapper for low-level windowing
GTK 1.2 - An advanced widget set.
Currently KMD has been compiled for x86 Linux and Sparc Solaris.
KMD should compile fine on any platform that has the above libraries.
KMD communicates with the target system via a serial port so a Windows
version would need the appropriate drivers. When using the emulator
the port is redirected to a Unix pipe; again this would require some
changes to produce a Windows version. [We have no incentive to worry
about this at present.]
A gzipped TAR of the KMD source is available
here. It is available free for educational purposes. Please
acknowledge the University of Manchester School of Computer Science if
you use this in your classes.
A supporting assembler is available.
If you find this software useful, please let us know. A list of
establishments using Komodo follows:
Please send bug reports and feature requests to
Documentation on the ARM7 target system can be found here.
Documentation on the ARM9 target system can be found here.
You can get my latest version of the .komodo file here.
The .komodo file describes the known architectures and instruction
The easiest way to add another processor to the file is to copy and
amend one of the processors already there.
Please contact me if you wish to add other processors to KMD.