Commit Graph

1117 Commits

Author SHA1 Message Date
bdean eecf43999d Introduce a new option, -U, for performing memory operions. Its
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
2003-08-21 04:52:36 +00:00
bdean c5df201221 Timing related fixes for the Windows platform. Several folks have
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
2003-08-20 00:16:27 +00:00
troth e341f7d3ec * avrdude.1: Document the -q option.
* 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
2003-08-01 20:11:21 +00:00
bdean d6287689c1 Add elapsed time information to the new progress bar.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@338 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-07-30 23:01:52 +00:00
troth 5bf7290268 * avr.c:
* avr.h:
* avr910.c:
* main.c:
* stk500.c:
New progress reporting implementation.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@337 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-07-29 22:08:21 +00:00
joerg_wunsch c79d3c75b0 Add support for displaying and changing the various STK500 operational
parameters.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@336 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-07-24 21:26:28 +00:00
bdean 806ceac840 Remove carraige returns.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@335 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-07-23 23:44:13 +00:00
bdean b1106ed404 Add 'picoweb' programming cable programmer.
Contributed by Rune Christensen <rune.christensen@adslhome.dk>.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@334 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-07-22 01:29:19 +00:00
bdean 3f6564ba98 Add the 'sp12' (Steve Bolt's) programmer.
Submitted by Larry Barello <larryba@barello.net>.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@333 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-06-18 02:47:52 +00:00
bdean a16b1d35c0 Properly identify the "ALF" programmer.
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
2003-06-17 21:35:39 +00:00
bdean 945358b4b3 Optimize flash memory handling a little bit by ignoring 0xff data that
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
2003-05-22 02:33:17 +00:00
bdean ae435210a1 Make the s-record output routine work like the raw and intel hex
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
2003-05-22 00:46:59 +00:00
troth d62232cf63 * avr910.c (avr910_paged_write_flash): Add code to send the 'm'
command ("issue page write" cmd) for each page.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@329 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-05-14 05:14:32 +00:00
troth be7339ca94 * avrdude.conf.in: Add pagel and bs2 entries for at90s1200 device.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@328 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-05-14 03:54:17 +00:00
troth 3817b01d8d * doc/TODO: Add note about avr910 device codes.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@327 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-05-13 21:41:36 +00:00
arcanum 11dbf68e70 Change email address.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@326 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-05-13 18:10:55 +00:00
bdean a44054650f fileio.c : Remove superfluous assignment of 'fname'.
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
2003-05-07 22:13:46 +00:00
bdean 5280d185be Unbreak using stdin/stdout for file input / output.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@324 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-05-07 00:14:03 +00:00
troth ffb2be1eda * configure.ac: Check for ncurses library (since it can be a
replacement for termcap.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@323 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-05-05 02:29:28 +00:00
troth 1149aadc4d * avrdude.conf.in: Add avr decodes for devices known in avr910
firmware version 2.3.
Add missing stk500 devocde for 2343.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@322 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-05-02 16:23:30 +00:00
arcanum d91cf80277 Fix for bug #3293. Set correct open mode for raw format for Windows.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@321 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-23 16:36:01 +00:00
bdean 98d1f804ae unbreak '-i' option argument
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@320 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-19 23:31:51 +00:00
bdean a3905bf471 Document -I.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@319 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-19 23:10:00 +00:00
bdean fa3d83df02 Add a shortcut option, '-I' which is the same as '-i' but defaults the
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
2003-04-19 23:06:01 +00:00
bdean 7007ab14ba Implement and "immediate mode" for file input - this allows one to
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
2003-04-19 18:41:35 +00:00
troth d1d76f9e9c * configure.ac: Add cvs suffix back to version.
* doc/TODO: Add a few items.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@316 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-19 05:26:23 +00:00
troth 897f2afd5b * configure.ac: Set version to 4.1.0.
* doc/avrdude.texi: Add note about avr910 programmer type.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@314 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-18 04:41:45 +00:00
arcanum 0030c32d74 * NEWS: Replace TBD with new release version.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@313 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-17 23:19:58 +00:00
bdean fa68be629f Change deprecated 'devicecode' to 'stk500_devcode' and remove
extraneous carraige returns.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@312 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-17 22:50:41 +00:00
arcanum 9c960703c1 Change name of pony programmer to pony-stk200 to better describe the hw.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@311 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-17 17:34:01 +00:00
arcanum c46f496541 Corrected submitter's name in the ChangeLog.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@310 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-17 16:24:54 +00:00
arcanum e5d13ed1ba Add ATtiny26 support submitted by Artur Lipowski <LAL@pro.onet.pl>.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@309 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-16 23:00:29 +00:00
arcanum 2bfb32f8a8 Add ATmega8535 support submitted by Alexander <apeter@gmx.de>
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@308 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-16 22:44:55 +00:00
troth 299e6aa6ad * avr910.c: Reading a 16 bit word in paged load needs to swap the
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
2003-04-09 20:37:28 +00:00
troth 23aee9f8da * stk500.c: Don't print out read/write byte progress unless the verbose
option is given.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@306 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-07 17:18:51 +00:00
troth c6bc161763 * avr910.c: Re-add the avr910 byte read/write methods which were
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
2003-04-06 07:10:44 +00:00
troth 2a30421f7e * avr910.c: Refactor to allow probing for auto addr increment. If auto
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
2003-04-06 00:47:16 +00:00
arcanum 6ee4dd48d9 * confwin.c: Fix bug that allows garbage for non-existent user config filename on Windows.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@303 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-03 16:46:47 +00:00
bdean 6189880dd5 Add the ATmega32 part. This part definition was contributed by:
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
2003-03-29 15:02:07 +00:00
troth d7f8d90dc9 * NEWS: Add note about avr910 support.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@301 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-03-24 23:37:09 +00:00
arcanum 7bbc788792 Add ChangeLog and NEWS entry for new Bascom programmer.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@300 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-03-24 23:02:11 +00:00
troth 5e3a9fc279 * avr.c (avr_write): Add call to pgm->write_setup() before the write loop.
* avr910.c: Change all show_func_info() calls to no_show_func_info().
Add read/write to/from flash/eeprom memory functionality.
* pgm.c: Initialize pgm->write_setup.
* pgm.h: Add write_setup field to PROGRAMMER structure.
* ser_posix.c: Remove unneeded cast in verbosity code.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@299 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-03-24 07:09:16 +00:00
troth 706e030907 * ser_posix.c: Limit verbose output to 2 chars.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@298 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-03-24 02:37:33 +00:00
troth eaa8c4444d * ser_posix.c: Add verbose level > 3 output for send and recv functions.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@297 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-03-24 01:57:31 +00:00
troth 3a85c3c92a * avr.c: Add avr_read_byte_default().
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
2003-03-23 23:22:50 +00:00
troth 19c7e69151 * avrdude.conf.in: Fix typo for devicecode deprecation comment.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@295 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-03-18 05:49:29 +00:00
arcanum 0a1bdbc522 Add Bascom programmer. Submitted by Larry Barello <larryba@barrello.net>
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@294 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-03-17 17:57:55 +00:00
troth 58f2a417cb * avr.c (avr_read): Use pgm->read_sig_bytes to read signature bytes if
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
2003-03-17 06:20:02 +00:00
troth ae3f4e852f * avrdude.conf.in: Add avr910 and pavr programmers.
* 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
2003-03-16 18:19:37 +00:00
troth 147c27da52 * ser_posix.c, ser_win32.c, serial.h:
Change baud from int to long to avoid a 16-bit int overflow.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@291 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-03-13 19:25:27 +00:00