Commit Graph

3009 Commits

Author SHA1 Message Date
Stefan Rueger
af6dc59582 Fix -n warning for first interactive terminal 2023-07-11 23:14:44 +01:00
Stefan Rueger
f722b572f8 Update NEWS 2023-07-01 15:48:25 +01:00
Stefan Rueger
e8a22cde56 Merge pull request #1454 from stefanrueger/unary-minus
Suppress overzealous compiler warnings
2023-07-01 15:46:44 +01:00
Stefan Rueger
2b83310095 Suppress overzealous compiler warnings
Some compilers are overzealous when the unary minus operates on an
unsigned number, and issue a warning. In fact, -u is a perfectly valid
unsigned for any unsigned u, and always has been from K&R C to C++20.
-u is the same as ~u + 1. Unsigned numbers form a modulo group, where -u
is the unique unsigned number that when added to u results in 0.

It is true that neither u nor -u can be negative (because no unsigned
number is) but that should not get a compiler to issue a warning about
the completely legitimate use of -u.
2023-07-01 14:53:56 +01:00
Stefan Rueger
11e8376dfe Update NEWS 2023-06-28 17:24:19 +01:00
Stefan Rueger
65024b5efa Add Stefan Rueger to copyright info 2023-06-28 17:23:22 +01:00
Stefan Rueger
82f949dcaa Remove comma in copyright note 2023-06-28 17:22:59 +01:00
Stefan Rueger
013e9cc8db Merge pull request #1425 from MCUdude/jtag2updi-rts-dtr
Add jtag2updi -xrtsdtr extended parameter
2023-06-28 17:09:29 +01:00
Stefan Rueger
ef67811f4c Merge pull request #1450 from stefanrueger/bsdhome
Update info on bsd programmer
2023-06-28 17:08:42 +01:00
Stefan Rueger
9fbc3d7a61 Update Brian Dean's email address 2023-06-27 21:31:07 +01:00
Stefan Rueger
bff4eed585 Provide a copy of the schematic for the very first AVRDUDE programmer 2023-06-27 21:27:11 +01:00
Stefan Rueger
ee64c0c280 Fix typo 2023-06-27 21:14:36 +01:00
Stefan Rueger
20d6f7d2b7 Update the bsd programmer info 2023-06-27 15:10:38 +01:00
MCUdude
c89e9b39ef Merge branch 'main' into jtag2updi-rts-dtr 2023-06-26 22:21:00 +02:00
Stefan Rueger
77c1bfbf02 Update documentation 2023-06-26 00:51:41 +01:00
Stefan Rueger
0727658616 Update NEWS 2023-06-25 17:01:06 +01:00
Stefan Rueger
d84d1611ad Merge pull request #1439 from stefanrueger/include
Provide terminal include command
2023-06-25 16:57:48 +01:00
Stefan Rueger
d94229a549 Merge pull request #1438 from stefanrueger/empty-flash
Write empty flash memory to file in correct format
2023-06-25 16:57:30 +01:00
Stefan Rueger
27ebb12800 Merge pull request #1430 from stefanrueger/alias-pgms
Use pgm->id list for different names of the same AVR programmer
2023-06-25 16:56:42 +01:00
Stefan Rueger
c12e3f0e0e Merge pull request #1429 from stefanrueger/scratchmonkey
Add scratchmonkey programmers
2023-06-25 16:56:29 +01:00
Stefan Rueger
ed355d591c Add S5 record count even when it is zero 2023-06-25 13:58:37 +01:00
Stefan Rueger
e2a45df092 Provide terminal include command
Example
-------

Initialise a config file for ATmega328P with factory settings and edit it:
  $ avrdude -qqTconfig -c dryrun -p m328p >config-m328p.txt
  $ vi config-m328p.txt

The new include command allows this file to be applied before opening a terminal:
  $ avrdude -qq -T"include config-m328p.txt" -t -c dryrun -p m328p
  avrdude> quit

The include option -e prints the lines as comments before processing them:
  $ avrdude -qq -T"include -e config-m328p.txt" -c dryrun -p m328p
  # config sut_cksel=intrcosc_8mhz_6ck_14ck_65ms # 34
  # config ckout=co_disabled # 1
  # config ckdiv8=by_8 # 0
  # config bootrst=application # 1
  # config bootsz=bs_2048w # 0
  # config eesave=ee_erased # 1
  # config wdton=wdt_programmable # 1
  # config spien=isp_enabled # 0
  # config dwen=dw_off # 1
  # config rstdisbl=external_reset # 1
  # config bodlevel=bod_disabled # 7
  # config lb=no_lock # 3
  # config blb0=no_lock_in_app # 3
  # config blb1=no_lock_in_boot # 3

On non-zero verbosity level the include option -e also prints line numbers:
  $ avrdude -vqqq -T"include -e config-m328p.txt" -c dryrun -p m328p
  # 1: config sut_cksel=intrcosc_8mhz_6ck_14ck_65ms # 34
  # 2: config ckout=co_disabled # 1
  # 3: config ckdiv8=by_8 # 0
  # 4: config bootrst=application # 1
  # 5: config bootsz=bs_2048w # 0
  # 6: config eesave=ee_erased # 1
  # 7: config wdton=wdt_programmable # 1
  # 8: config spien=isp_enabled # 0
  # 9: config dwen=dw_off # 1
  # 10: config rstdisbl=external_reset # 1
  # 11: config bodlevel=bod_disabled # 7
  # 12: config lb=no_lock # 3
  # 13: config blb0=no_lock_in_app # 3
  # 14: config blb1=no_lock_in_boot # 3
2023-06-24 14:38:04 +01:00
Stefan Rueger
1816e637d0 Fix out of range warning 2023-06-24 13:57:08 +01:00
Stefan Rueger
e42063488c Write empty flash memory to file in correct format
-U flash:r:<file>:<fmt> produces an empty file if flash memory is empty
unless `-A` has switched off the trailing 0xff removal. However,
an empty file is not a correct Intel Hex file as it misses the EOF marker:

$ avrdude -qq -c dryrun -p m328p -U flash:r:empty-flash.hex:i
$ avrdude -qq -c dryrun -p m328p -U flash:w:empty-flash.hex:i
avrdude error: no valid record found in Intel Hex file empty-flash.hex
avrdude error: read from file empty-flash.hex failed
srueger@medlar avrdude-main 2005$ (main 5U) ls -l empty-flash.hex
-rw------- 1 srueger srueger 0 Jun 24 12:58 empty-flash.hex

This commit creates empty files with the correct format
 - Intel Hex (EOF record)
 - Motorola S-Record (Start record, EOF record)
 - Number lists (one empty line, ie, one character '\n')
 - Raw binary (empty file, ie, zero characters)
2023-06-24 12:48:46 +01:00
Stefan Rueger
67a417b7dc Fix typos in comments for usbasp definition 2023-06-24 11:50:10 +01:00
Stefan Rueger
2d59b1c913 Use pgm->id list for different names of the same AVR programmer 2023-06-23 16:40:52 +01:00
Stefan Rueger
7ecce8588d Add scratchmonkey programmers 2023-06-23 16:18:55 +01:00
Stefan Rueger
114d48c3da Update NEWS 2023-06-23 16:04:33 +01:00
Stefan Rueger
5a8aff0918 Merge pull request #1424 from stefanrueger/pgmid
Enable -c programmers to access -c string
2023-06-23 15:56:39 +01:00
Stefan Rueger
412a828182 Merge pull request #1423 from stefanrueger/arduino-ft232r
Remove comment and URL for arduino-ft232r programmer
2023-06-23 15:56:14 +01:00
Stefan Rueger
226f6dba7a Merge pull request #1422 from stefanrueger/usbasp
Update usbasp programmer info
2023-06-23 15:55:41 +01:00
Stefan Rueger
85099ab294 Merge pull request #1421 from stefanrueger/ttl232r
Update URLs for the ttl232r programmer
2023-06-23 15:55:18 +01:00
Stefan Rueger
a7ee086f0a Merge pull request #1420 from stefanrueger/o-link
Remove outdated web URLs for O-Link
2023-06-23 15:54:49 +01:00
Stefan Rueger
00b01bc34a Merge pull request #1419 from stefanrueger/microcopter
Update butterfly_mk info
2023-06-23 15:54:20 +01:00
Stefan Rueger
e36b3ffeda Merge pull request #1418 from stefanrueger/ft2232h
Update ft2232h programmer info and URLs
2023-06-23 15:53:54 +01:00
Stefan Rueger
eee5b1f738 Merge pull request #1417 from stefanrueger/89isp
Update URLs for 89isp programmer
2023-06-23 15:53:25 +01:00
Stefan Rueger
e8aa262323 Merge pull request #1416 from stefanrueger/nightshade
Update alf programmer info and URL
2023-06-23 15:52:57 +01:00
Stefan Rueger
46d30b8fd0 Merge pull request #1415 from stefanrueger/pwroff_after_write
Update reference to AT90S4433 datasheet
2023-06-23 15:52:26 +01:00
Stefan Rueger
79bf63f20b Merge pull request #1411 from stefanrueger/bootloader-ce
Increase timeout for emulated butterfly chip erase
2023-06-23 15:51:56 +01:00
Stefan Rueger
e3f8260c8d Merge pull request #1406 from stefanrueger/usersig-m256rfr2
Define usersig memory for ATmega*RF[AR]* parts
2023-06-23 15:50:13 +01:00
Stefan Rueger
d7392ab3c7 Overwrite previous programmer definition for any aliased id too 2023-06-23 14:58:42 +01:00
Stefan Rueger
a6ff5dde83 Match -c<pgmid>/i -p<part>/i patterns independent of case 2023-06-23 10:30:28 +01:00
Stefan Rueger
0592704798 Overwrite user's -c pgmid with matched id from programmer
Programmers are matched irrespective of case; hence, we are replacing the
user's command line string with the canonical version from avrdude.conf.
2023-06-23 09:44:51 +01:00
MCUdude
1350a22332 Fix typo 2023-06-22 17:40:27 +02:00
MCUdude
ba60323352 Use pmsg_info for RTS/DTR handshake info 2023-06-22 17:39:30 +02:00
Stefan Rueger
090b998160 Update ft2232h info 2023-06-22 08:34:55 +01:00
Stefan Rueger
43d1590ff5 Update arduino-ft232r description 2023-06-22 08:18:38 +01:00
Stefan Rueger
662c6f09a3 Update usbasp description 2023-06-22 08:06:23 +01:00
Stefan Rueger
8907750a3f Update avrdude.conf.in 2023-06-21 23:48:19 +01:00
MCUdude
164ea88b40 Fix typo 2023-06-21 23:25:59 +02:00