Commit Graph

839 Commits

Author SHA1 Message Date
Brian S. Dean a193330803 Seperate programmer operations out into a driver-like interface so
that programmers other than the direct parallel port connection can be
supported.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@159 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-11-30 14:09:12 +00:00
Brian S. Dean 39b1f7d02b term.c - when in interactive terminal mode and dumping memory using
the 'dump <memtype>' command without any address information,
         and the end of memory is reached, wrap back around to zero on
         the next invocation.

CHANGELOG - describe changes

main.c - update version number


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@157 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-11-23 00:52:15 +00:00
Brian S. Dean 981ee782b4 When getting ready to initiate communications with the AVR device,
first pull /RESET low for a short period of time before enabling the
buffer chip.  This sequence allows the AVR to be reset before the
buffer is enabled to avoid a short period of time where the AVR may be
driving the programming lines at the same time the programmer tries
to.  Of course, if a buffer is being used, then the /RESET line from
the programmer needs to be directly connected to the AVR /RESET line
and not via the buffer chip.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@156 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-11-23 00:47:29 +00:00
Brian S. Dean b8eb26a545 Update changelog.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@154 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-11-06 02:23:27 +00:00
Brian S. Dean f2604f3523 Fix -Y option. Reported by Joerg Wunsch.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@153 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-11-06 02:19:57 +00:00
Brian S. Dean 52f96a781a Version update and CHANGELOG entry.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@151 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-11-01 14:46:20 +00:00
Brian S. Dean 12641b2f6c Be backward compatible with the 2-byte rewrite cycle counter which
appeared in version 2.1.0, but was changed to a 4 byte counter in
version 2.1.1.  Reminded by Joerg Wunsch.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@150 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-11-01 14:40:23 +00:00
Brian S. Dean b278d02a94 Add '-V' (no verify) flag requested by Joerg Wunsch. Update the man
page.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@148 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-10-29 01:59:02 +00:00
Brian S. Dean a05b24f4b1 Update man page and changelog.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@147 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-10-13 04:22:59 +00:00
Brian S. Dean 74bed97ede Update version number.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@146 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-10-13 04:19:39 +00:00
Brian S. Dean 88bddaa4b8 Remove --pedantic and -g from the compiler options.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@145 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-10-12 21:22:57 +00:00
Brian S. Dean 603fa47266 Use a four byte value instead of a two byte value for the programming
cycle count stored at the end of EEPROM.  It seems as though Atmel was
greatly conservative in claiming a 1000 count reliability for the
FLASH.  I current have a part that has been reprogrammed 173330 times,
and counting.

Fix a compiler warning.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@144 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-10-11 19:36:56 +00:00
Brian S. Dean 916ade1c43 Fix ATMega128 instruction encoding for reading the low and high fuse
bits.  Thanks to Joerg Wunsch for tripping over this.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@143 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-10-11 19:32:12 +00:00
Brian S. Dean db531a2ccf Move erase-rewrite cycle increment to within the chip erase routine so
that it is tracked no matter where the erase was initiated: command
line mode or interactive mode, without code duplicaiton.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@141 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-08-01 02:06:48 +00:00
Brian S. Dean b8009fda91 Recent updates.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@140 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-08-01 01:06:54 +00:00
Brian S. Dean 4f7b087bbb Eliminate unused variables.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@139 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-08-01 01:01:17 +00:00
Brian S. Dean 4d2df35736 Implement a way of tracking how many erase-rewrite cycles a part has
undergone.  This utilizes the last two bytes of EEPROM to maintain a
counter that is incremented each time the part is erased.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@138 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-08-01 01:00:03 +00:00
Brian S. Dean 5b12f02975 Fix a typo in a comment. Display the size of memory being written.
Display the correct memory name in an error message (previously
hardcoded).


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@137 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-07-27 20:55:01 +00:00
Brian S. Dean 975614df3b Add support for ATtiny15 - contributed by Asher Hoskins
<asher@crumbly.freeserve.co.uk>


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@135 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-06-22 14:03:53 +00:00
Brian S. Dean 5e86a8a460 Say what changed.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@133 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-04-23 22:18:06 +00:00
Brian S. Dean 99ac342e05 Backup the config file to a timestamped name to keep from possibly
overwriting user-modified configs.

Add read/write instructions for all memory types for ATMEGA103,
ATMEGA128, ATMEGA16, and ATMEGA8.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@132 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-04-07 16:03:58 +00:00
Brian S. Dean 4b6223fff4 Add support for ATMEGA128; untested; requested by Jeff Gardner
<gardner@journey.com>.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@131 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-04-05 22:41:38 +00:00
Brian S. Dean 12b331ccd4 Minor ordering.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@129 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-02-15 02:06:58 +00:00
Brian S. Dean f1de8e8174 Update version numbers.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@128 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-02-15 02:05:19 +00:00
Brian S. Dean aa8375896f Summarize latest updates.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@127 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-02-14 03:19:45 +00:00
Brian S. Dean 6ad21f0424 Make pwroff_after_write a yes/no field instead of a numeric.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@126 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-02-14 03:04:22 +00:00
Brian S. Dean f7b64467de Document the pwroff_after_write flag.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@125 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-02-14 02:59:39 +00:00
Brian S. Dean 2653762eb0 Enable the extra part verbosity when verbosity >= 3.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@124 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-02-14 02:50:58 +00:00
Brian S. Dean fa956af92c Fix error reporting by avr_write_byte().
Fix setting of status LEDs under various write-fail conditions.

Add a flag to indicate that a memory type requires the device to
possibly be powered off and back on after a write to it.  This is due
to a hardware problem on some Atmel devices, see:

	http://www.atmel.com/atmel/acrobat/doc1280.pdf

Add greater verbosity to the part-display code when verbose>1 to
display avrprog's encoding of the defined programming instructions.
This is primarily for debugging purposes.


Part updates:

  * add the AT90S4414 part

  * add fuse and lock bit access instructions for the AT90S1200,
    AT90S4434, and AT90S8515.

  * add the pwroff_after_write flag to the fuse bits for the AT90S2333
    and AT90S4433 parts


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@123 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-02-14 02:48:07 +00:00
Brian S. Dean 253015fb41 Updates to the 2333 and 4433 parts, contributed by Joerg Wunsh.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@122 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-02-09 21:53:51 +00:00
Brian S. Dean 25980e098c Add changelog.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@121 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-01-18 02:46:06 +00:00
Brian S. Dean ac607ef4fb Add (c) to copyright.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@120 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-01-12 02:04:33 +00:00
Brian S. Dean fbbd6ce36e Update version number. Update copyright.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@118 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-01-12 01:51:35 +00:00
Brian S. Dean 7e16897a01 Update copyright and add description of "default".
Submitted by: Joerg Wunsch <j@uriah.heep.sax.de>


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@117 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-01-12 01:31:01 +00:00
Brian S. Dean 3138b91aa7 Fix programming of write-only memories (such as lock bits on the
2313).


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@116 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-01-12 01:26:09 +00:00
Brian S. Dean 3f9134a161 Update version.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@114 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-12-30 00:19:57 +00:00
Brian S. Dean 5ae32d55a1 Clarify a comment.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@113 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-12-30 00:12:23 +00:00
Brian S. Dean ce4395014c fix address bits
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@112 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-12-30 00:07:29 +00:00
Brian S. Dean d0bfd4ab05 Bring up to date.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@111 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-12-30 00:04:52 +00:00
Brian S. Dean bb4a4a889d Add the AVR3 progammer.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@110 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-12-29 21:47:05 +00:00
Brian S. Dean 10b8034ba9 Fix VCC assertion.
Make the BUFF pin a mask like VCC to allow multiple pins to be
asserted at the same time (STK200 has two buffer enable lines).

Add the STK200 programmer.

Fix EEPROM address line selection for several parts.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@109 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-12-29 21:37:20 +00:00
Brian S. Dean 06dd7455b0 fix spelling error
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@107 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-12-15 22:17:46 +00:00
Brian S. Dean bbb20e219c Change "WARNING" to "NOTE" when overwriting the avrprog.conf file.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@106 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-11-24 01:48:59 +00:00
Brian S. Dean 17f82c7f62 Add my e-mail address.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@105 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-11-24 01:47:10 +00:00
Brian S. Dean 27ea11ae30 Add comments about instruction formats. Correct an instruction
specification (cut&paste error).


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@104 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-11-24 01:44:06 +00:00
Brian S. Dean e95114a18d In interactive mode, reset the address and length if we start dumping
a memory type different than the previous one.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@103 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-11-21 18:54:11 +00:00
Brian S. Dean b50ce8fabd Allow instruction data to be specified more flexibly, which can be
used to make the instruction input more readable in the config file.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@102 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-11-21 05:50:59 +00:00
Brian S. Dean 5df3b4188b Bump version number.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@101 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-11-21 02:47:59 +00:00
Brian S. Dean fb233af934 This is a jajor re-write of the programming algorithms. The Atmel
serial programming instructions are not very orthoganal, i.e., the
"read fuse bits" instruction on an ATMega103 is an entirely different
opcode and data format from the _same_ instruction for an ATMega163!
Thus, it becomes impossible to have a single instruction encoding
(varying the data) across the chip lines.

This set of changes allows and requires instruction encodings to be
defined on a per-part basis within the configuration file.  Hopefully
I've defined the encoding scheme in a general enough way so it is
useful in describing the instruction formats for yet-to-be invented
Atmel chips.  I've tried hard to make it match very closely with the
specification in Atmel's data sheets for their parts.  It's a little
more verbose than what I initially hoped for, but I've tried to keep
it as concise as I could, while still remaining reasonably flexible.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@100 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-11-21 02:46:55 +00:00
Brian S. Dean f1af5d3981 Add support for ATMega163.
Add support for reading/writing ATMega163 lock and fuse bits.
Unfortunately, in looking at the specs for other ATMega parts, they
use entirely different instruction formats for these commands.  Thus,
these routines won't work for the ATMega103, for example.

Add support for sending raw command bytes via the interactive terminal
interface.  This allows one to execute any programming instruction on
the target device, whether or not avrprog supports it explicitly or
not.  Thus, one can use this feature to program fuse / lock bits, or
access any other feature of a current or future device that avrprog
does not know how to do.

Add in comments, an experimental instruction format in the
configuration file.  If this works out, it would allow supporting new
parts and non-orthoganal instructions across existing parts without
making avrprog code changes.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@99 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-11-19 17:44:24 +00:00