Commit Graph

2868 Commits

Author SHA1 Message Date
Stefan Rueger
cfddd43ef8 Update bin/oct/dec/hex file I/O functions 2023-06-10 12:54:10 +01:00
Stefan Rueger
19de7e8892 Adapt ELF I/O functions to adhere to fileio segments
... but continue to ignore the memory segment the ELF file should
be read into (as before)
2023-06-10 11:11:49 +01:00
Stefan Rueger
274c771ccf Rewrite raw binary I/O functions 2023-06-10 11:05:08 +01:00
Stefan Rueger
e20f09631e Make fileio_setparms() static 2023-06-10 11:02:39 +01:00
Stefan Rueger
361d910d83 Remove Nfgets() in favour of str_fgets() 2023-06-10 11:01:05 +01:00
Stefan Rueger
09d67c514e Rewrite Motorola S-Record I/O functions 2023-06-10 10:53:46 +01:00
Stefan Rueger
2860becc3e Rewrite Intel Hex file I/O functions 2023-06-10 10:49:34 +01:00
Stefan Rueger
3a6d09c633 Remove unnecessary static forward declarations 2023-06-10 10:45:27 +01:00
Stefan Rueger
165c319a1c Provide int fileio_segments() function interface
This function can handle a list of memory segments for file I/O
2023-06-10 10:40:53 +01:00
Stefan Rueger
2b89a3b698 Clarify ihexrec is common to ihex and srec format 2023-06-10 10:34:04 +01:00
Stefan Rueger
dc8268cc34 Provide str_fgets()
Reads a potentially long line and returns it in a malloc'd buffer.
2023-06-10 10:29:02 +01:00
Stefan Rueger
b4a4f7df5b Update NEWS 2023-06-04 22:10:42 +01:00
Stefan Rueger
8c2b326c00 Merge pull request #1378 from stefanrueger/config
Write fuse only when terminal config needs value to change
2023-06-04 22:06:33 +01:00
Stefan Rueger
8947683dbf Merge pull request #1376 from stefanrueger/page_erase
Remove pgm->page_erase() function when unable to erase page
2023-06-04 22:06:21 +01:00
Stefan Rueger
536c84ca2e Merge pull request #1375 from stefanrueger/cache
Prevent terminal write error in r/o region when memory unchanged
2023-06-04 22:06:04 +01:00
Stefan Rueger
19b4029eea Merge pull request #1373 from stefanrueger/terminal
Implement -T cmd to mix terminal commands with -U commands
2023-06-04 22:05:48 +01:00
Stefan Rueger
f3d7c01a1e Write fuse only when terminal config needs value to change 2023-06-03 16:51:26 +01:00
Stefan Rueger
a694217603 Print all -U/-T arguments as headline when processing them 2023-06-02 21:23:25 +01:00
Stefan Rueger
f1e014fc1e Unset pgm->page_erase() if part/programmer cannot erase a page 2023-06-01 22:11:27 +01:00
Stefan Rueger
f4da6de064 Unset pgm->page_erase() if part/programmer cannot erase a page 2023-06-01 22:05:53 +01:00
Stefan Rueger
5f99110d4a Set page_erase() to NULL when a programmer cannot erase page 2023-06-01 21:46:26 +01:00
Stefan Rueger
24f845cdd8 Guard pgm->page_erase() from being called when unset 2023-06-01 21:46:09 +01:00
Stefan Rueger
161eb064ae Move cache flush/reset from -T/U parsing to -U/T execution
What happens is the same, just the code is crisper and clearer.
2023-06-01 21:24:52 +01:00
Stefan Rueger
784c83d23a Prevent terminal write error in r/o region when memory unchanged 2023-06-01 21:18:55 +01:00
Stefan Rueger
b41d14a8c9 Move terminal_...() functions into libavrdude.h 2023-06-01 01:07:43 +01:00
Stefan Rueger
eee5aca79f Provide an example for intermixing -T and -U options 2023-06-01 01:04:54 +01:00
Stefan Rueger
fa9370d570 Insert a paragraph for each -T/-U option in AVRDUDE's output 2023-06-01 01:03:21 +01:00
Stefan Rueger
e0e7bd7ff5 Document -T cmd option 2023-06-01 00:20:33 +01:00
Stefan Rueger
4a7d140b08 Move update_...() printing convenience functions to strutil.c and rename to str_...() 2023-05-31 22:50:27 +01:00
Stefan Rueger
bdbe13e1f6 Make arguments of update.c functions const if possible 2023-05-31 22:40:34 +01:00
Stefan Rueger
1126ff1621 Implement -T cmdline to mix terminal commands with -U commands 2023-05-31 22:23:23 +01:00
Stefan Rueger
98c460268e Provide terminal_line() to process a single terminal command line 2023-05-31 18:16:34 +01:00
Stefan Rueger
3db6863cd3 Move fill mode enum from term.h to term.c 2023-05-31 18:08:43 +01:00
Stefan Rueger
a53b2eef19 Make local functions static 2023-05-31 17:52:30 +01:00
Stefan Rueger
ffaefbf6ec Make AVRMEM * variables const 2023-05-31 17:42:11 +01:00
Stefan Rueger
334315270f Make PROGRAMMER * and AVRPART * arguments const 2023-05-31 17:40:08 +01:00
Stefan Rueger
3ea05c4d33 Update NEWS 2023-05-31 17:03:00 +01:00
Stefan Rueger
dd8aefec85 Merge pull request #1372 from stefanrueger/bitmask
Initialise unused bits of classic-part fuses with factory defaults
2023-05-31 16:51:21 +01:00
Stefan Rueger
6defcb450d Shrink avrdude.conf using memory inheritance for initval and bitmask
Also ensures initval and bitmask remains unset for
 - AT43USB320, AT43USB355
 - AT76C711
 - AT86RF401
 - AT89S51, AT89S52
 - AT90C8534
 - AT94K
 - ATtiny3214
 - ATxmega128A4, ATxmega192A1, ATxmega256A1, ATxmega64A4
 - AVR8EA28, AVR8EA32
 - LGT8F168P, LGT8F328P, LGT8F88P
 - M3000
2023-05-31 16:38:24 +01:00
Stefan Rueger
5ae2f3ff05 Perform wildcard match for avrdude.conf parameter injection 2023-05-31 16:36:30 +01:00
Stefan Rueger
26239ead25 Initialise unused bits when writing XMEGA fuses/lock bits 2023-05-31 10:56:25 +01:00
Stefan Rueger
7fadbbdd63 Initialise unused bits of classic part fuses/lock bits with factory defaults 2023-05-29 16:51:54 +01:00
Stefan Rueger
9441af8b90 Test for verbose > 0 instead of !!verbose 2023-05-29 16:41:14 +01:00
Stefan Rueger
19d1e03bec Read-modify-write classic part fuses/lock bits with unused bits in dryrun.c 2023-05-29 16:32:19 +01:00
Stefan Rueger
30ac1826bc Use bitmasks for terminal write verification 2023-05-29 14:33:00 +01:00
Stefan Rueger
f311a04d47 Extend -U verification with bitmasks to TPI, PDI and UPDI parts 2023-05-29 14:32:39 +01:00
Stefan Rueger
918e71de90 Make bitmask 0xff default (shortening avrdude.conf) 2023-05-29 14:24:04 +01:00
Stefan Rueger
ff5a178ca2 Document default value of bitmask 2023-05-29 14:00:06 +01:00
Stefan Rueger
8f1eb4aef6 Update avr.c to use str_eq() and str_starts() functions 2023-05-29 13:48:07 +01:00
Stefan Rueger
bbe2f51f58 Fix ATmega161's sut, spien and bootrst bit masks 2023-05-28 18:12:49 +01:00