mspdebug fork containing various WIP patches
Go to file
Daniel Beer 7f4fdfb4f2 Restructuring: move IO simulator into simio/ 2011-09-14 16:08:54 +12:00
simio Restructuring: move IO simulator into simio/ 2011-09-14 16:08:54 +12:00
.gitignore Modifications to compile on Cygwin. 2010-05-13 16:45:38 +12:00
AUTHORS Add more error codes from MSP430.dll v3: 2011-08-16 10:22:37 +12:00
COPYING MSPDebug version 0.2. 2009-11-17 15:36:04 +13:00
ChangeLog Version 0.17 2011-08-24 16:24:16 +12:00
Makefile Restructuring: move IO simulator into simio/ 2011-09-14 16:08:54 +12:00
README Added README file with compilation instructions. 2011-06-14 12:52:59 +12:00
aliasdb.c Fixed error reporting for Win32. 2011-07-27 01:56:45 +12:00
aliasdb.h Implemented command aliases. 2011-04-04 17:09:11 +12:00
binfile.c stab: plain functions instead of passing around stab_default. 2011-03-15 15:20:50 +13:00
binfile.h stab: plain functions instead of passing around stab_default. 2011-03-15 15:20:50 +13:00
bsl.c Fixed error reporting for Win32. 2011-07-27 01:56:45 +12:00
bsl.h Separated device vtables/class information. 2011-03-15 14:56:07 +13:00
btree.c Fixed error reporting for Win32. 2011-07-27 01:56:45 +12:00
btree.h Implemented "sym rename". 2010-03-31 20:51:25 +13:00
cmddb.c Implemented command aliases. 2011-04-04 17:09:11 +12:00
cmddb.h Simplified command reader. 2010-08-13 16:40:58 +12:00
coff.c Fixed error reporting for Win32. 2011-07-27 01:56:45 +12:00
coff.h stab: plain functions instead of passing around stab_default. 2011-03-15 15:20:50 +13:00
devcmd.c New expand_tilde() utility function 2011-07-29 08:57:08 +12:00
devcmd.h Implemented "locka" command. 2010-09-23 19:05:39 +12:00
device.c Create default device to avoid carrying around device_t. 2010-08-13 12:25:49 +12:00
device.h Added -s option to distinguish between devices by serial number. 2011-07-18 14:56:29 +12:00
dis.c Fixed warning emitted by some gcc versions for dis.c. 2010-10-28 14:12:52 +13:00
dis.h dis: decode MSP430X emulated instructions. 2010-08-10 16:26:45 +12:00
elf32.c Fixed error reporting for Win32. 2011-07-27 01:56:45 +12:00
elf32.h stab: plain functions instead of passing around stab_default. 2011-03-15 15:20:50 +13:00
elf_format.h elf32: use local elf.h. 2011-07-27 10:35:46 +12:00
expr.c Remove redundant errno.h includes. 2011-09-13 09:23:44 +12:00
expr.h stab: plain functions instead of passing around stab_default. 2011-03-15 15:20:50 +13:00
fet.c fet: allow interrupted run on Win32. 2011-08-30 17:27:08 +12:00
fet.h Separated device vtables/class information. 2011-03-15 14:56:07 +13:00
fet_db.c fet_db: corrected breakpoint counts for various chips. 2011-09-14 11:44:57 +12:00
fet_db.h Added support for MSP430F169 2010-06-15 13:07:06 +12:00
fet_error.c Add more error codes from MSP430.dll v3 beta2: 2011-09-06 08:54:20 +12:00
fet_error.h BSL now shows descriptive errors returned by FET. 2010-05-15 13:44:46 +12:00
flash_bsl.c Fixed error reporting for Win32. 2011-07-27 01:56:45 +12:00
flash_bsl.h Separated device vtables/class information. 2011-03-15 14:56:07 +13:00
gdb.c win32: sockets abstraction layer with cancellable blocking IO. 2011-07-27 04:38:54 +12:00
gdb.h Simplified command reader. 2010-08-13 16:40:58 +12:00
gdb_proto.c gdb_proto/sockets: gdb_peek() shouldn't fail on poll timeout. 2011-09-13 14:01:43 +12:00
gdb_proto.h Implemented GDB client driver. 2011-06-06 15:51:38 +12:00
gdbc.c gdbc: check for Ctrl+C portably. 2011-09-13 14:01:15 +12:00
gdbc.h Implemented GDB client driver. 2011-06-06 15:51:38 +12:00
ihex.c Fixed incorrect handling of HEX segment offsets. 2010-10-21 09:39:27 +13:00
ihex.h Unified binfile interface. 2010-05-15 15:13:58 +12:00
list.c simio: added "simio" command and device/CPU interfaces. 2011-03-10 10:48:59 +13:00
list.h simio: added "simio" command and device/CPU interfaces. 2011-03-10 10:48:59 +13:00
main.c Remove redundant errno.h includes. 2011-09-13 09:23:44 +12:00
mspdebug.man Spelling fixes. 2011-09-02 09:09:44 +12:00
olimex.c usb_bulk_read: may return 0 on timeout. 2011-09-07 08:18:00 +12:00
olimex.h Added -s option to distinguish between devices by serial number. 2011-07-18 14:56:29 +12:00
opdb.c Implemented GDB client driver. 2011-06-06 15:51:38 +12:00
opdb.h Separate option database. 2010-08-13 15:14:15 +12:00
output.c win32: ANSI emulation for colour output. 2011-07-27 22:51:39 +12:00
output.h Device list is printed in multiple columns. 2010-10-12 12:02:17 +13:00
output_util.c Extracted print_address. 2011-03-15 16:00:34 +13:00
output_util.h Extracted print_address. 2011-03-15 16:00:34 +13:00
prog.c Introduced device_* helper macros. 2011-03-15 13:12:48 +13:00
prog.h Added fet_block_size option. 2011-02-21 11:30:32 +13:00
reader.c Use tilde-expanded path in process_file(). 2011-08-02 13:11:53 +12:00
reader.h Implemented repeat execution for reader. 2010-10-12 12:48:25 +13:00
rf2500.c usb_bulk_read: may return 0 on timeout. 2011-09-07 08:18:00 +12:00
rf2500.h Added -s option to distinguish between devices by serial number. 2011-07-18 14:56:29 +12:00
rtools.c Fixed error reporting for Win32. 2011-07-27 01:56:45 +12:00
rtools.h Simplified command reader. 2010-08-13 16:40:58 +12:00
sim.c Fix immediate-mode addressing with byte instructions. 2011-09-13 13:36:19 +12:00
sim.h Separated device vtables/class information. 2011-03-15 14:56:07 +13:00
sockets.c gdb_proto/sockets: gdb_peek() shouldn't fail on poll timeout. 2011-09-13 14:01:43 +12:00
sockets.h gdb_proto/sockets: gdb_peek() shouldn't fail on poll timeout. 2011-09-13 14:01:43 +12:00
sport.c Using FD_ZERO requires including string.h for the memset() prototype. 2011-08-02 09:32:03 +12:00
sport.h sport: serial IO abstraction layer. 2011-07-27 11:26:02 +12:00
srec.c Extracted duplicate hexval(). 2011-06-06 12:40:50 +12:00
srec.h Added support for S19 file format. 2010-07-12 16:36:01 +12:00
stab.c Remove redundant errno.h includes. 2011-09-13 09:23:44 +12:00
stab.h stab: plain functions instead of passing around stab_default. 2011-03-15 15:20:50 +13:00
stdcmd.c Fix missing CFLAGS for readline support. 2011-07-27 23:17:34 +12:00
stdcmd.h Implemented "exit" command. 2010-10-12 11:44:46 +13:00
sym.c New expand_tilde() utility function 2011-07-29 08:57:08 +12:00
sym.h Simplified command reader. 2010-08-13 16:40:58 +12:00
symmap.c stab: plain functions instead of passing around stab_default. 2011-03-15 15:20:50 +13:00
symmap.h stab: plain functions instead of passing around stab_default. 2011-03-15 15:20:50 +13:00
titext.c All output now goes through buffering/filtering. 2010-08-17 11:07:03 +12:00
titext.h Added support for TI text format. 2010-07-09 14:28:27 +12:00
transport.h Use stdint.h instead of sys/types.h. 2010-05-13 12:57:21 +12:00
uif.c Fixed error reporting for Win32. 2011-07-27 01:56:45 +12:00
uif.h Support for Olimex MSP430-JTAG-ISO. 2010-11-09 09:16:31 +13:00
usbutil.c Preprocessor related fix-ups. 2011-07-26 08:54:03 +12:00
usbutil.h Added -s option to distinguish between devices by serial number. 2011-07-18 14:56:29 +12:00
util.c Remove redundant errno.h includes. 2011-09-13 09:23:44 +12:00
util.h New expand_tilde() utility function 2011-07-29 08:57:08 +12:00
vector.c Implemented command aliases. 2011-04-04 17:09:11 +12:00
vector.h Implemented command aliases. 2011-04-04 17:09:11 +12:00

README

MSPDebug
========

MSPDebug is a free debugger for use with MSP430 MCUs. It supports
FET430UIF, eZ430, RF2500 and Olimex MSP-JTAG-TINY programmers. It can be
used as a proxy for gdb or as an independent debugger with support for
programming, disassembly and reverse engineering.

Features
--------

  * Userspace only: no kernel modifications required.
  * Works with RF2500, eZ430, FET430UIF, Launchpad and Olimex MSP-JTAG-TINY
    programmers. Also supports the TI flash bootloader.
  * Can act as a GDB remote stub (replacement for msp430-gdbproxy)
    and/or a GDB client.
  * Can single-step, program, run to breakpoint and inspect memory on
    supported devices.
  * Can be used to access the FET430UIF bootloader.
  * Supports Intel HEX, ELF32, BSD symbol table, COFF, TI Text and
    SREC file formats.
  * Can disassemble code in memory, including translating addresses to
    symbols.
  * Includes reverse-engineering features such as instruction search,
    call-graph analysis and symbol table editing.
  * Simulation mode allows execution of MSP430 code without hardware.

Compiling from source
---------------------

Ensure that you have the necessary packages to compile programs that use
libusb (on Debian or Ubuntu systems, you might need to do apt-get
install libusb-dev). After that, unpack and compile the source code
with:

    tar xvfz mspdebug-version.tar.gz
    cd mspdebug-version
    make

If you don't want GNU readline support, you can invoke make with:

    make WITHOUT_READLINE=1

After compiling, install the binary and manual page by running (as
root):

    make install

Type "mspdebug --help" for usage instructions.