Commit Graph

111 Commits

Author SHA1 Message Date
bsd
4337d15fc4 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
bsd
d5c1f9d2d7 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
bsd
b651c73b15 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
bsd
88c6a46e10 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
bsd
21694fbbaf 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
bsd
ed534cc3ff 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
bsd
ecf7476537 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
bsd
45765ef2d7 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
bsd
2262f1c58a 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
bsd
7436bc593b 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
bsd
45e7dbb2c7 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
bsd
b1542fe0cd 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
bsd
2a4402b055 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
bsd
70f90c8f6b 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
bsd
55a8f821c4 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
bsd
f6fa4f3b13 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
bsd
01af831980 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
bsd
ba28dbd72a 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
bsd
ec7682ac94 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
bsd
e2d6493f91 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
bsd
efb9aaf8aa 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
bsd
d0f7b8805c 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
bsd
2437f3d4d0 Add ATMEGA163 part.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@98 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-11-17 20:48:17 +00:00
bsd
ae5feb9bcb output formatting
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@97 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-11-11 01:58:21 +00:00
bsd
9d206345bf Get ppi.h from /usr/include, not /sys.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@96 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-11-05 01:41:08 +00:00
bsd
b7e6fed739 Correct version string.
Update read/write status more frequently.
Prefix ATMega parts with an 'm'.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@95 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-31 02:18:08 +00:00
bsd
ae439695a1 Change ording for memory display.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@93 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-16 23:46:59 +00:00
bsd
9a28000280 comment
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@92 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-16 23:34:07 +00:00
bsd
5abf255801 Fix (again, hopefully) page addressing for the ATMega parts.
Rename the poorly chosen name "bank" to "page" for page addressing.
Atmel calls it "page" in their documentation.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@91 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-16 23:32:30 +00:00
bsd
4654c9425e Fix an (non)exit.
Silence a couple of compiler warnings.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@89 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-16 02:50:27 +00:00
bsd
d899f57fec Fix ATMega flash addressing. Add an ATMEGA16 part. Perform sanity
checking on the memory parameters for parts that do bank addressing.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@88 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-16 02:47:55 +00:00
bsd
7e0ceec977 Add copyright.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@86 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-15 02:49:10 +00:00
bsd
1d67a8516f Add copyrights.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@85 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-15 02:46:59 +00:00
bsd
0da3ce8064 Attempt to install avrprog.conf.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@83 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-15 00:28:23 +00:00
bsd
1905d3e0ce Correct dt006 pinout.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@82 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-15 00:16:12 +00:00
bsd
1426180b07 Try and detect an old-style config file and print an appropriate error
message and a suggestion for correcting it.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@81 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-15 00:11:56 +00:00
bsd
c9709a1f35 Update the man page.
Miscellaneous minor cleanups.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@80 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-15 00:00:09 +00:00
bsd
f8677f8d4c Use lex/yacc for parsing the config file. Re-work the config file
format using a more human-readable format.

Read part descriptions from the config file now instead of hard-coding
them.

Update usage().

Cleanup unused code.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@79 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-14 23:17:26 +00:00
bsd
5dc50eb59f First cut at supporting the ATmega 103 which uses bank addressing and
has a 128K flash.

Due to the bank addressing required, interactive update of the flash
is not supported, though the eeprom can be updated interactively.
Both memories can be programmed via non-interactive mode.

Intel Hex Record type '04' is now generated as required for outputing
memory contents that go beyond 64K.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@78 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-14 02:53:21 +00:00
bsd
fa67482972 Style fixes.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@77 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-13 03:13:13 +00:00
bsd
c4c6988306 Commit changes in preparation for support the ATMega line.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@76 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-13 03:12:52 +00:00
bsd
2eec695f4c Don't override CFLAGS.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@74 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-01 16:58:03 +00:00
bsd
396d65762f Correct default pin assignment.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@73 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-01 14:16:41 +00:00
bsd
ee31149392 Remove debugging code - it served its purpose.
Update copyrights.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@72 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-01 14:04:46 +00:00
bsd
a2f0a306bc Be sure to read the exit specs after the pin configuration has been
assigned, otherwise, we may apply the exit specs to the wrong pins.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@71 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-09-21 03:27:20 +00:00
bsd
5ea5794168 debugging
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@70 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-09-21 02:57:58 +00:00
bsd
b82abdaf2c Prefix pin config entries in the config file with a "c:". Later, I
might make part descriptions read in this way and we can use a
different letter for those (p).  This will make the parsing easier to
distinguish between the entry types.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@69 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-09-20 03:19:31 +00:00
bsd
2962b3785b Initialize pin configuration description.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@68 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-09-20 00:43:08 +00:00
bsd
6c47ddd783 Make the pin definitions configurable based on entries in a config
file.  This makes supporting other programmers much easier.

Rename AVRprog.pdf to avrprog.pdf.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@67 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-09-19 17:04:25 +00:00
bsd
5cf59cbda0 Remove this image file from the repository.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@66 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-04-29 14:23:20 +00:00