Commit Graph

850 Commits

Author SHA1 Message Date
Daniel Beer eacf4b8be4 sim: fix PC-relative operand fetch.
Index should be relative to the value of PC after fetching the index
word.
2013-03-26 09:25:33 +13:00
Daniel Beer da3b7e31a2 Partial revert of ce2e0a94f4.
Jump instruction offsets are relative to start of instruction.
2013-03-13 10:40:43 +13:00
Daniel Beer 9bbe525776 Add support for MSP430FR5728. 2013-03-10 16:25:58 +13:00
Daniel Beer 1217d244e6 Remove "locka" command.
This command is useless, because each programming tool configures the
flash control registers before flash operations.
2013-03-10 15:32:19 +13:00
Daniel Beer 5ccf2e35d2 fet_core: fix segment erase.
A non-zero length must be supplied to the firmware.
2013-03-10 15:28:36 +13:00
Daniel Beer ce2e0a94f4 dis: correct offset for symbolic single-operand and jumps. 2013-02-25 15:40:03 +13:00
Daniel Beer a304b60dc9 fet_core: fix missing newline in debug message. 2013-02-22 10:45:05 +13:00
Daniel Beer fa75aa0854 Fix Win32 event use.
Incorrect use of the Ctrl+C event can lead to busy-waiting in socket and
serial port IO.
2013-02-11 12:49:56 +13:00
Daniel Beer e9b6a77414 dis/sim: fix handling of opcodes with two indexed operands.
If the source operand is indexed, and the destination is symbolic (PC +
index), then the base for the destination index is the program counter
*after* having fetched the source index.

Also, the addition of the index is done modulo 2^16 if the base points
within the lower 64 kB of memory.
2013-02-11 11:08:43 +13:00
Daniel Beer 72e781d0eb fet_core: Add workaround for CC5137 replug problem.
This chip needs to be replugged if the the shutdown procedure (reset and
close) runs. We look for the chip's ID and skip the procedure if it
matches.
2013-02-01 08:09:38 +13:00
Daniel Beer ad420dbb93 hexout: add proper terminator record. 2013-01-31 15:35:57 +13:00
Daniel Beer 7113fd2e50 disassemble: look only for exact symbol matches for operands. 2013-01-31 15:31:42 +13:00
Daniel Beer 2924dee3a2 fet: experimental support for Info A/BSL flash access. 2013-01-31 14:29:14 +13:00
Daniel Beer fd0199901c tilib: support for Info A/BSL flash access.
Two new boolean options have been added: "enable_locked_flash_access"
and "enable_bsl_access".
2013-01-31 13:54:19 +13:00
Daniel Beer 46ac7a75a9 tilib: fix segment erase.
A non-zero length is required to erase segments.
2013-01-31 13:22:05 +13:00
Daniel Beer 6d8a58c9c2 Use symbolic constants for long arguments. 2013-01-31 13:21:20 +13:00
Wolfgang Schwotzer 85c023d758 Support for MSP430FG4616. 2013-01-27 10:40:37 +13:00
Daniel Beer 29f6ceefa5 cp210x: fix incorrect clock value.
This was causing the olimex-v1 driver to fail with raw USB access.
2013-01-17 10:19:20 +13:00
Daniel Beer 65b2e94a2e dis: fix constant generation for single-operand.
Indexed mode with R3 shouldn't consume an index word, because this is
the combination used for generating the constant #1.
2013-01-15 11:47:50 +13:00
Bruce G. Burns db94eab4b2 Simulator bug fixes.
Fix handling of V flag, and ensure that high byte is discarded for byte
operations.
2013-01-14 16:47:59 +13:00
Daniel Beer 611574cc86 sport: fix build on Windows. 2012-12-18 13:59:26 +12:00
Pavel Vymetálek e491e14c3d fet_db: add support for MSP430G2352 2012-12-03 12:04:58 +13:00
Rob Spanton f94383d839 Add two missing includes to util.c
util.c was missing sys/select.h and sys/time.h.  On some platforms,
this lead to warnings.
2012-11-30 08:50:04 +13:00
Daniel Beer 9f72d296dc Fix incorrect initialization of transports. 2012-11-29 07:55:36 +13:00
Daniel Beer 5477cd78d8 Version 0.21 2012-11-26 12:27:48 +13:00
Daniel Beer 21fc0d904f fet_db: add support for MSP430F2416
Based on ID data from Pawel Jewstafjew <pawel.jewstafjew@gmail.com>.
2012-11-23 11:41:45 +13:00
Daniel Beer f52fe6f1d4 Fix non-termination problem in embedded mode (win32).
Embedded mode starts a background thread which, under Windows, prevents
the process from exiting on a return from main(). We explicitly
terminate the process instead of returning.
2012-10-31 08:52:47 +12:00
Priit Laes 5c9648fb23 transport: fix memleaks in error paths 2012-10-27 13:00:34 +13:00
Priit Laes c118a684b4 util: Fix memleaks in error paths 2012-10-27 13:00:31 +13:00
Tamas TEVESZ b91614b0d1 Fix compilation on FreeBSD. 2012-10-25 08:51:34 +13:00
Daniel Beer 277a795f01 Add power sample output. 2012-10-24 09:37:46 +13:00
Daniel Beer 43735da212 fet: fix support for MSP430F2418/2618. 2012-10-22 16:43:07 +13:00
Unai Uribarri Rodriguez 0bb6f901d5 Adds console simio device class
The console simio device class shows in the logs and or console
any byte written to its base address.
2012-10-17 08:36:34 +13:00
Daniel Beer e14a578555 Parallel JTAG driver (Linux only for now).
Based on a patch submitted by Peter Bägel <peter@baegel.de>.
2012-10-12 11:33:20 +13:00
Daniel Beer 4db2f9f499 Build fixes for OpenBSD. 2012-10-09 16:52:12 +13:00
Daniel Beer 8334f55418 Win32 fix-ups.
Fixed missing includes in low-level IO functions. Changed
implementation of condition variables to use kernel event objects, in
order to preserve compatibility with NT 5.1.
2012-10-09 16:34:33 +12:00
Daniel Beer 4649c7e662 Add documentation on embedded mode. 2012-10-09 16:05:54 +13:00
Daniel Beer 11446eb0ae Add embedded-mode input module. 2012-10-09 15:42:54 +13:00
Daniel Beer e4a189f177 Add --embedded option and embedded output mode. 2012-10-09 15:41:06 +13:00
Daniel Beer 61fdfd22ff Better threading functions.
Change prefix to "thread_" and add functions for thread creation and
condition variables.
2012-10-09 15:28:49 +13:00
Daniel Beer 5714335614 Separate input subsystem and make it a swappable module. 2012-10-09 15:26:25 +13:00
Daniel Beer c7e05fd9fc Rewrite output filtering.
The old code was messy and difficult to understand. This implementation
better separates ANSI parsing from output and is easier to modify.
2012-10-09 12:01:00 +13:00
Daniel Beer d462ab8c3f gdb: allow Ctrl+C to shutdown server. 2012-10-09 11:57:14 +13:00
Daniel Beer 41cf65d880 Move namelist function to output_util. 2012-10-09 10:03:10 +13:00
Daniel Beer 18cf2a561f Separate and clean up break handling.
Ctrl+C handling is done in ctrlc.c, and a break condition now persists
until the interactive reader begins to process the next command. The
condition is cleared by calling ctrlc_clear().
2012-10-09 09:55:48 +13:00
Daniel Beer 0fcd0ae124 Fix stray printf(). 2012-10-09 09:30:16 +13:00
Daniel Beer 6455164138 MinGW: treat Ctrl+Break as Ctrl+C. 2012-10-04 14:50:25 +12:00
Daniel Beer e4f582b0d7 Fix Ctrl+C handling under Cygwin. 2012-10-04 14:45:57 +12:00
Daniel Beer 8a70a931bb Fixed bug in power buffer allocation. 2012-10-04 14:39:21 +12:00
Daniel Beer 56ffd537b6 Fixed long long formatting for MinGW.
MinGW uses %I64d instead of %lld.
2012-10-04 14:33:05 +12:00