12003-12-01  Eric B. Weddington  <eric@ecentral.com>
2
3	* doc/avrdude.texi: Update devices and programmers supported.
4
52003-12-01  Eric B. Weddington  <eric@ecentral.com>
6
7	* doc/avrdude.texi: Add missing -D option to user manual.
8	[This fixes bug #6804]
9
102003-11-30  Jan-Hinnerk Reichert  <hinni@despammed.com>
11
12	* avrpart.c,main.c: Moved list_parts() and locate_part()
13	from main.c to avrpart.c.
14	* avrpart.h: Added prototypes for list_parts() and
15	locate_part().
16
172003-11-30  Jan-Hinnerk Reichert  <hinni@despammed.com>
18
19	* avrpart.c, avr.c: Moved elementary functions on types
20	OPCODE, AVRMEM and AVRPART from avr.c to new file avrpart.c.
21	* avr.h: Removed prototypes for moved functions.
22	* avrpart.h: Added prototypes for functions in avrpart.c.
23	* Makefile.am: Added new file avrpart.c.
24
252003-11-28  Michael Mayer  <michael-mayer@gmx.de>
26
27	* lexer.l: New programmer type "butterfly".
28	* config_gram.y: New token K_BUTTERFLY.
29	* avrdude.conf.in: Added programmer definition.
30	* butterfly.c, butterfly.h: Cloned from avr910.?, changed to work
31	with the Atmel Butterfly device.
32	* Makefile.am: Added butterfly.[ch] to avrdude_SOURCES.
33
342003-11-26  Joerg Wunsch  <j@uriah.heep.sax.de>
35
36	* main.c: Make the -U parser tolerate colons in filenames.
37	* avrdude.1, doc/avrdude.texi: Document the -U changes.
38
392003-11-21  Jan-Hinnerk Reichert  <hinni@despammed.com>
40
41	* ppi.c: Major speed tuning. Since ioctl() is expensive read from
42	shadowregisters where possible.
43
442003-11-19  Eric B. Weddington  <eric@ecentral.com>
45
46	* NEWS: Update news from items in ChangeLog.
47
482003-11-19  Theodore A. Roth  <troth@openavr.org>
49[Contributed by Jan-Hinnerk Reichert <jan-hinnerk_reichert@hamburg.de>]
50
51	* avr.c (avr_write_byte_default): Improve polling algorithm to speed up
52	programming of byte oriented parallel programmers.
53
542003-11-14  Brian S. Dean  <bsd@bsdhome.com>
55[Contributed by Erik Christiansen <erik@dd.nec.com.au>]
56
57	* avrdude.conf.in:
58	Add ATmega64 part.
59
602003-11-08  Joerg Wunsch  <j@uriah.heep.sax.de>
61
62	* avrdude.conf.in:
63	Add "fuse" and "lock" definitions for the AT90S8535.  Actually,
64	this is stolen from the AT90S8515 since the datasheet says it's
65	the same there.
66
672003-10-13  Bill Somerville  <bill@classdesign.com>
68
69	* stk500.c (stk500_paged_write): Limit blocks written to no bigger
70	than memory device size.
71	(stk500_paged_write): Send whole block at once.
72	(stk500_paged_load): Limit blocks read to no bigger than memory
73	device size.
74	[This fixes bug #5713.]
75
762003-10-13  Eric B. Weddington  <eric@ecentral.com>
77
78	* avrdude.conf.in: Fix for unterminated character error.
79
802003-10-13  Eric B. Weddington  <eric@ecentral.com>
81
82	* avrdude.conf.in: Add ATmega8515 definition.
83	Contributed by: Matthias Wei�er <matthias@matwei.de>
84	* NEWS: Add note about ATmega8515 definition.
85
862003-09-24  Eric B. Weddington  <eric@ecentral.com>
87
88	* doc/TODO: Updated TODO list.
89
902003-09-22  Eric B. Weddington  <eric@ecentral.com>
91
92	* windows/Makefile.am: Correct makefile so loaddrv does not link
93	to Cygwin DLL.
94
952003-09-18  Eric B. Weddington  <eric@ecentral.com>
96
97	* doc/avrdude.texi: Minor corrections. Change description of -P
98	to reference platform dependencies.
99
1002003-09-16  Eric B. Weddington  <eric@ecentral.com>
101
102	* stk500.c: If writing flash, skip empty pages in paged write.
103
1042003-09-06  Theodore A. Roth  <troth@openavr.org>
105
106	* NEWS: Add 'Current:' header.
107	* configure.ac (AC_INIT): Add cvs back to version since we're
108	back in dev cycle (post release).
109
1102003-09-06  Theodore A. Roth  <troth@openavr.org>
111
112	* AVRDUDE 4.2.0 has been released (cvs release tag is "release_4_2_0").
113
1142003-09-06  Theodore A. Roth  <troth@openavr.org>
115
116	* NEWS: Update for 4.2.0 release. Add note about read/write of fuses
117	support for avr910.
118	* configure.ac (AC_INIT): Set version to 4.2.0.
119
1202003-09-05  Theodore A. Roth  <troth@openavr.org>
121[Contributed by Jan-Hinnerk Reichert <jan-hinnerk_reichert@hamburg.de>]
122
123	* avr.c (avr_read_byte): If pgm->read_byte method fails, retry with
124	avr_read_byte_default.
125	* avr.c (avr_write_byte): If pgm->write_byte method fails, retry with
126	avr_write_byte_default.
127	* avr910.c (avr910_cmd): Implement using universal command.
128
1292003-09-04  Theodore A. Roth  <troth@openavr.org>
130
131	* Makefile.am: Change AM_CPPFLAGS to avrdude_CPPFLAGS.
132	Define avrdude_CFLAGS.
133	* configure.ac: Set ENABLE_WARNINGS to "-Wall" if using gcc.
134
1352003-09-02  Eric B. Weddington <eric@ecentral.com>
136
137	* doc/avrdude.texi: Add note about privileges needed to load
138	the giveio driver for Windows.
139
1402003-08-29  Brian S. Dean  <bsd@bsdhome.com>
141
142	* avrdude.1:
143	* main.c:
144	Perform an auto erase before programming if the flash memory is
145	anywhere specified to be written by any of the -U requests.
146
147	To remain backward compatible with previous versions, disable this
148	feature if any of the old-style memory specification operations are
149	specified (-i, -o).
150
151	Implement the -D option to explicitly disable the auto erase default.
152
153	Deprecate the old-style memory specification options (-f, -i, -I, -m,
154	and -o) in favor of the new -U option which allows one to operate on
155	multiple memories on a single command line.
156
1572003-08-28  Eric B. Weddington  <eric@ecentral.com>
158
159	* avr910.c:
160	* fileio.c:
161	* main.c:
162	* stk500.c:
163	More code cleanup to remove warnings.
164
1652003-08-27  Theodore A. Roth  <troth@openavr.org>
166
167	* main.c (update_progress_no_tty): Properly terminate progress. Also
168	fixes stk500 problem where number of bytes written is less than a page.
169
1702003-08-27  Theodore A. Roth  <troth@openavr.org>
171
172	* avrdude.spec.in: Fix broken rpmbuild on RedHat-9.
173
1742003-08-25  Eric B. Weddington  <eric@ecentral.com>
175
176	* fileio.c:
177	* main.c:
178	* ppiwin.c:
179	* ser_posix.c:
180	* stk500.c:
181	Minor code cleanup to remove warnings.
182
1832003-08-21  Brian S. Dean  <bsd@bsdhome.com>
184
185	* avrdude.1:
186	* main.c:
187
188	Introduce a new option, -U, for performing memory operions.
189	Its argument is a 4 field string (fields seperated by colons)
190	which indicate what memory type to operate on, what operation
191	to perform is (read, write, or verify), the filename to read
192	from, write to, or verify against, and an optional file format
193	field.  Multple -U options can be specified to operate on more
194	than one memory at a time with a single invocation.  For
195	example, to update both the flash and the eeprom at the same
196	time one can now specify the following:
197
198	avrdude -p -e -U flash:w:main.hex:i -U eeprom:w:eeprom.hex:i
199
2002003-08-20  Brian S. Dean  <bsd@bsdhome.com>
201
202	* ppiwin.c:
203	Timing related fixes for the Windows platform.  Several folks have
204	reported that this patch fixes verify errors on the Windows platform
205	that are apparently timing related.  Submitted by: Alex Shepherd
206	<ashepherd@wave.co.nz>, who indicates that this patch was based on
207	code from the UISP project.
208
2092003-08-01  Theodore A. Roth  <troth@openavr.org>
210
211	* avrdude.1: Document the -q option.
212	* doc/avrdude.texi: Document the -q option.
213	Fix some typos left over from pasting in man output.
214
2152003-07-30  Brian S. Dean  <bsd@bsdhome.com>
216
217	* main.c: Add elapsed time information to the new progress bar.
218
2192003-07-29  Theodore A. Roth  <troth@openavr.org>
220
221	* avr.c:
222	* avr.h:
223	* avr910.c:
224	* main.c:
225	* stk500.c:
226	New progress reporting implementation.
227
2282003-07-24  Joerg Wunsch  <j@uriah.heep.sax.de>
229
230	* avrdude.1:
231	* doc/avrdude.texi:
232	* pgm.c:
233	* pgm.h:
234	* stk500.c:
235	* stk500_private.h:
236	* term.c: Add support for displaying and setting the various
237	operational parameters of the STK500 (Vtarget, Varef, clock).
238
2392003/07/22  Brian S. Dean  <bsd@bsdhome.com>
240
241	* avrdude.conf.in:
242	  Add 'picoweb' programming cable programmer.
243	  Contributed by Rune Christensen <rune.christensen@adslhome.dk>.
244
2452003-06-18  Brian S. Dean  <bsd@bsdhome.com>
246
247	* avrdude.conf.in:
248	Add the 'sp12' (Steve Bolt's) programmer.
249	Submitted by Larry Barello <larryba@barello.net>.
250
2512003-06-17  Brian S. Dean  <bsd@bsdhome.com>
252
253	* avrdude.conf.in:
254	Properly identify the "ALF" programmer.
255
256	Extend ATmega8 calibration memory to support all 4 calibration bytes.
257	Savannah bug #3835.  Submitted by Francisco T. A. Silva
258	<ftas@geodigitus.com.br>.
259
260	Add a few AVR910 programmer device codes.  Savannah bug #3569 - sorry
261	I can't tell who submitted this to give proper credit.
262
263	Add support for the ATtiny12.  Submitted by Pontifex <pontifex@isys.ca>
264
2652003-05-22  Brian S. Dean  <bsd@bsdhome.com>
266
267	* avr.c:
268	* avr.h:
269	* fileio.c:
270	Optimize flash memory handling a little bit by ignoring 0xff data that
271	resides above the last non-0xff data value in the address space.  Only
272	do this for flash memory since writing a 0xff to flash is a no-op.
273	This has the affect of creating smaller output files when dumping
274	memory contents from flash if the program in flash does not consume
275	the whole memory space.  It also results in shorter programming times
276	when avrdude is asked to load a file into flash that has lots of 0xff
277	filled data past the last non-0xff data value.
278
2792003-05-13  Theodore A. Roth  <troth@openavr.org>
280
281	* avr910.c (avr910_paged_write_flash): Add code to send the 'm'
282	command ("issue page write" cmd) for each page.
283
2842003-05-13  Theodore A. Roth  <troth@openavr.org>
285
286	* avrdude.conf.in: Add pagel and bs2 entries for at90s1200 device.
287
2882003-05-13  Theodore A. Roth  <troth@openavr.org>
289
290	* doc/TODO: Add note about avr910 device codes.
291
2922003-05-04  Theodore A. Roth  <troth@openavr.org>
293
294	* configure.ac: Check for ncurses library (since it can be a
295	replacement for termcap).
296
2972003-05-02  Theodore A. Roth  <troth@openavr.org>
298
299	* avrdude.conf.in: Add avr decodes for devices known in avr910
300	firmware version 2.3.
301	Add missing stk500 devocde for 2343.
302
3032003-04-23  Eric B. Weddington  <eric@ecentral.com>
304
305	* fileio.c: Fix for bug #3293. Set correct open mode for raw format
306	for Windows.
307
3082003-04-19  Brian S. Dean  <bsd@bsdhome.com>
309
310	* avrdude.1:
311	* fileio.c:
312	* fileio.h:
313	* main.c:
314	Implement and "immediate mode" for file input - this allows
315	one to specify byte values on the command line instead of via
316	a file.  This can be good for specifying fuse bytes and
317	eliminates the need to create single-byte files or using
318	interactive terminal mode for these single-byte memories.
319	Requested by several folks on the mailing list.
320
3212003-04-18  Theodore A. Roth  <troth@openavr.org>
322
323	* configure.ac: Add cvs suffix back to version.
324	* doc/TODO: Add a few items.
325
3262003-04-18  Theodore A. Roth  <troth@openavr.org>
327
328	* AVRDUDE 4.1.0 has been released (cvs release tag is "release_4_1_0").
329
3302003-04-17  Theodore A. Roth  <troth@openavr.org>
331
332	* configure.ac: Set version to 4.1.0.
333	* doc/avrdude.texi: Add note about avr910 programmer type.
334
3352003-04-17  Eric B. Weddington  <eric@ecentral.com>
336
337	* NEWS: Replace TBD with new release version.
338
3392003-04-17  Eric B. Weddington  <eric@ecentral.com>
340
341	* avrdude.conf.in: Change name of pony programmer to pony-stk200
342	to better describe the hardware (PonyProg is software that works
343	with various hardware).
344
3452003-04-16  Eric B. Weddington  <eric@ecentral.com>
346
347	* avrdude.conf.in: Add support for ATtiny26
348	Submitted by Artur Lipowski <LAL@pro.onet.pl>
349	* NEWS: List new devices supported: ATtiny26
350
3512003-04-16  Eric B. Weddington <eric@ecentral.com>
352
353	* avrdude.conf.in: Add support for ATmega8535
354	Submitted by Alexander Peter <apeter@gmx.de>
355	* NEWS: List new devices supported: ATmega8535
356
3572003-04-09  Theodore A. Roth  <troth@openavr.org>
358
359	* avr910.c: Reading a 16 bit word in paged load needs to swap the
360	bytes since the 'R' command returns MSB first and the internal buffer
361	stores LSB first.
362
3632003-04-07  Theodore A. Roth  <troth@openavr.org>
364
365	* stk500.c: Don't print out read/write byte progress unless the verbose
366	option is given.
367
3682003-04-05  Theodore A. Roth  <troth@openavr.org>
369
370	* avr910.c: Re-add the avr910 byte read/write methods which were
371	removed in my previous patch. Terminal mode read/writes are broken
372	without those methods. D'oh!
373
3742003-04-05  Theodore A. Roth  <troth@openavr.org>
375
376	* avr910.c: Refactor to allow probing for auto addr increment. If auto
377	incr supported by programmer hw, don't send addr for every byte.
378
3792003-04-03  Eric B. Weddington <eric@ecentral.com>
380
381	* confwin.c: Fix bug that allows garbage for non-existent user
382	config filename on Windows.
383
3842003-03-29  Brian S. Dean  <bsd@bsdhome.com>
385
386	* avrdude.conf.in:
387	Add the ATmega32 part.  This part definition was contributed by:
388	Daniel Williamson <dannyw@maconmgt.co.uk> and
389	Ruwan Jayanetti <rjayanetti@sri.crossvue.com>
390	The resulting part definition used was actually somewhat of a merge of
391	the two submitted definitions.
392
3932003-03-24  Theodore A. Roth  <troth@openavr.org>
394
395	* NEWS: Add note about avr910 support.
396
3972003-03-23  Theodore A. Roth  <troth@openavr.org>
398
399	* avr.c (avr_write): Add call to pgm->write_setup() before the write
400	loop.
401	* avr910.c: Change all show_func_info() calls to no_show_func_info().
402	Add read/write to/from flash/eeprom memory functionality.
403	* pgm.c: Initialize pgm->write_setup.
404	* pgm.h: Add write_setup field to PROGRAMMER structure.
405	* ser_posix.c: Remove unneeded cast in verbosity code.
406
4072003-03-23  Theodore A. Roth  <troth@openavr.org>
408
409	* ser_posix.c: Limit verbose output to 2 chars.
410
4112003-03-23  Theodore A. Roth  <troth@openavr.org>
412
413	* ser_posix.c: Add verbose level > 3 output for send and recv functions.
414
4152003-03-23  Theodore A. Roth  <troth@openavr.org>
416
417	* avr.c: Add avr_read_byte_default().
418	Have avr_read_byte() call pgm->read_byte() or avr_read_byte_default().
419	Add avr_write_byte_default().
420	Have avr_write_byte() call pgm->write_byte or avr_write_byte_default().
421	* pgm.c: Initialize pgm->write_byte and pgm->read_byte.
422	* pgm.h: Add write_byte and read_byte fields to struct programmer_t.
423
4242003-03-17  Theodore A. Roth  <troth@openavr.org>
425
426	* avrdude.conf.in: Fix typo for devicecode deprecation comment.
427
4282003-03-17  Eric B. Weddington  <eric@ecentral.com>
429
430	* avrdude.conf.in: Add Bascom SAMPLE programmer.
431	Submitted by Larry Barello <larryba@barrello.net>
432
4332003-03-16  Theodore A. Roth  <troth@openavr.org>
434
435	* avr.c (avr_read): Use pgm->read_sig_bytes to read signature bytes if
436	available.
437	* avr910.c (avr910_vfy_cmd_sent): New function.
438	(avr910_chip_erase): Add support for chip erase.
439	(avr910_enter_prog_mode): New function.
440	(avr910_leave_prog_mode): New function.
441	(avr910_initialize): Add code to select device type and enter prog mode.
442	(avr910_close): Leave programming mode before closing serial port.
443	(avr910_read_sig_bytes): New function.
444	(avr910_initpgm): Add avr910_read_sig_bytes method to pgm initializer.
445	* avrdude.conf.in: Add note about deprecating devicecode.
446	Change all occurences of devicecode to stk500_devcode.
447	Add avr910_devcode to a few parts for testing.
448	* avrpart.h (struct avrpart): Change devicecode field to stk500_devcode.
449	(struct avrpart): Add avr910_devcode field.
450	* config_gram.y: Add K_STK500_DEVCODE and K_AVR910_DEVCODE tokens.
451	Generate an error if devicecode is found in the config file.
452	Handle parsing of avr910_devcode and stk500_devcode.
453	* lexer.l: Handle parsing of avr910_devcode and stk500_devcode.
454	* pgm.c: Initialize pgm->read_sig_bytes field.
455	* pgm.h: Add pgm->read_sig_bytes field.
456	* stk500.c: Use stk500_devcode instead of devicecode.
457
4582003-03-16  Theodore A. Roth  <troth@openavr.org>
459
460	* avrdude.conf.in: Add avr910 and pavr programmers.
461	* config_gram.y: Add parsing of avr910 programmer.
462	* lexer.l: Add avr910 token.
463	* avr910.c: [this is still work in progress]
464	Add some debug output.
465	Add probe for programmer presense.
466	* main.c: Set port to default_serial if programmer type is avr910.
467
4682003-03-13  Theodore A. Roth  <troth@openavr.org>
469
470	* ser_posix.c, ser_win32.c, serial.h:
471	Change baud from int to long to avoid a 16-bit int overflow.
472
4732003-03-12  Theodore A. Roth  <troth@openavr.org>
474
475	* Makefile.am (avrdude_SOURCES): Add avr910.[ch], serial.h and
476	ser_posix.c files.
477	* avr910.c: New file (stubs for avr910 serial programmer).
478	* avr910.h: New file.
479	* ser_posix.c: New file.
480	* ser_win32.c: New file (just stubs for now).
481	* serial.h: New file.
482	* stk500.c: Move all the code for accessing the posix serial ports
483	into ser_posix. This will make a native win32 port easier and allows
484	the avr910 programmer to share the serial code.
485
4862003-03-12  Theodore A. Roth  <troth@openavr.org>
487
488	* configure.ac (AC_INIT): Set version to 4.0.0cvs since we're done
489	with 4.0.0 release.
490
4912003-03-12
492
493	* AVRDUDE 4.0.0 has been released (cvs release tag is "release_4_0_0").
494
4952003-03-11  Theodore A. Roth  <troth@openavr.org>
496
497	* Makefile.am: Add CLEANFILES to remove all files from a make.
498	* doc/Makefile.am: Ditto
499
5002003-03-11  Theodore A. Roth  <troth@openavr.org>
501
502	* windows/Makefile.am: Fix uninstall-local rule (forget the $$file
503	part of the rm command).
504
5052003-03-11  Theodore A. Roth  <troth@openavr.org>
506
507	* AUTHORS: Updated.
508	* CHANGELOG: Move contents to NEWS and remove file.
509	* ChangeLog: All of the changes for this year.
510	* ChangeLog-2001: All 2001 changes.
511	* ChangeLog-2002: All 2002 changes.
512	* Makefile.am (EXTRA_DIST): Remove CHANGELOG and and Change-200[12].
513	* NEWS: Moved contents of CHANGELOG file here.
514	* README: Add note pointing to savannah site.
515
5162003-03-11  Eric Weddington <eric@ecentral.com>
517
518	* doc/avrdude.texi:
519	Add Install and Documentation sections for Windows. Fix typo.
520
5212003-03-10  Theodore A. Roth  <troth@openavr.org>
522
523	* Makefile.am: * Makefile.am (EXTRA_DIST): Add CHANGELOG.
524
5252003-03-10  Brian S. Dean  <bsd@bsdhome.com>
526
527	* stk500.c: Disable debugging printf.
528
529	* configure.ac: Update version number in preparation for release.
530
5312003-03-10  Theodore A. Roth  <troth@openavr.org>
532
533	* doc/avrdude.texi:
534	Add comment before each node to make them stand out better.
535	Use @option{} command for options instead of @code{}.
536	Merge FreeBSD and Linux platform dependent information.
537
5382003-03-10  Brian S. Dean  <bsd@bsdhome.com>
539
540	* avrdude.1: Minor man page updates to better reflect reality.
541
5422003-03-10  Joerg Wunsch <j@uriah.heep.sax.de>
543
544	* bootstrap:
545	Export all the AUTO* variables.  Hopefully, that way the generated
546	Makefile might get them correctly.
547
548	* bootstrap:
549	Export ${AUTOCONF} so automake will find it by whatever name it will be
550	called today.
551
5522003-03-06  Eric Weddington <eric@ecentral.com>
553
554	* doc/avrdude.texi:
555	Add notes about ability to list parts and list programmers in the
556	config file in -p and -c descriptions. Change info about where to
557	find Windows search method in -C description.
558
559	* main.c:
560	Change software version from hardcoded value to getting it from
561	the configuration.
562
5632003-03-06  Theodore A. Roth  <troth@openavr.org>
564
565	* avrdude.spec.in: * avrdude.spec.in: Add docs sub-package.
566	Add %post and %preun scriptlets for handling info files.
567
568	* configure.ac, doc/Makefile.am:
569	* configure.ac: Add --enable-versioned-doc option and set DOC_INST_DIR.
570	* doc/Makefile.am: Add rules to install docs in DOC_INST_DIR.
571
572	* doc/Makefile.am:
573	Delete the lines which where commented out in previous commit.
574
575	* configure.ac, doc/Makefile.am:
576	* configure.ac: Remove hack to make work with automake-1.5.
577	* doc/Makefile.am: Remove extra rules that were needed to work with
578		automake-1.5.
579
580	* bootstrap:
581	* bootstrap: Force use of autoconf-2.57 and automake-1.7.x.
582
5832003-03-05  Joerg Wunsch <j@uriah.heep.sax.de>
584
585	* avrdude.conf.in: Add a definition for the popular Ponyprog dongle.
586
587	Submitted by:	Daniel Williamson <dannyw@maconmgt.co.uk>
588
5892003-03-05  Brian S. Dean  <bsd@bsdhome.com>
590
591	* main.c:
592	Check the programmer type against 'STK500' instead of the programmer
593	name when checking to see if we should default to the default_serial
594	port instead of the default_parallel port.  This has us do the right
595	thing for the new 'avrisp' programmer.
596
597	* stk500.c:
598	Make the page size used for non-paged parts for the 'paged_write'
599	command be 128 bytes.  This cuts 6 seconds off the programming time
600	for uploading a 6K file into an AT90S8515 vs the time loading the same
601	file using a 16 byte buffer, and the response feedback is still good.
602
603	* avr.c, stk500.c:
604	Fix stk500 page write (Program Page command).  This is supported after
605	all on non-paged-memory parts.  The problem was that the page size was
606	defaulting to 256 (maximum for the stk500), but the timeout for a
607	response from the stk500 before declaring it dead was only 0.5
608	seconds.  But it takes much longer than 0.5 seconds to program 256
609	bytes, so we just weren't waiting long enough.
610
611	Fix this in two ways - increase the timeout to 5 seconds, and decrease
612	the page size to 16 bytes for non-paged parts.  The programming time
613	for 16 bytes is short enough to provide the user with some feedback
614	that something is happening.
615
616	* avr.c, stk500.c:
617	Don't call the programmer's 'paged_write' routine unless the memory
618	itself is paged as it doesn't appear to work otherwise.
619
620	* avrdude.conf.in: Fix device codes for at90s8515 and at90s8535.
621
622	* avrdude.conf.in:
623	Add PAGEL and BS2 parms for parts I have datasheets for.
624
625	* config_gram.y:
626	Do that last commit slightly differently - this way results in no
627	shift-reduce conflicts.
628
629	* config_gram.y:
630	It shouldn't be an error to have an empty configuration file.  This
631	causes some shift-reduce conflicts, but I think they are OK.
632
633	* main.c:
634	Print out a list of valid parts for '-p ?' and a list of valid
635	programmers for '-c ?'.
636
6372003-03-04  Eric Weddington <eric@ecentral.com>
638
639	* doc/avrdude.texi: Minor Windows doc corrections.
640
641	* doc/TODO: Add TODO file.
642
643	* avrdude.conf.in: Add AVR ISP programmer.
644
6452003-03-04  Brian S. Dean  <bsd@bsdhome.com>
646
647	* stk500.c:
648	Don't try to set extended device programming parameters if they
649	haven't been specified in the config file for the part.
650
651	* stk500.c: Set extended device parameters for all firmware versions.
652
653	* stk500.c:
654	First attempt at supporting STK500 firmware past 1.10.  Thanks to
655	Jason Kyle for the needed protocol information.
656
6572003-03-03  Theodore A. Roth  <troth@openavr.org>
658
659	* doc/Makefile.am:
660	* doc/Makefile.am: Add ps and pdf rules since they aren't supplied by
661	automake versions prior to 1.7.
662
663	* doc/avrdude.texi:
664	* doc/avrdude.texi: Add node and menu information for the info system.
665
666	* Makefile.am, configure.ac, doc/Makefile.am, doc/avrdude.texi:
667	* Makefile.am (SUBDIRS): Add doc dir.
668	* configure.ac (AC_CONFIG_FILES): Add doc/Makefile.
669	* doc/Makefile.am: New file.
670	* doc/avrdude.texi: Use automatically generated version.texi.
671
6722003-03-02  Brian S. Dean  <bsd@bsdhome.com>
673
674	* doc/avrdude.texi: Initial manual.
675
6762003-02-27  Theodore A. Roth  <troth@openavr.org>
677
678	* term.c: * term.c: Use fgets() if readline() is not available.
679
6802003-02-27  Joerg Wunsch <j@uriah.heep.sax.de>
681
682	* bootstrap:
683	Oops, accidentally spammed the repository with my private version of
684	"bootstrap".  Back out that change.
685
686	* bootstrap, lexer.l:
687	Ignore \r as white space, to make the Windows people happy.
688
6892003-02-27  Theodore A. Roth  <troth@openavr.org>
690
691	* Makefile.am (EXTRA_DIST): Add avrdude.spec and make entries one
692	per line so future patches are obvious as to what changed.
693	* avrdude.spec.in: New file to support creation of binaries in rpm
694	format.
695	* configure.ac (AC_OUTPUT): Add avrdude.spec.  Reorder so that
696	Makefile is the last entry.
697
6982003-02-26  Theodore A. Roth  <troth@openavr.org>
699
700	* Makefile.am (SUBDIRS): Add windows dir.
701	* configure.ac: If $target is a windows system, build whats in
702	windows sub dir.
703	* windows/Makefile.am: New file.
704
7052003-02-25  Theodore A. Roth  <troth@openavr.org>
706
707	* ChangeLog: Point reader to the CHANGELOG file.
708	* Makefile.am (EXTRA_DIST): Rename avrdude.conf.sample to
709	avrdude.conf.in.
710	Remove avrdude.conf and distclean-local rules.
711	Add install-exec-local and backup-avrdude-conf rules.
712	* avrdude.conf.in:
713	Set default_parallel to "@DEFAULT_PAR_PORT@" for autoconf expansion.
714	Set default_serial to "@DEFAULT_SER_PORT@" for autoconf expansion.
715	* configure.ac: Add call to AC_CANONICAL_{BUILD,HOST,TARGET} macros.
716	Set DEFAULT_PAR_PORT and DEFAULT_SER_PORT based on $host.
717	Add copyright header.
718	Define avrdude_version so AC_INIT and AM_INIT_AUTOMAKE are sure
719	to get the same version.
720
721	* avrdude.conf.in, avrdude.conf.sample:
722	Renamed avrdude.conf.sample to avrdude.conf.in.
723
7242003-02-25  Eric Weddington <eric@ecentral.com>
725
726	* ppiwin.c: CRs again.
727
728	* confwin.c, confwin.h: Get rid of CRs.
729
730	* main.c, Makefile.am: Get rid of CRs again.
731
7322003-02-24  Joerg Wunsch <j@uriah.heep.sax.de>
733
734	* avrdude.1: Atmel has rearranged their web site, so now the AVR
735	docs have been moved to a more logically sounding URL.
736
7372003-02-24  Eric Weddington <eric@ecentral.com>
738
739	* Makefile.am, main.c: Integrate Windows search of config files.
740
741	* confwin.c, confwin.h: config file search on Windows.
742
743	* ppiwin.c: Change port value from lpt1alt to lpt3. Other
744	formatting changes.
745
746	* windows/giveio.c:
747	Add giveio device driver source. Requires MS DDK to build.
748
749	* windows/giveio.sys: Add giveio device driver binary.
750
751	* giveio.sys, install_giveio.bat, remove_giveio.bat, status_giveio.bat:
752	Move Windows specific files.
753
754	* windows/loaddrv.c, windows/loaddrv.h, windows/remove_giveio.bat:
755	* windows/status_giveio.bat, windows/install_giveio.bat:
756	Add Windows specific files.
757
758	* main.c: Usage back to stderr.
759
7602003-02-22  Brian S. Dean  <bsd@bsdhome.com>
761
762	* CHANGELOG: Add note about .avrduderc.
763
764	* avr.c, avrdude.conf.sample, avrpart.h, config_gram.y, main.c,
765	* par.c, pgm.c, pgm.h:
766	Add the ability to read a per-user config file located at
767	$HOME/.avrduderc.  Entries from .avrduderc take precedence over those
768	from the system wide config file in ${PREFIX}/etc/avrdude.conf.
769
770	Track and display the config file name and line number when we print
771	out the available parts and programmers.  This is useful in case
772	someone has overridden a definition in their .avrduderc file and is
773	wondering why the definition in the system wide config file is not
774	being used.
775
776	Remove the default programmer 'stk500' from the distributed config
777	file.
778
779	* CHANGELOG: Spelling.
780
7812003-02-21  Brian S. Dean  <bsd@bsdhome.com>
782
783	* CHANGELOG:
784	Put some stuff in the CHANGELOG for this upcoming new version before I
785	forget.
786
787	* main.c:
788	Update comment due to removal of the default parallel port pin config.
789
790	* config.c, config.h, config_gram.y, lexer.l, main.c:
791	* avrdude.conf.sample:
792	Introduce 'default_programmer' to the config file instead of requiring
793	one of the programmers to be tagged "default" within its definition.
794
795	Also, axe the notion of a compiled-in default programmer.  It is
796	kind've pointless now that nearly all configuration comes from the
797	config file, thus, avrdude is not very useful without the config file,
798	and thus, having a programmer compiled-in offers little or no benefit.
799
8002003-02-21  Eric Weddington <eric@ecentral.com>
801
802	* main.c: Change usage text to be verbose.
803
804	* giveio.sys: Add Windows parallel port device driver (binary).
805
806	* install_giveio.bat, remove_giveio.bat, status_giveio.bat:
807	Windows batch files to work with giveio.sys.
808
8092003-02-21  Brian S. Dean  <bsd@bsdhome.com>
810
811	* avrdude.conf.sample, config.c, config.h, config_gram.y, lexer.l:
812	* main.c:
813	Add port name defaults to the config file instead of hard-coding.
814	This adds 'default_parallel' and 'default_serial' keywords to the
815	grammar, which take quoted string arguments.
816
817	* avrdude.conf.sample:
818	Document the recent additions to the config file.
819
820	* stk500.c, avr.c, avrpart.h, config_gram.y, lexer.l, par.c:
821	Add the ability to specify which pin to pulse when retrying entry into
822	programming mode.  Use 'retry_pulse' in the per-part specification
823	that can currently take values of 'reset' or 'sck', the default being
824	'sck' which preserves the previous behaviour.  Some newer parts
825	indicate that /RESET should be pulsed, while older parts say to pulse
826	SCK.
827
8282003-02-20  Eric Weddington <eric@ecentral.com>
829
830	* main.c, par.c:
831	Make verbose global. Make debug code in par_cmd() based on verbose=2.
832
8332003-02-20  Brian S. Dean  <bsd@bsdhome.com>
834
835	* stk500.c: Fix pseudo/full parallel mode selection logic.
836
837	* avrdude.conf.sample:
838	Woops, didn't really mean to commit those changes that slipped in with
839	the last commit.  Those were just there for testing.
840
841	* avr.c, avrdude.conf.sample, avrpart.h, config_gram.y, lexer.l:
842	* stk500.c:
843	Add 'serial' and 'parallel' keywords to the grammar so that one can
844	say whether parts support these programming modes or not.  Possible
845	values for 'serial' are 'yes' or 'no'.  Possible values for 'parallel'
846	are 'yes', 'no', or 'pseudo'.  Add a bit mask of flags to the AVRPART
847	structure to capture these settings.  Use these within
848	stk500_initialize() to set the device parameters correctly.
849
850	Defaults for 'serial' and 'parallel' are 'yes' unless specified
851	otherwise.
852
8532003-02-20  Eric Weddington <eric@ecentral.com>
854
855	* Makefile.am, ppiwin.c: Get rid of CRs.
856
857	* Makefile.am: Add ppiwin.c to avrdude_SOURCES.
858
859	* ppiwin.c: Added ppiwin.c: Windows parallel port driver.
860
861	* stk500.c:
862	Add error message for fail to enter programming mode. Fix typos.
863
8642003-02-20  Brian S. Dean  <bsd@bsdhome.com>
865
866	* avr.c, avrdude.conf.sample, avrpart.h, config_gram.y, lexer.l:
867	Add a few parameters needed for parallel programming: assignment of
868	PAGEL and BS2 signals and the disposition of the reset pin
869	('dedicated' or 'io').
870
8712003-02-20  Theodore A. Roth  <troth@openavr.org>
872
873	* avrdude.1: Fix spacing for m169 entry. (tabs not spaces ;-)
874
8752003-02-20  Brian S. Dean  <bsd@bsdhome.com>
876
877	* avrdude.1, fileio.c, main.c: Add Motorola S-record support.
878
879	Submitted by:		"Alexey V.Levdikov" <tsar@kemford.com>
880
8812003-02-19  Theodore A. Roth  <troth@openavr.org>
882
883	* avrdude.1: Add m169 to list of supported targets.
884
8852003-02-19  Joerg Wunsch <j@uriah.heep.sax.de>
886
887	* avrdude.conf.sample, avrdude.1:
888	My colleague contributed a part definition for the AT90S2343.
889
890	Submitted by:	Mirko Kaffka <mirko@mkaffka.de>
891
8922003-02-18  Theodore A. Roth  <troth@openavr.org>
893
894	* avrdude.conf.sample:
895	Add support for mega169. (tested with stk500 with 1.7 firmware)
896
897	* avrdude.conf.sample:
898	Add commments to separate parts (makes it easier for the eye to parse).
899
9002003-02-15  Theodore A. Roth  <troth@openavr.org>
901
902	* Makefile.am: Add $srcdir to sample config filename so that
903	building in a separate dir works.
904
9052003-02-15  Joerg Wunsch <j@uriah.heep.sax.de>
906
907	* Makefile.am:
908	Only GNU make sets $< in non-inference rules, so rather explicitly
909	spell the source file(s) to remain compatible.
910
9112003-02-14  Theodore A. Roth  <troth@openavr.org>
912
913	* Makefile.am: Add distclean rule and EXTRA_DIST list to get 'make
914	distcheck' to succeed.
915
916	These changes add basic support for a autoconf/automake based
917	build system.
918
919	* .cvsignore: Ignore autoconf files.
920	* AUTHORS: New file.
921	* ChangeLog: New file.
922	* Makefile: Removed file.
923	* Makefile.am: New file.
924	* NEWS: New file.
925	* README: New file.
926	* bootstrap: New file.
927	* configure.ac: New file.
928	* avr.c: Include ac_cfg.h (generated by autoconf).
929	* config.c: Include ac_cfg.h.
930	Include config_gram.h instead of y.tab.h.
931	* config.h: If HAS_YYSTYPE is not defined, define YYSTYPE.
932	* config_gram.y: Include ac_cfg.h.
933	* fileio.c: Include ac_cfg.h.
934	* lexer.l: Include config_gram.h instead of y.tab.h.
935	* lists.c: Include ac_cfg.h.
936	* main.c: Include ac_cfg.h.
937	* par.c: Include ac_cfg.h.
938	* pgm.c: Include ac_cfg.h.
939	* ppi.c: Include ac_cfg.h.
940	* stk500.c: Include ac_cfg.h.
941	* term.c: Include ac_cfg.h.
942
9432003-02-14  Brian S. Dean  <bsd@bsdhome.com>
944
945	* stk500.c: Fix typos.  Fix error messages.
946
9472003-02-13  Brian S. Dean  <bsd@bsdhome.com>
948
949	* Makefile, avrdude.conf.sample, config_gram.y, lexer.l, main.c:
950	* par.c, par.h, ppi.c, ppi.h, stk500.c:
951	Split higher level parallel port programmer code off from ppi.c into
952	its own file par.c, leaving low level parallel port accessor routines
953	in ppi.c to help with portability.  Change the programmer type to
954	'PAR' now instead of 'PPI' - 'PAR' represents the parallel port
955	programmer type.
956
957	Be more liberal with 'static' function declarations within the
958	programmer implimentation files - these functions should never be
959	called directly - always use the programmer function references.
960
961	There are still a few places in 'main.c' that directly reference the
962	parallel programmer explicitly (par_getpinmask).  These should be
963	fixed somehow.
964
965	Axe a few unused functions.
966
9672003-02-12  Theodore A. Roth  <troth@openavr.org>
968
969	* .cvsignore: New file.
970
971	* stk500.c: Remove need for inttypes.h.
972
973	* lexer.l: Define YY_NO_UNPUT to quell a compiler warning.
974
975	* Makefile: Remove YACC assignment.
976	Add '-b y' options to YACC invocation.
977	Remove leading '-' from 'include .depend'.
978
9792003-02-12  Joerg Wunsch <j@uriah.heep.sax.de>
980
981	* config_gram.y:
982	Declare the internally used static functions on top, to get rid of the
983	compiler warnings.
984
985	Reported by:	bison-generated parsers
986
9872003-02-11  Theodore A. Roth  <troth@openavr.org>
988
989	* linux_ppdev.h: New file.
990	* ppi.c: Include system dependant parallel port interface file.
991	(ppi_open): Add call to ppi_claim().
992	(ppi_close): Add call to ppi_release().
993	* ppi.h: Define ppi_claim() and ppi_release() as NOPs if not previously
994	defined.
995	* stk500.c: Include inttypes header to quell compiler warning.
996
9972003-02-11  Joerg Wunsch <j@uriah.heep.sax.de>
998
999	* pgm.c, ppi.c, stk500.c: Fix some implicit declaration warnings.
1000
1001	* config_gram.y:
1002	Move the C declarations to the top of the file.  While [b]yacc doesn't
1003	care, bison does, and this is normally the way it's meant to be
1004	anyway.
1005
10062003-02-11  Theodore A. Roth  <troth@openavr.org>
1007
1008	* Makefile: Generate dependencies specific to the target system.
1009	Explicitly use byacc.
1010
1011	* Makefile:
1012	Remove reference to avr-gcc in depend rule (cut & paste error).
1013
10142003-02-09  Brian S. Dean  <bsd@bsdhome.com>
1015
1016	* main.c, pgm.c, pgm.h, pindefs.h, ppi.c, ppi.h, stk500.c:
1017	* stk500.h, stk500_private.h, term.c, term.h, CHANGELOG, COPYING:
1018	* Makefile, avr.c, avr.h, avrdude.1, avrdude.conf.sample:
1019	* avrdude.pdf, avrpart.h, config.c, config.h, config_gram.y:
1020	* fileio.c, fileio.h, lexer.l, lists.c, lists.h:
1021	Test commit in new public repository.  Before this time this repo
1022	existed on a private system.  Commits made by 'bsd' on the old system
1023	were made by Brian Dean (bdean on the current system).
1024
10252003-02-08  Brian S. Dean  <bsd@bsdhome.com>
1026
1027	* Makefile, avr.c, avr.h, avrdude.1, avrpart.h, config.c,
1028	* config.h, config_gram.y, fileio.c, fileio.h, lexer.l, lists.c:
1029	* lists.h, main.c, pgm.c, pgm.h, pindefs.h, ppi.c, ppi.h:
1030	* stk500.c, stk500.h, term.c, term.h:
1031	The last part of that last commit message should read:
1032
1033		All others - modify program description.
1034
1035	* Makefile, avr.c, avr.h, avrdude.1, avrpart.h, config.c:
1036	* config.h, config_gram.y, fileio.c, fileio.h, lexer.l, lists.c:
1037	* lists.h, main.c, pgm.c, pgm.h, pindefs.h, ppi.c, ppi.h:
1038	* stk500.c, stk500.h, term.c, term.h:
1039	Makefile: include a target to automatically generate the dependency
1040	          list.
1041
1042	All others
1043
10442003-02-06  Brian S. Dean  <bsd@bsdhome.com>
1045
1046	* avrdude.1: Update license to GPL, permission by Joerg Wunsch.
1047
1048	* lexer.l: Add GPL.
1049
1050	* Makefile, config_gram.y: Add GPL to the Makefile and config_gram.y.
1051
1052	* Makefile, stk500.h:
1053	Add stk500.h as a dependency for stk500.c.  Remove carraige returns
1054	from stk500.h - don't know how those got in there (pointed out by Ted
1055	Roth).
1056
1057	* COPYING, avr.c, avr.h, avrpart.h, config.c, config.h, fileio.c:
1058	* fileio.h, lists.c, lists.h, main.c, pgm.c, pgm.h, pindefs.h:
1059	* ppi.c, ppi.h, stk500.c, stk500.h, term.c, term.h:
1060	Re-license using the GNU GPL.  Thanks to Ted Roth for the patch.
1061
1062	* avr.c, avr.h, config.c, config.h, config_gram.y, fileio.c:
1063	* fileio.h, lexer.l, lists.c, lists.h, main.c, pgm.c, pgm.h:
1064	* pindefs.h, ppi.c, ppi.h, stk500.c, stk500.h, term.c, term.h:
1065	Get rid of the verbose printing of individual file CVS version ids.
1066	This was intended to be used for identifying code in the field for
1067	incoming bug reports, but I've never really found it all that useful.
1068
1069	* CHANGELOG, Makefile, Makefile.inc, avr.c, avrdude.1:
1070	* avrdude.conf.sample, config_gram.y, lexer.l, main.c, stk500.c:
1071	* term.c:
1072	Change the name from AVRPROG to AVRDUDE.
1073
1074	This change represents a name change only.  There is currently an
1075	effort to port AVRPROG to other platforms including Linux and Windows.
1076	Since Atmel's programmer binary that's included within their AVR
1077	Studio software is named AVRPROG.EXE on the Windows OS, there is the
1078	chance for confusion if we keep calling this program AVRPROG as well.
1079	Up until now the name hasn't really been a problem since there was no
1080	chance to confuse 'avrprog' on Unix with Atmel's AVRPROG because
1081	Atmel's tools only run on Windows.  But with the Unix 'avrprog'
1082	possibly being ported to Windows, I felt a name change was the best
1083	way to avoid problems.
1084
1085	So - from this point forward, my FreeBSD Unix program formerly
1086	known as AVRPROG will subsequently be known as AVRDUDE (AVR
1087	Downloader/UploaDEr).
1088
1089	This change also represents a time when the AVRDUDE sources move from
1090	my own private repository to a public repository.  This will give
1091	other developers a chance to port AVRDUDE to other platforms and
1092	extend its functionality to support additional programming hardware,
1093	etc.
1094
1095	So goodbye AVRPROG, welcome AVRDUDE!
1096