argument is a 4 field string (fields seperated by colons) which
indicate what memory type to operate on, what operation to perform is
(read, write, or verify), the filename to read from, write to, or
verify against, and an optional file format field. Multple -U options
can be specified to operate on more than one memory at a time with a
single invocation. For example, to update both the flash and the
eeprom at the same time one can now specify the following:
avrdude -p -e -U flash:w:main.hex:i -U eeprom:w:eeprom.hex:i
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@341 81a1dc3b-b13d-400b-aceb-764788c761c2
reported that this patch fixes verify errors on the Windows platform
that are apparently timing related. Submitted by: Alex Shepherd
<ashepherd@wave.co.nz>, who indicates that this patch was based on
code from the UISP project.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@340 81a1dc3b-b13d-400b-aceb-764788c761c2
* doc/avrdude.texi: Document the -q option.
Fix some typos left over from pasting in man output.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@339 81a1dc3b-b13d-400b-aceb-764788c761c2
Submitted by Larry Barello <larryba@barello.net>.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@333 81a1dc3b-b13d-400b-aceb-764788c761c2
Extend ATmega8 calibration memory to support all 4 calibration bytes.
Savannah bug #3835. Submitted by Francisco T. A. Silva
<ftas@geodigitus.com.br>.
Add a few AVR910 programmer device codes. Savannah bug #3569 - sorry
I can't tell who submitted this to give proper credit.
Add support for the ATtiny12. Submitted by Pontifex <pontifex@isys.ca>
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@332 81a1dc3b-b13d-400b-aceb-764788c761c2
resides above the last non-0xff data value in the address space. Only
do this for flash memory since writing a 0xff to flash is a no-op.
This has the affect of creating smaller output files when dumping
memory contents from flash if the program in flash does not consume
the whole memory space. It also results in shorter programming times
when avrdude is asked to load a file into flash that has lots of 0xff
filled data past the last non-0xff data value.
I think this is basically where Alexey was going with his s-record
routine, but this should have a similar affect for all the I/O
routines. The main difference is that Alexey's also optimized 0xff
from the beginning of the address space and was not limited to flash.
I think that these optimizations should be limited to the flash since
it is currently the only memory that treats 0xff as special.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@331 81a1dc3b-b13d-400b-aceb-764788c761c2
output routines (don't optimize away 0xff data before and after non
0xff data). Also, fix a bug where the data contents sometimes weren't
written out completely.
Initial bug reported by Tom Harris <TomH@optiscan.com>. Fixes
provided by Alexey V.Levdikov <tsar@kemford.com>.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@330 81a1dc3b-b13d-400b-aceb-764788c761c2
main.c : print out '<stdin>' and '<stdout>' instead of '-' when using
stdio for I/O.
Thanks to Francisco T. A. Silva <ftas@geodigitus.com.br> for catching
this, and the error fixed by the previous commit as well.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@325 81a1dc3b-b13d-400b-aceb-764788c761c2
file format type to 'immediate mode' where the filename is assumed to
be the memory data itself.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@318 81a1dc3b-b13d-400b-aceb-764788c761c2
specify byte values on the command line instead of via a file. This
can be good for specifying fuse bytes and eliminates the need to
create single-byte files or using interactive terminal mode for these
single-byte memories. Requested by several folks on the mailing list.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@317 81a1dc3b-b13d-400b-aceb-764788c761c2
bytes since the 'R' command returns MSB first and the internal buffer
stores LSB first.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@307 81a1dc3b-b13d-400b-aceb-764788c761c2
removed in my previous patch. Terminal mode read/writes are broken
without those methods. D'oh!
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@305 81a1dc3b-b13d-400b-aceb-764788c761c2
incr supported by programmer hw, don't send addr for every byte.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@304 81a1dc3b-b13d-400b-aceb-764788c761c2
Daniel Williamson <dannyw@maconmgt.co.uk>
and
Ruwan Jayanetti <rjayanetti@sri.crossvue.com>
The resulting part definition used was actually somewhat of a merge of
the two submitted definitions.
Thanks for the contributions!
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@302 81a1dc3b-b13d-400b-aceb-764788c761c2
Have avr_read_byte() call pgm->read_byte() or avr_read_byte_default().
Add avr_write_byte_default().
Have avr_write_byte() call pgm->write_byte or avr_write_byte_default().
* pgm.c: Initialize pgm->write_byte and pgm->read_byte.
* pgm.h: Add write_byte and read_byte fields to struct programmer_t.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@296 81a1dc3b-b13d-400b-aceb-764788c761c2
available.
* avr910.c (avr910_vfy_cmd_sent): New function.
(avr910_chip_erase): Add support for chip erase.
(avr910_enter_prog_mode): New function.
(avr910_leave_prog_mode): New function.
(avr910_initialize): Add code to select device type and enter prog mode.
(avr910_close): Leave programming mode before closing serial port.
(avr910_read_sig_bytes): New function.
(avr910_initpgm): Add avr910_read_sig_bytes method to pgm initializer.
* avrdude.conf.in: Add note about deprecating devicecode.
Change all occurences of devicecode to stk500_devcode.
Add avr910_devcode to a few parts for testing.
* avrpart.h (struct avrpart): Change devicecode field to stk500_devcode.
(struct avrpart): Add avr910_devcode field.
* config_gram.y: Add K_STK500_DEVCODE and K_AVR910_DEVCODE tokens.
Generate an error if devicecode is found in the config file.
Handle parsing of avr910_devcode and stk500_devcode.
* lexer.l: Handle parsing of avr910_devcode and stk500_devcode.
* pgm.c: Initialize pgm->read_sig_bytes field.
* pgm.h: Add pgm->read_sig_bytes field.
* stk500.c: Use stk500_devcode instead of devicecode.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@293 81a1dc3b-b13d-400b-aceb-764788c761c2
* config_gram.y: Add parsing of avr910 programmer.
* lexer.l: Add avr910 token.
* avr910.c: [this is still work in progress]
Add some debug output.
Add probe for programmer presense.
* main.c: Set port to default_serial if programmer type is avr910.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@292 81a1dc3b-b13d-400b-aceb-764788c761c2