Commit Graph

1134 Commits

Author SHA1 Message Date
Stefan Rueger
bea3d099f8 Add terminal save documentation 2023-06-12 18:21:13 +01:00
Stefan Rueger
48f1fc75e9 Provide terminal save command
Examples with filename - (stdout):

$ avrdude -qqt -p m328p
avrdude> save eeprom -:i
:2000000054686973206973206120746573740048656C6C6F2C20776F726C64210A0054689C
:200020006520717569636B2062726F776E20666F78206A756D7073206F76657220746865DD
:20004000206C617A7920646F6700FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C
:20006000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7FEE7FEE7FEE7FEE7FE1D
:20008000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80
:2000A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60
:2000C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40
:2000E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20
:20010000280992D30B0000F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62
:20012000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF
:20014000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF
:20016000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F
:20018000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F
:2001A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F
:2001C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F
:2001E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F
:20020000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
:20022000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE
:20024000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE
:20026000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E
:20028000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E
:2002A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E
:2002C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E
:2002E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E
:20030000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD
:20032000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD
:20034000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD
:20036000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D
:20038000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D
:2003A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D
:2003C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D
:2003E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D
:00000001FF
avrdude> save eeprom 15 5 22 5 -:I
:05000F0048656C6C6FF8                                       // 0000f> Hello
:020000040000FA
:05001600776F726C64BD                                       // 00016> world
:00000001FF
avrdude> save eeprom 15 5 22 5 -:h
0x48,0x65,0x6c,0x6c,0x6f
0x77,0x6f,0x72,0x6c,0x64
2023-06-11 18:15:36 +01:00
Stefan Rueger
20bd7f37bc Suppress comma at begin of memory segment, not begin of memory 2023-06-11 15:54:53 +01:00
Stefan Rueger
99a25fcd16 Rename function segment_normalise() 2023-06-11 14:28:12 +01:00
Stefan Rueger
6126dd3d6a Merge pull request #1395 from stefanrueger/dryrun
Add more info for the dryrun programmer
2023-06-11 11:54:39 +01:00
Stefan Rueger
f966d0cc68 Merge pull request #1394 from stefanrueger/arduino
Add more info for the arduino programmer
2023-06-11 11:54:28 +01:00
Stefan Rueger
c78b0ac4c5 Merge pull request #1393 from stefanrueger/urclock
Add more documentation for urclock programmer
2023-06-11 11:54:18 +01:00
Stefan Rueger
45217c7c47 Merge pull request #1392 from stefanrueger/save
Rewrite fileio functions to cater for a list of memory segments
2023-06-11 11:52:49 +01:00
Stefan Rueger
16dd3ac998 Change AVRMEM * to const AVRMEM * where appropriate 2023-06-11 11:43:44 +01:00
Stefan Rueger
4ab9bda302 Change Segment_t * to const Segment_t * where appropriate 2023-06-11 11:40:13 +01:00
Stefan Rueger
4ee10ea8a7 Add more info for the dryrun programmer 2023-06-10 19:06:41 +01:00
Stefan Rueger
d57dfbcdbc Merge pull request #1385 from stefanrueger/dryrun
Provide debug messages for the dryrun programmer
2023-06-10 17:44:52 +01:00
Stefan Rueger
bdc1135c95 Add more info for the arduino programmer 2023-06-10 16:53:07 +01:00
Stefan Rueger
ef86212030 Add avrdude.conf urclock comment that it resets the board 2023-06-10 16:46:21 +01:00
Stefan Rueger
0de04abcf5 Add more info for urclock programmer 2023-06-10 16:25:30 +01:00
Stefan Rueger
100ad9004f Add example for -p .../s and -c .../s in main's help text 2023-06-10 16:24:22 +01:00
Stefan Rueger
dbbed4d115 Update immediate file input function 2023-06-10 13:37:59 +01:00
Stefan Rueger
6215aa3c8b Add credentials for partial rewrite 2023-06-10 13:12:53 +01:00
Stefan Rueger
99ac48f106 Add R-base numbers 2023-06-10 13:10:15 +01:00
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
9267f9435d Provide programmer arduino_as_isp 2023-06-06 14:53:01 +01:00
Stefan Rueger
0044688f73 Add dryrun_..._led() functions to dryrun programmer 2023-06-06 13:42:21 +01:00
Stefan Rueger
eb312ce2e6 Add debug messages for some dryrun_...() return values 2023-06-06 13:29:01 +01:00
Stefan Rueger
9e53968afd Show -c programmer name for dryrun_display() 2023-06-06 12:40:34 +01:00
Stefan Rueger
e17b667523 Add debug messages for dryrun programmer 2023-06-06 10:28:05 +01:00
Stefan Rueger
ca6cf7f8c5 Use str_eq() instead of strcmp() == 0 2023-06-05 15:19:32 +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
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