1 # $Id: avrdude.conf.in,v 1.58 2005/09/18 00:44:20 bdean Exp $
3 # AVRDUDE Configuration File
5 # This file contains configuration data used by AVRDUDE which describes
6 # the programming hardware pinouts and also provides part definitions.
7 # AVRDUDE's "-C" command line option specifies the location of the
8 # configuration file. The "-c" option names the programmer configuration
9 # which must match one of the entry's "id" parameter. The "-p" option
10 # identifies which part AVRDUDE is going to be programming and must match
11 # one of the parts' "id" parameter.
13 # Possible entry formats are:
16 # id = <id1> [, <id2> [, <id3>] ...] ; # <idN> are quoted strings
17 # desc = <description> ; # quoted string
18 # type = par | stk500 | stk500v2 | avr910 | jtagmkii; # programmer type
19 # baudrate = <num> ; # baudrate for avr910-programmer
20 # vcc = <num1> [, <num2> ... ] ; # pin number(s)
21 # reset = <num> ; # pin number
22 # sck = <num> ; # pin number
23 # mosi = <num> ; # pin number
24 # miso = <num> ; # pin number
25 # errled = <num> ; # pin number
26 # rdyled = <num> ; # pin number
27 # pgmled = <num> ; # pin number
28 # vfyled = <num> ; # pin number
32 # id = <id> ; # quoted string
33 # desc = <description> ; # quoted string
34 # has_jtag = <yes/no> ; # part has JTAG i/f
35 # devicecode = <num> ; # deprecated, use stk500_devcode
36 # stk500_devcode = <num> ; # numeric
37 # avr910_devcode = <num> ; # numeric
38 # chip_erase_delay = <num> ; # micro-seconds
39 # reset = dedicated | io;
40 # retry_pulse = reset | sck;
41 # pgm_enable = <instruction format> ;
42 # chip_erase = <instruction format> ;
43 # chip_erase_delay = <num> ; # chip erase delay (us)
44 # # STK500 parameters (parallel programming IO lines)
45 # pagel = <num> ; # pin name in hex, i.e., 0xD7
46 # bs2 = <num> ; # pin name in hex, i.e., 0xA0
47 # serial = <yes/no> ; # can use serial downloading
48 # parallel = <yes/no/pseudo>; # can use par. programming
49 # # STK500v2 parameters, to be taken from Atmel's XML files
52 # cmdexdelay = <num> ;
53 # synchloops = <num> ;
59 # pollmethod = <num> ;
64 # # JTAG ICE mkII parameters, also from XML files
65 # allowfullpagebitstream = <yes/no> ;
66 # enablepageprogramming = <yes/no> ;
67 # idr = <num> ; # IO addr of IDR (OCD) reg.
68 # rampz = <num> ; # IO addr of RAMPZ reg.
69 # spmcr = <num> ; # mem addr of SPMC[S]R reg.
70 # eecr = <num> ; # mem addr of EECR reg.
71 # # (only when != 0x3c)
74 # paged = <yes/no> ; # yes / no
75 # size = <num> ; # bytes
76 # page_size = <num> ; # bytes
77 # num_pages = <num> ; # numeric
78 # min_write_delay = <num> ; # micro-seconds
79 # max_write_delay = <num> ; # micro-seconds
80 # readback_p1 = <num> ; # byte value
81 # readback_p2 = <num> ; # byte value
82 # pwroff_after_write = <yes/no> ; # yes / no
83 # read = <instruction format> ;
84 # write = <instruction format> ;
85 # read_lo = <instruction format> ;
86 # read_hi = <instruction format> ;
87 # write_lo = <instruction format> ;
88 # write_hi = <instruction format> ;
89 # loadpage_lo = <instruction format> ;
90 # loadpage_hi = <instruction format> ;
91 # writepage = <instruction format> ;
95 # If any of the above parameters are not specified, the default value
96 # of 0 is used for numerics or the empty string ("") for string
97 # values. If a required parameter is left empty, AVRDUDE will
101 # * 'devicecode' is the device code used by the STK500 (see codes
103 # * Not all memory types will implement all instructions.
104 # * AVR Fuse bits and Lock bits are implemented as a type of memory.
105 # * Example memory types are:
106 # "flash", "eeprom", "fuse", "lfuse" (low fuse), "hfuse" (high
107 # fuse), "signature", "calibration", "lock"
108 # * The memory type specified on the avrdude command line must match
109 # one of the memory types defined for the specified chip.
110 # * The pwroff_after_write flag causes avrdude to attempt to
111 # power the device off and back on after an unsuccessful write to
112 # the affected memory area if VCC programmer pins are defined. If
113 # VCC pins are not defined for the programmer, a message
114 # indicating that the device needs a power-cycle is printed out.
115 # This flag was added to work around a problem with the
116 # at90s4433/2333's; see the at90s4433 errata at:
118 # http://www.atmel.com/atmel/acrobat/doc1280.pdf
120 # INSTRUCTION FORMATS
122 # Instruction formats are specified as a comma seperated list of
123 # string values containing information (bit specifiers) about each
124 # of the 32 bits of the instruction. Bit specifiers may be one of
125 # the following formats:
127 # '1' = the bit is always set on input as well as output
129 # '0' = the bit is always clear on input as well as output
131 # 'x' = the bit is ignored on input and output
133 # 'a' = the bit is an address bit, the bit-number matches this bit
134 # specifier's position within the current instruction byte
136 # 'aN' = the bit is the Nth address bit, bit-number = N, i.e., a12
137 # is address bit 12 on input, a0 is address bit 0.
139 # 'i' = the bit is an input data bit
141 # 'o' = the bit is an output data bit
143 # Each instruction must be composed of 32 bit specifiers. The
144 # instruction specification closely follows the instruction data
145 # provided in Atmel's data sheets for their parts.
147 # See below for some examples.
150 # The following are STK500 part device codes to use for the
151 # "devicecode" field of the part. These came from Atmel's software
152 # section avr061.zip which accompanies the application note
153 # AVR061 available from:
155 # http://www.atmel.com/atmel/acrobat/doc2525.pdf
158 #define ATTINY10 0x10
159 #define ATTINY11 0x11
160 #define ATTINY12 0x12
161 #define ATTINY15 0x13
162 #define ATTINY13 0x14
164 #define ATTINY22 0x20
165 #define ATTINY26 0x21
166 #define ATTINY28 0x22
167 #define ATTINY2313 0x23
169 #define AT90S1200 0x33
171 #define AT90S2313 0x40
172 #define AT90S2323 0x41
173 #define AT90S2333 0x42
174 #define AT90S2343 0x43
176 #define AT90S4414 0x50
177 #define AT90S4433 0x51
178 #define AT90S4434 0x52
179 #define ATMEGA48 0x59
181 #define AT90S8515 0x60
182 #define AT90S8535 0x61
183 #define AT90C8534 0x62
184 #define ATMEGA8515 0x63
185 #define ATMEGA8535 0x64
188 #define ATMEGA88 0x73
190 #define ATMEGA161 0x80
191 #define ATMEGA163 0x81
192 #define ATMEGA16 0x82
193 #define ATMEGA162 0x83
194 #define ATMEGA169 0x84
196 #define ATMEGA323 0x90
197 #define ATMEGA32 0x91
199 #define ATMEGA64 0xA0
201 #define ATMEGA103 0xB1
202 #define ATMEGA128 0xB2
203 #define AT90CAN128 0xB3
205 #define AT86RF401 0xD0
207 #define AT89START 0xE0
213 # Overall avrdude defaults
215 default_parallel = "lpt1";
216 default_serial = "com1";
220 # PROGRAMMER DEFINITIONS
225 desc = "Brian Dean's Programmer, http://www.bsdhome.com/avrdude/";
236 desc = "Atmel AVR ISP";
242 desc = "Atmel AVR ISP V2";
248 desc = "Atmel STK500";
254 desc = "Atmel STK500 V2";
260 desc = "Atmel Low Cost Serial Programmer";
272 desc = "Atmel Butterfly Development Board";
278 desc = "Atmel AppNote AVR109 Boot Loader";
284 desc = "Atmel AppNote AVR911 AVROSP";
290 desc = "Atmel JTAG ICE mkII";
291 baudrate = 19200; # default is 19200
298 desc = "Atmel JTAG ICE mkII";
299 baudrate = 19200; # default is 19200
303 # JTAG ICE mkII @ 115200 Bd
306 desc = "Atmel JTAG ICE mkII";
311 # make the fast one the default, people will love that
314 desc = "Atmel JTAG ICE mkII";
321 desc = "Jason Kyle's pAVR Serial Programmer";
336 # The programming dongle used by the popular Ponyprog
337 # utility. It is almost similar to the STK200 one,
338 # except that there is a LED indicating that the
339 # programming is currently in progress.
343 desc = "Pony Prog STK200";
355 desc = "Dontronics DT006";
365 desc = "Bascom SAMPLE programming cable";
375 desc = "Nightshade ALF-PgmAVR, http://nightshade.homeip.net/";
391 desc = "Steve Bolt's Programmer";
402 desc = "Picoweb Programming Cable, http://www.picoweb.net/";
412 desc = "ABCmini Board, aka Dick Smith HOTCHIP";
422 desc = "Futurlec.com programming cable.";
431 # From the contributor of the "xil" jtag cable:
432 # The "vcc" definition isn't really vcc (the cable gets its power from
433 # the programming circuit) but is necessary to switch one of the
434 # buffer lines (trying to add it to the "buff" lines doesn't work).
435 # With this, TMS connects to RESET, TDI to MOSI, TDO to MISO and TCK
436 # to SCK (plus vcc/gnd of course)
439 desc = "Xilinx JTAG cable";
452 desc = "Direct AVR Parallel Access cable";
463 # some ultra cheap programmers use bitbanging on the
467 # serial ponyprog design (dasa2 in uisp)
468 # reset=!txd sck=rts mosi=dtr miso=cts
472 desc = "serial port banging, design ponyprog serial";
480 # unknown (dasa in uisp)
481 # reset=rts sck=dtr mosi=txd miso=cts
485 desc = "serial port banging, reset=rts sck=dtr mosi=txd miso=cts";
493 # unknown (dasa3 in uisp)
494 # reset=!dtr sck=rts mosi=txd miso=cts
498 desc = "serial port banging, reset=!dtr sck=rts mosi=txd miso=cts";
510 #------------------------------------------------------------
512 #------------------------------------------------------------
517 stk500_devcode = 0x12;
518 avr910_devcode = 0x55;
519 chip_erase_delay = 20000;
520 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
521 "x x x x x x x x x x x x x x x x";
523 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
524 "x x x x x x x x x x x x x x x x";
539 min_write_delay = 9000;
540 max_write_delay = 20000;
543 read = "1 0 1 0 0 0 0 0 x x x x x x x x",
544 "x x a5 a4 a3 a2 a1 a0 o o o o o o o o";
546 write = "1 1 0 0 0 0 0 0 x x x x x x x x",
547 "x x a5 a4 a3 a2 a1 a0 i i i i i i i i";
557 min_write_delay = 4500;
558 max_write_delay = 20000;
561 read_lo = " 0 0 1 0 0 0 0 0",
563 " a7 a6 a5 a4 a3 a2 a1 a0",
566 read_hi = " 0 0 1 0 1 0 0 0",
568 " a7 a6 a5 a4 a3 a2 a1 a0",
571 write_lo = " 0 1 0 0 0 0 0 0",
573 " a7 a6 a5 a4 a3 a2 a1 a0",
576 write_hi = " 0 1 0 0 1 0 0 0",
578 " a7 a6 a5 a4 a3 a2 a1 a0",
589 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
590 "0 0 0 0 0 0 a1 a0 o o o o o o o o";
595 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
596 "x x x x x x x x x x x x x o o x";
598 write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1",
599 "x x x x x x x x x x x x x x x x";
604 read = "0 0 1 1 1 0 0 0 x x x x x x x x",
605 "0 0 0 0 0 0 0 0 o o o o o o o o";
610 read = "0 1 0 1 0 0 0 0 x x x x x x x x",
611 "x x x x x x x x o o o o o o o o";
613 write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x",
614 "x x x x x x x x i i i i i i i i";
618 #------------------------------------------------------------
620 #------------------------------------------------------------
625 stk500_devcode = 0x14;
626 chip_erase_delay = 4000;
627 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
628 "x x x x x x x x x x x x x x x x";
630 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
631 "x x x x x x x x x x x x x x x x";
646 min_write_delay = 4000;
647 max_write_delay = 4000;
650 read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x",
651 "x x a5 a4 a3 a2 a1 a0 o o o o o o o o";
653 write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x",
654 "x x a5 a4 a3 a2 a1 a0 i i i i i i i i";
667 min_write_delay = 4500;
668 max_write_delay = 4500;
671 read_lo = " 0 0 1 0 0 0 0 0",
673 " a7 a6 a5 a4 a3 a2 a1 a0",
676 read_hi = " 0 0 1 0 1 0 0 0",
678 " a7 a6 a5 a4 a3 a2 a1 a0",
681 loadpage_lo = " 0 1 0 0 0 0 0 0",
683 " x x x x a3 a2 a1 a0",
686 loadpage_hi = " 0 1 0 0 1 0 0 0",
688 " x x x x a3 a2 a1 a0",
691 writepage = " 0 1 0 0 1 1 0 0",
693 " a7 a6 a5 a4 x x x x",
704 read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x",
705 "x x x x x x a1 a0 o o o o o o o o";
710 min_write_delay = 4500;
711 max_write_delay = 4500;
713 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
714 "x x x x x x x x x x o o o o o o";
716 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
717 "x x x x x x x x 1 1 i i i i i i";
722 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
723 "0 0 0 0 0 0 0 0 o o o o o o o o";
728 min_write_delay = 4500;
729 max_write_delay = 4500;
731 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
732 "x x x x x x x x i i i i i i i i";
734 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
735 "x x x x x x x x o o o o o o o o";
740 min_write_delay = 4500;
741 max_write_delay = 4500;
743 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
744 "x x x x x x x x i i i i i i i i";
746 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
747 "x x x x x x x x o o o o o o o o";
753 #------------------------------------------------------------
755 #------------------------------------------------------------
760 stk500_devcode = 0x13;
761 avr910_devcode = 0x56;
762 chip_erase_delay = 8200;
763 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
764 "x x x x x x x x x x x x x x x x";
766 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
767 "x x x x x x x x x x x x x x x x";
782 min_write_delay = 8200;
783 max_write_delay = 8200;
786 read = "1 0 1 0 0 0 0 0 x x x x x x x x",
787 "x x a5 a4 a3 a2 a1 a0 o o o o o o o o";
789 write = "1 1 0 0 0 0 0 0 x x x x x x x x",
790 "x x a5 a4 a3 a2 a1 a0 i i i i i i i i";
800 min_write_delay = 4100;
801 max_write_delay = 4100;
804 read_lo = " 0 0 1 0 0 0 0 0",
806 " a7 a6 a5 a4 a3 a2 a1 a0",
809 read_hi = " 0 0 1 0 1 0 0 0",
811 " a7 a6 a5 a4 a3 a2 a1 a0",
814 write_lo = " 0 1 0 0 0 0 0 0",
816 " a7 a6 a5 a4 a3 a2 a1 a0",
819 write_hi = " 0 1 0 0 1 0 0 0",
821 " a7 a6 a5 a4 a3 a2 a1 a0",
832 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
833 "0 0 0 0 0 0 a1 a0 o o o o o o o o";
838 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
839 "x x x x x x x x x x x x x o o x";
841 write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1",
842 "x x x x x x x x x x x x x x x x";
847 read = "0 0 1 1 1 0 0 0 x x x x x x x x",
848 "0 0 0 0 0 0 0 0 o o o o o o o o";
853 read = "0 1 0 1 0 0 0 0 x x x x x x x x",
854 "x x x x x x x x o o o o x x o o";
856 write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x",
857 "x x x x x x x x i i i i 1 1 i i";
861 #------------------------------------------------------------
863 #------------------------------------------------------------
868 stk500_devcode = 0x33;
869 avr910_devcode = 0x13;
872 chip_erase_delay = 20000;
873 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
874 "x x x x x x x x x x x x x x x x";
876 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
877 "x x x x x x x x x x x x x x x x";
892 min_write_delay = 4000;
893 max_write_delay = 9000;
896 read = "1 0 1 0 0 0 0 0 x x x x x x x x",
897 "x x a5 a4 a3 a2 a1 a0 o o o o o o o o";
899 write = "1 1 0 0 0 0 0 0 x x x x x x x x",
900 "x x a5 a4 a3 a2 a1 a0 i i i i i i i i";
909 min_write_delay = 4000;
910 max_write_delay = 9000;
913 read_lo = " 0 0 1 0 0 0 0 0",
915 " a7 a6 a5 a4 a3 a2 a1 a0",
918 read_hi = " 0 0 1 0 1 0 0 0",
920 " a7 a6 a5 a4 a3 a2 a1 a0",
923 write_lo = " 0 1 0 0 0 0 0 0",
925 " a7 a6 a5 a4 a3 a2 a1 a0",
928 write_hi = " 0 1 0 0 1 0 0 0",
930 " a7 a6 a5 a4 a3 a2 a1 a0",
940 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
941 "x x x x x x a1 a0 o o o o o o o o";
945 min_write_delay = 9000;
946 max_write_delay = 20000;
947 read = "0 1 0 1 0 0 0 0 x x x x x x x x",
948 "x x x x x x x x x x o o o o o o";
950 write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i",
951 "x x x x x x x x x x x x x x x x";
955 min_write_delay = 9000;
956 max_write_delay = 20000;
957 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
958 "x x x x x x x x x x x x x o o x";
960 write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1",
961 "x x x x x x x x x x x x x x x x";
965 #------------------------------------------------------------
967 #------------------------------------------------------------
972 stk500_devcode = 0x50;
973 avr910_devcode = 0x28;
974 chip_erase_delay = 20000;
975 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
976 "x x x x x x x x x x x x x x x x";
978 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
979 "x x x x x x x x x x x x x x x x";
994 min_write_delay = 9000;
995 max_write_delay = 20000;
998 read = " 1 0 1 0 0 0 0 0 x x x x x x x a8",
999 "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
1001 write = " 1 1 0 0 0 0 0 0 x x x x x x x a8",
1002 "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
1011 min_write_delay = 9000;
1012 max_write_delay = 20000;
1015 read_lo = " 0 0 1 0 0 0 0 0",
1016 " x x x x a11 a10 a9 a8",
1017 " a7 a6 a5 a4 a3 a2 a1 a0",
1020 read_hi = " 0 0 1 0 1 0 0 0",
1021 " x x x x a11 a10 a9 a8",
1022 " a7 a6 a5 a4 a3 a2 a1 a0",
1025 write_lo = " 0 1 0 0 0 0 0 0",
1026 " x x x x a11 a10 a9 a8",
1027 " a7 a6 a5 a4 a3 a2 a1 a0",
1030 write_hi = " 0 1 0 0 1 0 0 0",
1031 " x x x x a11 a10 a9 a8",
1032 " a7 a6 a5 a4 a3 a2 a1 a0",
1042 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
1043 "x x x x x x a1 a0 o o o o o o o o";
1047 #------------------------------------------------------------
1049 #------------------------------------------------------------
1054 stk500_devcode = 0x40;
1055 avr910_devcode = 0x20;
1056 chip_erase_delay = 20000;
1057 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
1058 "x x x x x x x x x x x x x x x x";
1060 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
1061 "x x x x x x x x x x x x x x x x";
1076 min_write_delay = 4000;
1077 max_write_delay = 9000;
1080 read = "1 0 1 0 0 0 0 0 x x x x x x x x",
1081 "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
1083 write = "1 1 0 0 0 0 0 0 x x x x x x x x",
1084 "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
1093 min_write_delay = 4000;
1094 max_write_delay = 9000;
1097 read_lo = " 0 0 1 0 0 0 0 0",
1098 " x x x x x x a9 a8",
1099 " a7 a6 a5 a4 a3 a2 a1 a0",
1102 read_hi = " 0 0 1 0 1 0 0 0",
1103 " x x x x x x a9 a8",
1104 " a7 a6 a5 a4 a3 a2 a1 a0",
1107 write_lo = " 0 1 0 0 0 0 0 0",
1108 " x x x x x x a9 a8",
1109 " a7 a6 a5 a4 a3 a2 a1 a0",
1112 write_hi = " 0 1 0 0 1 0 0 0",
1113 " x x x x x x a9 a8",
1114 " a7 a6 a5 a4 a3 a2 a1 a0",
1124 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
1125 "x x x x x x a1 a0 o o o o o o o o";
1129 write = "1 0 1 0 1 1 0 0 1 1 1 x x i i x",
1130 "x x x x x x x x x x x x x x x x";
1134 #------------------------------------------------------------
1136 #------------------------------------------------------------
1140 ##### WARNING: No XML file for device 'AT90S2333'! #####
1142 stk500_devcode = 0x42;
1143 avr910_devcode = 0x34;
1144 chip_erase_delay = 20000;
1145 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
1146 "x x x x x x x x x x x x x x x x";
1148 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
1149 "x x x x x x x x x x x x x x x x";
1153 min_write_delay = 9000;
1154 max_write_delay = 20000;
1157 read = "1 0 1 0 0 0 0 0 x x x x x x x x",
1158 "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
1160 write = "1 1 0 0 0 0 0 0 x x x x x x x x",
1161 "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
1165 min_write_delay = 9000;
1166 max_write_delay = 20000;
1169 read_lo = " 0 0 1 0 0 0 0 0",
1170 " x x x x x x a9 a8",
1171 " a7 a6 a5 a4 a3 a2 a1 a0",
1174 read_hi = " 0 0 1 0 1 0 0 0",
1175 " x x x x x x a9 a8",
1176 " a7 a6 a5 a4 a3 a2 a1 a0",
1179 write_lo = " 0 1 0 0 0 0 0 0",
1180 " x x x x x x a9 a8",
1181 " a7 a6 a5 a4 a3 a2 a1 a0",
1184 write_hi = " 0 1 0 0 1 0 0 0",
1185 " x x x x x x a9 a8",
1186 " a7 a6 a5 a4 a3 a2 a1 a0",
1191 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
1192 "x x x x x x a1 a0 o o o o o o o o";
1196 min_write_delay = 9000;
1197 max_write_delay = 20000;
1198 pwroff_after_write = yes;
1199 read = "0 1 0 1 0 0 0 0 x x x x x x x x",
1200 "x x x x x x x x x x o o o o o o";
1202 write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i",
1203 "x x x x x x x x x x x x x x x x";
1207 min_write_delay = 9000;
1208 max_write_delay = 20000;
1209 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
1210 "x x x x x x x x x x x x x o o x";
1212 write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1",
1213 "x x x x x x x x x x x x x x x x";
1218 #------------------------------------------------------------
1219 # AT90s2343 (also AT90s2323 and ATtiny22)
1220 #------------------------------------------------------------
1225 stk500_devcode = 0x43;
1226 avr910_devcode = 0x4c;
1227 chip_erase_delay = 18000;
1228 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
1229 "x x x x x x x x x x x x x x x x";
1231 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
1232 "x x x x x x x x x x x x x x x x";
1247 min_write_delay = 9000;
1248 max_write_delay = 20000;
1251 read = "1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0",
1252 "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
1254 write = "1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0",
1255 "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
1264 min_write_delay = 9000;
1265 max_write_delay = 20000;
1268 read_lo = " 0 0 1 0 0 0 0 0",
1269 " x x x x x x a9 a8",
1270 " a7 a6 a5 a4 a3 a2 a1 a0",
1273 read_hi = " 0 0 1 0 1 0 0 0",
1274 " x x x x x x a9 a8",
1275 " a7 a6 a5 a4 a3 a2 a1 a0",
1278 write_lo = " 0 1 0 0 0 0 0 0",
1279 " x x x x x x a9 a8",
1280 " a7 a6 a5 a4 a3 a2 a1 a0",
1283 write_hi = " 0 1 0 0 1 0 0 0",
1284 " x x x x x x a9 a8",
1285 " a7 a6 a5 a4 a3 a2 a1 a0",
1295 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
1296 "x x x x x x a1 a0 o o o o o o o o";
1300 min_write_delay = 9000;
1301 max_write_delay = 20000;
1302 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
1303 "x x x x x x x x o o o x x x x o";
1305 write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i",
1306 "x x x x x x x x x x x x x x x x";
1310 min_write_delay = 9000;
1311 max_write_delay = 20000;
1312 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
1313 "x x x x x x x x o o o x x x x o";
1315 write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1",
1316 "x x x x x x x x x x x x x x x x";
1321 #------------------------------------------------------------
1323 #------------------------------------------------------------
1328 stk500_devcode = 0x51;
1329 avr910_devcode = 0x30;
1330 chip_erase_delay = 20000;
1331 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
1332 "x x x x x x x x x x x x x x x x";
1334 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
1335 "x x x x x x x x x x x x x x x x";
1350 min_write_delay = 9000;
1351 max_write_delay = 20000;
1354 read = " 1 0 1 0 0 0 0 0 x x x x x x x x",
1355 "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
1357 write = " 1 1 0 0 0 0 0 0 x x x x x x x x",
1358 "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
1367 min_write_delay = 9000;
1368 max_write_delay = 20000;
1371 read_lo = " 0 0 1 0 0 0 0 0",
1372 " x x x x x a10 a9 a8",
1373 " a7 a6 a5 a4 a3 a2 a1 a0",
1376 read_hi = " 0 0 1 0 1 0 0 0",
1377 " x x x x x a10 a9 a8",
1378 " a7 a6 a5 a4 a3 a2 a1 a0",
1381 write_lo = " 0 1 0 0 0 0 0 0",
1382 " x x x x x a10 a9 a8",
1383 " a7 a6 a5 a4 a3 a2 a1 a0",
1386 write_hi = " 0 1 0 0 1 0 0 0",
1387 " x x x x x a10 a9 a8",
1388 " a7 a6 a5 a4 a3 a2 a1 a0",
1398 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
1399 "x x x x x x a1 a0 o o o o o o o o";
1403 min_write_delay = 9000;
1404 max_write_delay = 20000;
1405 pwroff_after_write = yes;
1406 read = "0 1 0 1 0 0 0 0 x x x x x x x x",
1407 "x x x x x x x x x x o o o o o o";
1409 write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i",
1410 "x x x x x x x x x x x x x x x x";
1414 min_write_delay = 9000;
1415 max_write_delay = 20000;
1416 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
1417 "x x x x x x x x x x x x x o o x";
1419 write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1",
1420 "x x x x x x x x x x x x x x x x";
1424 #------------------------------------------------------------
1426 #------------------------------------------------------------
1430 ##### WARNING: No XML file for device 'AT90S4434'! #####
1432 stk500_devcode = 0x52;
1433 avr910_devcode = 0x6c;
1434 chip_erase_delay = 20000;
1435 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
1436 "x x x x x x x x x x x x x x x x";
1438 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
1439 "x x x x x x x x x x x x x x x x";
1443 min_write_delay = 9000;
1444 max_write_delay = 20000;
1447 read = " 1 0 1 0 0 0 0 0 x x x x x x x x",
1448 "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
1450 write = " 1 1 0 0 0 0 0 0 x x x x x x x x",
1451 "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
1455 min_write_delay = 9000;
1456 max_write_delay = 20000;
1459 read_lo = " 0 0 1 0 0 0 0 0",
1460 " x x x x x a10 a9 a8",
1461 " a7 a6 a5 a4 a3 a2 a1 a0",
1464 read_hi = " 0 0 1 0 1 0 0 0",
1465 " x x x x x a10 a9 a8",
1466 " a7 a6 a5 a4 a3 a2 a1 a0",
1469 write_lo = " 0 1 0 0 0 0 0 0",
1470 " x x x x x a10 a9 a8",
1471 " a7 a6 a5 a4 a3 a2 a1 a0",
1474 write_hi = " 0 1 0 0 1 0 0 0",
1475 " x x x x x a10 a9 a8",
1476 " a7 a6 a5 a4 a3 a2 a1 a0",
1481 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
1482 "x x x x x x a1 a0 o o o o o o o o";
1486 min_write_delay = 9000;
1487 max_write_delay = 20000;
1488 read = "0 1 0 1 0 0 0 0 x x x x x x x x",
1489 "x x x x x x x x x x o o o o o o";
1491 write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i",
1492 "x x x x x x x x x x x x x x x x";
1496 min_write_delay = 9000;
1497 max_write_delay = 20000;
1498 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
1499 "x x x x x x x x x x x x x o o x";
1501 write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1",
1502 "x x x x x x x x x x x x x x x x";
1506 #------------------------------------------------------------
1508 #------------------------------------------------------------
1513 stk500_devcode = 0x60;
1514 avr910_devcode = 0x38;
1515 chip_erase_delay = 20000;
1516 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
1517 "x x x x x x x x x x x x x x x x";
1519 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
1520 "x x x x x x x x x x x x x x x x";
1535 min_write_delay = 4000;
1536 max_write_delay = 9000;
1539 read = " 1 0 1 0 0 0 0 0 x x x x x x x a8",
1540 "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
1542 write = " 1 1 0 0 0 0 0 0 x x x x x x x a8",
1543 "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
1552 min_write_delay = 4000;
1553 max_write_delay = 9000;
1556 read_lo = " 0 0 1 0 0 0 0 0",
1557 " x x x x a11 a10 a9 a8",
1558 " a7 a6 a5 a4 a3 a2 a1 a0",
1561 read_hi = " 0 0 1 0 1 0 0 0",
1562 " x x x x a11 a10 a9 a8",
1563 " a7 a6 a5 a4 a3 a2 a1 a0",
1566 write_lo = " 0 1 0 0 0 0 0 0",
1567 " x x x x a11 a10 a9 a8",
1568 " a7 a6 a5 a4 a3 a2 a1 a0",
1571 write_hi = " 0 1 0 0 1 0 0 0",
1572 " x x x x a11 a10 a9 a8",
1573 " a7 a6 a5 a4 a3 a2 a1 a0",
1583 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
1584 "x x x x x x a1 a0 o o o o o o o o";
1588 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
1589 "x x x x x x x x x x x x x x x o";
1590 write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i",
1591 "x x x x x x x x x x x x x x x x";
1595 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
1596 "x x x x x x x x o o x x x x x x";
1597 write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1",
1598 "x x x x x x x x x x x x x x x x";
1602 #------------------------------------------------------------
1604 #------------------------------------------------------------
1609 stk500_devcode = 0x61;
1610 avr910_devcode = 0x68;
1611 chip_erase_delay = 20000;
1612 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
1613 "x x x x x x x x x x x x x x x x";
1615 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
1616 "x x x x x x x x x x x x x x x x";
1631 min_write_delay = 9000;
1632 max_write_delay = 20000;
1635 read = " 1 0 1 0 0 0 0 0 x x x x x x x a8",
1636 "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
1638 write = " 1 1 0 0 0 0 0 0 x x x x x x x a8",
1639 "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
1648 min_write_delay = 9000;
1649 max_write_delay = 20000;
1652 read_lo = " 0 0 1 0 0 0 0 0",
1653 " x x x x a11 a10 a9 a8",
1654 " a7 a6 a5 a4 a3 a2 a1 a0",
1657 read_hi = " 0 0 1 0 1 0 0 0",
1658 " x x x x a11 a10 a9 a8",
1659 " a7 a6 a5 a4 a3 a2 a1 a0",
1662 write_lo = " 0 1 0 0 0 0 0 0",
1663 " x x x x a11 a10 a9 a8",
1664 " a7 a6 a5 a4 a3 a2 a1 a0",
1667 write_hi = " 0 1 0 0 1 0 0 0",
1668 " x x x x a11 a10 a9 a8",
1669 " a7 a6 a5 a4 a3 a2 a1 a0",
1679 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
1680 "x x x x x x a1 a0 o o o o o o o o";
1684 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
1685 "x x x x x x x x x x x x x x x o";
1686 write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i",
1687 "x x x x x x x x x x x x x x x x";
1691 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
1692 "x x x x x x x x o o x x x x x x";
1693 write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1",
1694 "x x x x x x x x x x x x x x x x";
1698 #------------------------------------------------------------
1700 #------------------------------------------------------------
1705 stk500_devcode = 0xB1;
1706 avr910_devcode = 0x41;
1707 chip_erase_delay = 112000;
1708 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
1709 "x x x x x x x x x x x x x x x x";
1711 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
1712 "x x x x x x x x x x x x x x x x";
1727 min_write_delay = 4000;
1728 max_write_delay = 9000;
1731 read = " 1 0 1 0 0 0 0 0",
1732 " x x x x a11 a10 a9 a8",
1733 " a7 a6 a5 a4 a3 a2 a1 a0",
1736 write = " 1 1 0 0 0 0 0 0",
1737 " x x x x a11 a10 a9 a8",
1738 " a7 a6 a5 a4 a3 a2 a1 a0",
1752 min_write_delay = 22000;
1753 max_write_delay = 56000;
1756 read_lo = " 0 0 1 0 0 0 0 0",
1757 "a15 a14 a13 a12 a11 a10 a9 a8",
1758 " a7 a6 a5 a4 a3 a2 a1 a0",
1761 read_hi = " 0 0 1 0 1 0 0 0",
1762 "a15 a14 a13 a12 a11 a10 a9 a8",
1763 " a7 a6 a5 a4 a3 a2 a1 a0",
1766 loadpage_lo = " 0 1 0 0 0 0 0 0",
1768 " x a6 a5 a4 a3 a2 a1 a0",
1771 loadpage_hi = " 0 1 0 0 1 0 0 0",
1773 " x a6 a5 a4 a3 a2 a1 a0",
1776 writepage = " 0 1 0 0 1 1 0 0",
1777 "a15 a14 a13 a12 a11 a10 a9 a8",
1778 " a7 x x x x x x x",
1789 read = "0 1 0 1 0 0 0 0 x x x x x x x x",
1790 "x x x x x x x x x x o x o 1 o o";
1792 write = "1 0 1 0 1 1 0 0 1 0 1 1 i 1 i i",
1793 "x x x x x x x x x x x x x x x x";
1798 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
1799 "x x x x x x x x x x x x x o o x";
1801 write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1",
1802 "x x x x x x x x x x x x x x x x";
1807 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
1808 "x x x x x x a1 a0 o o o o o o o o";
1813 #------------------------------------------------------------
1815 #------------------------------------------------------------
1821 stk500_devcode = 0xA0;
1822 chip_erase_delay = 9000;
1826 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
1827 "x x x x x x x x x x x x x x x x";
1829 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
1830 "x x x x x x x x x x x x x x x x";
1845 allowfullpagebitstream = yes;
1848 paged = no; /* leave this "no" */
1849 page_size = 8; /* for parallel programming */
1851 min_write_delay = 9000;
1852 max_write_delay = 9000;
1855 read = " 1 0 1 0 0 0 0 0",
1856 " x x x x a11 a10 a9 a8",
1857 " a7 a6 a5 a4 a3 a2 a1 a0",
1860 write = " 1 1 0 0 0 0 0 0",
1861 " x x x x a11 a10 a9 a8",
1862 " a7 a6 a5 a4 a3 a2 a1 a0",
1876 min_write_delay = 4500;
1877 max_write_delay = 4500;
1880 read_lo = " 0 0 1 0 0 0 0 0",
1881 " x a14 a13 a12 a11 a10 a9 a8",
1882 " a7 a6 a5 a4 a3 a2 a1 a0",
1885 read_hi = " 0 0 1 0 1 0 0 0",
1886 " x a14 a13 a12 a11 a10 a9 a8",
1887 " a7 a6 a5 a4 a3 a2 a1 a0",
1891 loadpage_lo = " 0 1 0 0 0 0 0 0",
1893 " x a6 a5 a4 a3 a2 a1 a0",
1896 loadpage_hi = " 0 1 0 0 1 0 0 0",
1898 " x a6 a5 a4 a3 a2 a1 a0",
1901 writepage = " 0 1 0 0 1 1 0 0",
1902 " x a14 a13 a12 a11 a10 a9 a8",
1903 " a7 x x x x x x x",
1914 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
1915 "x x x x x x x x i i i i i i i i";
1917 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
1918 "x x x x x x x x o o o o o o o o";
1923 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
1924 "x x x x x x x x i i i i i i i i";
1926 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
1927 "x x x x x x x x o o o o o o o o";
1932 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
1933 "x x x x x x x x x x x x x x i i";
1935 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
1936 "x x x x x x x x o o o o o o o o";
1941 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
1942 "x x x x x x x x x x o o o o o o";
1944 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
1945 "x x x x x x x x 1 1 i i i i i i";
1948 memory "calibration"
1950 read = "0 0 1 1 1 0 0 0 x x x x x x x x",
1951 "0 0 0 0 0 0 0 0 o o o o o o o o";
1956 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
1957 "x x x x x x a1 a0 o o o o o o o o";
1964 #------------------------------------------------------------
1966 #------------------------------------------------------------
1972 stk500_devcode = 0xB2;
1973 avr910_devcode = 0x43;
1974 chip_erase_delay = 9000;
1978 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
1979 "x x x x x x x x x x x x x x x x";
1981 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
1982 "x x x x x x x x x x x x x x x x";
1998 allowfullpagebitstream = yes;
2001 paged = no; /* leave this "no" */
2002 page_size = 8; /* for parallel programming */
2004 min_write_delay = 9000;
2005 max_write_delay = 9000;
2008 read = " 1 0 1 0 0 0 0 0",
2009 " x x x x a11 a10 a9 a8",
2010 " a7 a6 a5 a4 a3 a2 a1 a0",
2013 write = " 1 1 0 0 0 0 0 0",
2014 " x x x x a11 a10 a9 a8",
2015 " a7 a6 a5 a4 a3 a2 a1 a0",
2029 min_write_delay = 4500;
2030 max_write_delay = 4500;
2033 read_lo = " 0 0 1 0 0 0 0 0",
2034 "a15 a14 a13 a12 a11 a10 a9 a8",
2035 " a7 a6 a5 a4 a3 a2 a1 a0",
2038 read_hi = " 0 0 1 0 1 0 0 0",
2039 "a15 a14 a13 a12 a11 a10 a9 a8",
2040 " a7 a6 a5 a4 a3 a2 a1 a0",
2043 loadpage_lo = " 0 1 0 0 0 0 0 0",
2045 " x a6 a5 a4 a3 a2 a1 a0",
2048 loadpage_hi = " 0 1 0 0 1 0 0 0",
2050 " x a6 a5 a4 a3 a2 a1 a0",
2053 writepage = " 0 1 0 0 1 1 0 0",
2054 "a15 a14 a13 a12 a11 a10 a9 a8",
2055 " a7 x x x x x x x",
2066 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
2067 "x x x x x x x x i i i i i i i i";
2069 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
2070 "x x x x x x x x o o o o o o o o";
2075 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
2076 "x x x x x x x x i i i i i i i i";
2078 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
2079 "x x x x x x x x o o o o o o o o";
2084 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
2085 "x x x x x x x x x x x x x x i i";
2087 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
2088 "x x x x x x x x o o o o o o o o";
2093 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
2094 "x x x x x x x x x x o o o o o o";
2096 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
2097 "x x x x x x x x 1 1 i i i i i i";
2100 memory "calibration"
2102 read = "0 0 1 1 1 0 0 0 x x x x x x x x",
2103 "0 0 0 0 0 0 a1 a0 o o o o o o o o";
2108 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
2109 "x x x x x x a1 a0 o o o o o o o o";
2113 #------------------------------------------------------------
2115 #------------------------------------------------------------
2119 desc = "AT90CAN128";
2121 stk500_devcode = 0xB3;
2122 # avr910_devcode = 0x43;
2123 chip_erase_delay = 9000;
2127 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
2128 "x x x x x x x x x x x x x x x x";
2130 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
2131 "x x x x x x x x x x x x x x x x";
2148 allowfullpagebitstream = no;
2151 paged = no; /* leave this "no" */
2152 page_size = 8; /* for parallel programming */
2154 min_write_delay = 9000;
2155 max_write_delay = 9000;
2158 read = " 1 0 1 0 0 0 0 0",
2159 " 0 0 0 x a11 a10 a9 a8",
2160 " a7 a6 a5 a4 a3 a2 a1 a0",
2163 write = " 1 1 0 0 0 0 0 0",
2164 " 0 0 0 x a11 a10 a9 a8",
2165 " a7 a6 a5 a4 a3 a2 a1 a0",
2179 min_write_delay = 4500;
2180 max_write_delay = 4500;
2183 read_lo = " 0 0 1 0 0 0 0 0",
2184 "a15 a14 a13 a12 a11 a10 a9 a8",
2185 " a7 a6 a5 a4 a3 a2 a1 a0",
2188 read_hi = " 0 0 1 0 1 0 0 0",
2189 "a15 a14 a13 a12 a11 a10 a9 a8",
2190 " a7 a6 a5 a4 a3 a2 a1 a0",
2193 loadpage_lo = " 0 1 0 0 0 0 0 0",
2195 " x a6 a5 a4 a3 a2 a1 a0",
2198 loadpage_hi = " 0 1 0 0 1 0 0 0",
2200 " x a6 a5 a4 a3 a2 a1 a0",
2203 writepage = " 0 1 0 0 1 1 0 0",
2204 "a15 a14 a13 a12 a11 a10 a9 a8",
2205 " a7 x x x x x x x",
2216 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
2217 "x x x x x x x x i i i i i i i i";
2219 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
2220 "x x x x x x x x o o o o o o o o";
2225 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
2226 "x x x x x x x x i i i i i i i i";
2228 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
2229 "x x x x x x x x o o o o o o o o";
2234 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
2235 "x x x x x x x x x x x x i i i i";
2237 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
2238 "x x x x x x x x o o o o o o o o";
2243 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
2244 "x x x x x x x x x x o o o o o o";
2246 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
2247 "x x x x x x x x 1 1 i i i i i i";
2250 memory "calibration"
2252 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
2253 "0 0 0 0 0 0 0 0 o o o o o o o o";
2258 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
2259 "x x x x x x a1 a0 o o o o o o o o";
2264 #------------------------------------------------------------
2266 #------------------------------------------------------------
2272 stk500_devcode = 0x82;
2273 avr910_devcode = 0x74;
2276 chip_erase_delay = 9000;
2277 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
2278 "x x x x x x x x x x x x x x x x";
2280 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
2281 "x x x x x x x x x x x x x x x x";
2296 allowfullpagebitstream = yes;
2299 paged = no; /* leave this "no" */
2300 page_size = 4; /* for parallel programming */
2302 min_write_delay = 9000;
2303 max_write_delay = 9000;
2306 read = " 1 0 1 0 0 0 0 0",
2307 " 0 0 x x x x a9 a8",
2308 " a7 a6 a5 a4 a3 a2 a1 a0",
2311 write = " 1 1 0 0 0 0 0 0",
2312 " 0 0 x x x x a9 a8",
2313 " a7 a6 a5 a4 a3 a2 a1 a0",
2327 min_write_delay = 4500;
2328 max_write_delay = 4500;
2331 read_lo = " 0 0 1 0 0 0 0 0",
2332 " 0 0 a13 a12 a11 a10 a9 a8",
2333 " a7 a6 a5 a4 a3 a2 a1 a0",
2336 read_hi = " 0 0 1 0 1 0 0 0",
2337 " 0 0 a13 a12 a11 a10 a9 a8",
2338 " a7 a6 a5 a4 a3 a2 a1 a0",
2341 loadpage_lo = " 0 1 0 0 0 0 0 0",
2343 " x x a5 a4 a3 a2 a1 a0",
2346 loadpage_hi = " 0 1 0 0 1 0 0 0",
2348 " x x a5 a4 a3 a2 a1 a0",
2351 writepage = " 0 1 0 0 1 1 0 0",
2352 " 0 0 a13 a12 a11 a10 a9 a8",
2353 " a7 a6 x x x x x x",
2364 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
2365 "x x x x x x x x x x o o o o o o";
2367 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
2368 "x x x x x x x x 1 1 i i i i i i";
2373 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
2374 "x x x x x x x x o o o o o o o o";
2376 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
2377 "x x x x x x x x i i i i i i i i";
2382 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
2383 "x x x x x x x x o o o o o o o o";
2385 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
2386 "x x x x x x x x i i i i i i i i";
2390 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
2391 "x x x x x x a1 a0 o o o o o o o o";
2396 #------------------------------------------------------------
2398 #------------------------------------------------------------
2406 # stk500_devcode = 0x82; # no STK500v1 support
2407 # avr910_devcode = 0x?; # try the ATmega16 one:^
2408 avr910_devcode = 0x74;
2411 chip_erase_delay = 9000;
2412 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
2413 "x x x x x x x x x x x x x x x x";
2415 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
2416 "x x x x x x x x x x x x x x x x";
2431 allowfullpagebitstream = no;
2434 paged = no; /* leave this "no" */
2435 page_size = 4; /* for parallel programming */
2437 min_write_delay = 9000;
2438 max_write_delay = 9000;
2441 read = " 1 0 1 0 0 0 0 0",
2442 " 0 0 x x x x a9 a8",
2443 " a7 a6 a5 a4 a3 a2 a1 a0",
2446 write = " 1 1 0 0 0 0 0 0",
2447 " 0 0 x x x x a9 a8",
2448 " a7 a6 a5 a4 a3 a2 a1 a0",
2462 min_write_delay = 4500;
2463 max_write_delay = 4500;
2466 read_lo = " 0 0 1 0 0 0 0 0",
2467 " 0 0 a13 a12 a11 a10 a9 a8",
2468 " a7 a6 a5 a4 a3 a2 a1 a0",
2471 read_hi = " 0 0 1 0 1 0 0 0",
2472 " 0 0 a13 a12 a11 a10 a9 a8",
2473 " a7 a6 a5 a4 a3 a2 a1 a0",
2476 loadpage_lo = " 0 1 0 0 0 0 0 0",
2478 " x x a5 a4 a3 a2 a1 a0",
2481 loadpage_hi = " 0 1 0 0 1 0 0 0",
2483 " x x a5 a4 a3 a2 a1 a0",
2486 writepage = " 0 1 0 0 1 1 0 0",
2487 " 0 0 a13 a12 a11 a10 a9 a8",
2488 " a7 a6 x x x x x x",
2499 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
2500 "x x x x x x x x x x o o o o o o";
2502 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
2503 "x x x x x x x x 1 1 i i i i i i";
2508 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
2509 "x x x x x x x x o o o o o o o o";
2511 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
2512 "x x x x x x x x i i i i i i i i";
2517 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
2518 "x x x x x x x x o o o o o o o o";
2520 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
2521 "x x x x x x x x i i i i i i i i";
2527 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
2528 "x x x x x x x x o o o o o o o o";
2530 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
2531 "x x x x x x x x 1 1 1 1 1 i i i";
2536 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
2537 "x x x x x x a1 a0 o o o o o o o o";
2540 memory "calibration"
2543 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
2544 "0 0 0 0 0 0 0 0 o o o o o o o o";
2549 #------------------------------------------------------------
2551 #------------------------------------------------------------
2553 # similar to ATmega164
2559 # stk500_devcode = 0x82; # no STK500v1 support
2560 # avr910_devcode = 0x?; # try the ATmega16 one:^
2561 avr910_devcode = 0x74;
2564 chip_erase_delay = 9000;
2565 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
2566 "x x x x x x x x x x x x x x x x";
2568 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
2569 "x x x x x x x x x x x x x x x x";
2584 allowfullpagebitstream = no;
2587 paged = no; /* leave this "no" */
2588 page_size = 4; /* for parallel programming */
2590 min_write_delay = 9000;
2591 max_write_delay = 9000;
2594 read = " 1 0 1 0 0 0 0 0",
2595 " 0 0 x x x a10 a9 a8",
2596 " a7 a6 a5 a4 a3 a2 a1 a0",
2599 write = " 1 1 0 0 0 0 0 0",
2600 " 0 0 x x x a10 a9 a8",
2601 " a7 a6 a5 a4 a3 a2 a1 a0",
2615 min_write_delay = 4500;
2616 max_write_delay = 4500;
2619 read_lo = " 0 0 1 0 0 0 0 0",
2620 " 0 a14 a13 a12 a11 a10 a9 a8",
2621 " a7 a6 a5 a4 a3 a2 a1 a0",
2624 read_hi = " 0 0 1 0 1 0 0 0",
2625 " 0 a14 a13 a12 a11 a10 a9 a8",
2626 " a7 a6 a5 a4 a3 a2 a1 a0",
2629 loadpage_lo = " 0 1 0 0 0 0 0 0",
2631 " x a6 a5 a4 a3 a2 a1 a0",
2634 loadpage_hi = " 0 1 0 0 1 0 0 0",
2636 " x a6 a5 a4 a3 a2 a1 a0",
2639 writepage = " 0 1 0 0 1 1 0 0",
2640 " 0 a14 a13 a12 a11 a10 a9 a8",
2641 " a7 x x x x x x x",
2652 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
2653 "x x x x x x x x x x o o o o o o";
2655 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
2656 "x x x x x x x x 1 1 i i i i i i";
2661 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
2662 "x x x x x x x x o o o o o o o o";
2664 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
2665 "x x x x x x x x i i i i i i i i";
2670 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
2671 "x x x x x x x x o o o o o o o o";
2673 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
2674 "x x x x x x x x i i i i i i i i";
2680 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
2681 "x x x x x x x x o o o o o o o o";
2683 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
2684 "x x x x x x x x 1 1 1 1 1 i i i";
2689 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
2690 "x x x x x x a1 a0 o o o o o o o o";
2693 memory "calibration"
2696 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
2697 "0 0 0 0 0 0 0 0 o o o o o o o o";
2702 #------------------------------------------------------------
2704 #------------------------------------------------------------
2706 # similar to ATmega164
2712 # stk500_devcode = 0x82; # no STK500v1 support
2713 # avr910_devcode = 0x?; # try the ATmega16 one:^
2714 avr910_devcode = 0x74;
2717 chip_erase_delay = 9000;
2718 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
2719 "x x x x x x x x x x x x x x x x";
2721 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
2722 "x x x x x x x x x x x x x x x x";
2737 allowfullpagebitstream = no;
2740 paged = no; /* leave this "no" */
2741 page_size = 8; /* for parallel programming */
2743 min_write_delay = 9000;
2744 max_write_delay = 9000;
2747 read = " 1 0 1 0 0 0 0 0",
2748 " 0 0 x x a11 a10 a9 a8",
2749 " a7 a6 a5 a4 a3 a2 a1 a0",
2752 write = " 1 1 0 0 0 0 0 0",
2753 " 0 0 x x a11 a10 a9 a8",
2754 " a7 a6 a5 a4 a3 a2 a1 a0",
2768 min_write_delay = 4500;
2769 max_write_delay = 4500;
2772 read_lo = " 0 0 1 0 0 0 0 0",
2773 "a15 a14 a13 a12 a11 a10 a9 a8",
2774 " a7 a6 a5 a4 a3 a2 a1 a0",
2777 read_hi = " 0 0 1 0 1 0 0 0",
2778 "a15 a14 a13 a12 a11 a10 a9 a8",
2779 " a7 a6 a5 a4 a3 a2 a1 a0",
2782 loadpage_lo = " 0 1 0 0 0 0 0 0",
2784 " x a6 a5 a4 a3 a2 a1 a0",
2787 loadpage_hi = " 0 1 0 0 1 0 0 0",
2789 " x a6 a5 a4 a3 a2 a1 a0",
2792 writepage = " 0 1 0 0 1 1 0 0",
2793 "a15 a14 a13 a12 a11 a10 a9 a8",
2794 " a7 x x x x x x x",
2805 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
2806 "x x x x x x x x x x o o o o o o";
2808 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
2809 "x x x x x x x x 1 1 i i i i i i";
2814 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
2815 "x x x x x x x x o o o o o o o o";
2817 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
2818 "x x x x x x x x i i i i i i i i";
2823 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
2824 "x x x x x x x x o o o o o o o o";
2826 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
2827 "x x x x x x x x i i i i i i i i";
2833 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
2834 "x x x x x x x x o o o o o o o o";
2836 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
2837 "x x x x x x x x 1 1 1 1 1 i i i";
2842 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
2843 "x x x x x x a1 a0 o o o o o o o o";
2846 memory "calibration"
2849 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
2850 "0 0 0 0 0 0 0 0 o o o o o o o o";
2855 #------------------------------------------------------------
2857 #------------------------------------------------------------
2863 stk500_devcode = 0x83;
2864 chip_erase_delay = 9000;
2868 allowfullpagebitstream = yes;
2870 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
2871 "x x x x x x x x x x x x x x x x";
2873 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
2874 "x x x x x x x x x x x x x x x x";
2881 min_write_delay = 4500;
2882 max_write_delay = 4500;
2886 read_lo = " 0 0 1 0 0 0 0 0",
2887 " 0 0 a13 a12 a11 a10 a9 a8",
2888 " a7 a6 a5 a4 a3 a2 a1 a0",
2891 read_hi = " 0 0 1 0 1 0 0 0",
2892 " 0 0 a13 a12 a11 a10 a9 a8",
2893 " a7 a6 a5 a4 a3 a2 a1 a0",
2896 loadpage_lo = " 0 1 0 0 0 0 0 0",
2898 " x x a5 a4 a3 a2 a1 a0",
2901 loadpage_hi = " 0 1 0 0 1 0 0 0",
2903 " x x a5 a4 a3 a2 a1 a0",
2906 writepage = " 0 1 0 0 1 1 0 0",
2907 " 0 0 a13 a12 a11 a10 a9 a8",
2908 " a7 a6 x x x x x x",
2924 paged = no; /* leave this "no" */
2925 page_size = 4; /* for parallel programming */
2927 min_write_delay = 9000;
2928 max_write_delay = 9000;
2932 read = " 1 0 1 0 0 0 0 0",
2933 " 0 0 x x x x a9 a8",
2934 " a7 a6 a5 a4 a3 a2 a1 a0",
2937 write = " 1 1 0 0 0 0 0 0",
2938 " 0 0 x x x x a9 a8",
2939 " a7 a6 a5 a4 a3 a2 a1 a0",
2950 min_write_delay = 16000;
2951 max_write_delay = 16000;
2952 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
2953 "x x x x x x x x o o o o o o o o";
2955 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
2956 "x x x x x x x x i i i i i i i i";
2961 min_write_delay = 16000;
2962 max_write_delay = 16000;
2964 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
2965 "x x x x x x x x o o o o o o o o";
2967 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
2968 "x x x x x x x x i i i i i i i i";
2973 min_write_delay = 16000;
2974 max_write_delay = 16000;
2976 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
2977 "x x x x x x x x o o o o o o o o";
2979 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
2980 "x x x x x x x x 1 1 1 1 1 i i i";
2985 min_write_delay = 16000;
2986 max_write_delay = 16000;
2988 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
2989 "x x x x x x x x x x o o o o o o";
2991 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
2992 "x x x x x x x x 1 1 i i i i i i";
2998 read = "0 0 1 1 0 0 0 0 0 0 x x x x x x",
2999 "x x x x x x a1 a0 o o o o o o o o";
3002 memory "calibration"
3005 read = "0 0 1 1 1 0 0 0 0 0 x x x x x x",
3006 "0 0 0 0 0 0 0 0 o o o o o o o o";
3012 #------------------------------------------------------------
3014 #------------------------------------------------------------
3019 stk500_devcode = 0x81;
3020 avr910_devcode = 0x64;
3021 chip_erase_delay = 32000;
3024 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
3025 "x x x x x x x x x x x x x x x x";
3027 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
3028 "x x x x x x x x x x x x x x x x";
3031 min_write_delay = 4000;
3032 max_write_delay = 4000;
3035 read = " 1 0 1 0 0 0 0 0",
3036 " x x x x x x x a8",
3037 " a7 a6 a5 a4 a3 a2 a1 a0",
3040 write = " 1 1 0 0 0 0 0 0",
3041 " x x x x x x x a8",
3042 " a7 a6 a5 a4 a3 a2 a1 a0",
3051 min_write_delay = 16000;
3052 max_write_delay = 16000;
3055 read_lo = " 0 0 1 0 0 0 0 0",
3056 " x x x a12 a11 a10 a9 a8",
3057 " a7 a6 a5 a4 a3 a2 a1 a0",
3060 read_hi = " 0 0 1 0 1 0 0 0",
3061 " x x x a12 a11 a10 a9 a8",
3062 " a7 a6 a5 a4 a3 a2 a1 a0",
3065 loadpage_lo = " 0 1 0 0 0 0 0 0",
3067 " x x a5 a4 a3 a2 a1 a0",
3070 loadpage_hi = " 0 1 0 0 1 0 0 0",
3072 " x x a5 a4 a3 a2 a1 a0",
3075 writepage = " 0 1 0 0 1 1 0 0",
3076 " x x x a12 a11 a10 a9 a8",
3077 " a7 a6 x x x x x x",
3088 min_write_delay = 2000;
3089 max_write_delay = 2000;
3090 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
3091 "x x x x x x x x o o x x o o o o";
3093 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
3094 "x x x x x x x x i i 1 1 i i i i";
3099 min_write_delay = 2000;
3100 max_write_delay = 2000;
3101 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
3102 "x x x x x x x x x x x x 1 o o o";
3104 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
3105 "x x x x x x x x 1 1 1 1 1 i i i";
3110 min_write_delay = 2000;
3111 max_write_delay = 2000;
3112 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
3113 "x x x x 0 x x x x x o o o o o o";
3115 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
3116 "x x x x x x x x 1 1 i i i i i i";
3121 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
3122 "x x x x x x a1 a0 o o o o o o o o";
3125 memory "calibration"
3127 read = "0 0 1 1 1 0 0 0 x x x x x x x x",
3128 "0 0 0 0 0 0 0 0 o o o o o o o o";
3132 #------------------------------------------------------------
3134 #------------------------------------------------------------
3140 stk500_devcode = 0x85;
3141 avr910_devcode = 0x75;
3142 chip_erase_delay = 9000;
3143 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
3144 "x x x x x x x x x x x x x x x x";
3146 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
3147 "x x x x x x x x x x x x x x x x";
3163 paged = no; /* leave this "no" */
3164 page_size = 4; /* for parallel programming */
3166 min_write_delay = 9000;
3167 max_write_delay = 9000;
3170 read = " 1 0 1 0 0 0 0 0",
3171 " x x x x x x x a8",
3172 " a7 a6 a5 a4 a3 a2 a1 a0",
3175 write = " 1 1 0 0 0 0 0 0",
3176 " x x x x x x x a8",
3177 " a7 a6 a5 a4 a3 a2 a1 a0",
3191 min_write_delay = 4500;
3192 max_write_delay = 4500;
3195 read_lo = " 0 0 1 0 0 0 0 0",
3196 " x x x a12 a11 a10 a9 a8",
3197 " a7 a6 a5 a4 a3 a2 a1 a0",
3200 read_hi = " 0 0 1 0 1 0 0 0",
3201 " x x x a12 a11 a10 a9 a8",
3202 " a7 a6 a5 a4 a3 a2 a1 a0",
3205 loadpage_lo = " 0 1 0 0 0 0 0 0",
3207 " x x a5 a4 a3 a2 a1 a0",
3210 loadpage_hi = " 0 1 0 0 1 0 0 0",
3212 " x x a5 a4 a3 a2 a1 a0",
3215 writepage = " 0 1 0 0 1 1 0 0",
3216 " x x x a12 a11 a10 a9 a8",
3217 " a7 a6 x x x x x x",
3228 min_write_delay = 2000;
3229 max_write_delay = 2000;
3230 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
3231 "x x x x x x x x o o o o o o o o";
3233 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
3234 "x x x x x x x x i i i i i i i i";
3239 min_write_delay = 2000;
3240 max_write_delay = 2000;
3241 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
3242 "x x x x x x x x o o o o o o o o";
3244 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
3245 "x x x x x x x x i i i i i i i i";
3250 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
3251 "x x x x x x x x x x x x i i i i";
3253 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
3254 "x x x x x x x x o o o o o o o o";
3259 min_write_delay = 2000;
3260 max_write_delay = 2000;
3261 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
3262 "x x x x x x x x x x o o o o o o";
3264 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
3265 "x x x x x x x x 1 1 i i i i i i";
3270 read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x",
3271 "x x x x x x a1 a0 o o o o o o o o";
3274 memory "calibration"
3276 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
3277 "0 0 0 0 0 0 0 0 o o o o o o o o";
3281 #------------------------------------------------------------
3283 #------------------------------------------------------------
3289 # stk500_devcode = 0x85; # no STK500 support, only STK500v2
3290 # avr910_devcode = 0x?; # try the ATmega169 one:
3291 avr910_devcode = 0x75;
3292 chip_erase_delay = 9000;
3293 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
3294 "x x x x x x x x x x x x x x x x";
3296 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
3297 "x x x x x x x x x x x x x x x x";
3313 paged = no; /* leave this "no" */
3314 page_size = 4; /* for parallel programming */
3316 min_write_delay = 9000;
3317 max_write_delay = 9000;
3320 read = " 1 0 1 0 0 0 0 0",
3321 " x x x x x x a9 a8",
3322 " a7 a6 a5 a4 a3 a2 a1 a0",
3325 write = " 1 1 0 0 0 0 0 0",
3326 " x x x x x x a9 a8",
3327 " a7 a6 a5 a4 a3 a2 a1 a0",
3341 min_write_delay = 4500;
3342 max_write_delay = 4500;
3345 read_lo = " 0 0 1 0 0 0 0 0",
3346 " x a14 a13 a12 a11 a10 a9 a8",
3347 " a7 a6 a5 a4 a3 a2 a1 a0",
3350 read_hi = " 0 0 1 0 1 0 0 0",
3351 " x a14 a13 a12 a11 a10 a9 a8",
3352 " a7 a6 a5 a4 a3 a2 a1 a0",
3355 loadpage_lo = " 0 1 0 0 0 0 0 0",
3357 " x x a5 a4 a3 a2 a1 a0",
3360 loadpage_hi = " 0 1 0 0 1 0 0 0",
3362 " x x a5 a4 a3 a2 a1 a0",
3365 writepage = " 0 1 0 0 1 1 0 0",
3366 " x x x a12 a11 a10 a9 a8",
3367 " a7 a6 x x x x x x",
3378 min_write_delay = 4500;
3379 max_write_delay = 4500;
3380 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
3381 "x x x x x x x x o o o o o o o o";
3383 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
3384 "x x x x x x x x i i i i i i i i";
3389 min_write_delay = 4500;
3390 max_write_delay = 4500;
3391 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
3392 "x x x x x x x x o o o o o o o o";
3394 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
3395 "x x x x x x x x i i i i i i i i";
3400 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
3401 "x x x x x x x x o o o o o o o o";
3403 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
3404 "x x x x x x x x x x x x i i i x";
3409 min_write_delay = 4500;
3410 max_write_delay = 4500;
3411 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
3412 "x x x x x x x x x x o o o o o o";
3414 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
3415 "x x x x x x x x 1 1 i i i i i i";
3420 read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x",
3421 "x x x x x x a1 a0 o o o o o o o o";
3424 memory "calibration"
3426 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
3427 "0 0 0 0 0 0 0 0 o o o o o o o o";
3431 #------------------------------------------------------------
3433 #------------------------------------------------------------
3435 # identical to ATmega329
3439 desc = "ATMEGA3290";
3441 # stk500_devcode = 0x85; # no STK500 support, only STK500v2
3442 # avr910_devcode = 0x?; # try the ATmega169 one:
3443 avr910_devcode = 0x75;
3444 chip_erase_delay = 9000;
3445 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
3446 "x x x x x x x x x x x x x x x x";
3448 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
3449 "x x x x x x x x x x x x x x x x";
3465 paged = no; /* leave this "no" */
3466 page_size = 4; /* for parallel programming */
3468 min_write_delay = 9000;
3469 max_write_delay = 9000;
3472 read = " 1 0 1 0 0 0 0 0",
3473 " x x x x x x a9 a8",
3474 " a7 a6 a5 a4 a3 a2 a1 a0",
3477 write = " 1 1 0 0 0 0 0 0",
3478 " x x x x x x a9 a8",
3479 " a7 a6 a5 a4 a3 a2 a1 a0",
3493 min_write_delay = 4500;
3494 max_write_delay = 4500;
3497 read_lo = " 0 0 1 0 0 0 0 0",
3498 " x a14 a13 a12 a11 a10 a9 a8",
3499 " a7 a6 a5 a4 a3 a2 a1 a0",
3502 read_hi = " 0 0 1 0 1 0 0 0",
3503 " x a14 a13 a12 a11 a10 a9 a8",
3504 " a7 a6 a5 a4 a3 a2 a1 a0",
3507 loadpage_lo = " 0 1 0 0 0 0 0 0",
3509 " x x a5 a4 a3 a2 a1 a0",
3512 loadpage_hi = " 0 1 0 0 1 0 0 0",
3514 " x x a5 a4 a3 a2 a1 a0",
3517 writepage = " 0 1 0 0 1 1 0 0",
3518 " x x x a12 a11 a10 a9 a8",
3519 " a7 a6 x x x x x x",
3530 min_write_delay = 4500;
3531 max_write_delay = 4500;
3532 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
3533 "x x x x x x x x o o o o o o o o";
3535 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
3536 "x x x x x x x x i i i i i i i i";
3541 min_write_delay = 4500;
3542 max_write_delay = 4500;
3543 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
3544 "x x x x x x x x o o o o o o o o";
3546 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
3547 "x x x x x x x x i i i i i i i i";
3552 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
3553 "x x x x x x x x o o o o o o o o";
3555 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
3556 "x x x x x x x x x x x x i i i x";
3561 min_write_delay = 4500;
3562 max_write_delay = 4500;
3563 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
3564 "x x x x x x x x x x o o o o o o";
3566 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
3567 "x x x x x x x x 1 1 i i i i i i";
3572 read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x",
3573 "x x x x x x a1 a0 o o o o o o o o";
3576 memory "calibration"
3578 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
3579 "0 0 0 0 0 0 0 0 o o o o o o o o";
3583 #------------------------------------------------------------
3585 #------------------------------------------------------------
3591 # stk500_devcode = 0x85; # no STK500 support, only STK500v2
3592 # avr910_devcode = 0x?; # try the ATmega169 one:
3593 avr910_devcode = 0x75;
3594 chip_erase_delay = 9000;
3595 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
3596 "x x x x x x x x x x x x x x x x";
3598 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
3599 "x x x x x x x x x x x x x x x x";
3615 paged = no; /* leave this "no" */
3616 page_size = 8; /* for parallel programming */
3618 min_write_delay = 9000;
3619 max_write_delay = 9000;
3622 read = " 1 0 1 0 0 0 0 0",
3623 " x x x x x a10 a9 a8",
3624 " a7 a6 a5 a4 a3 a2 a1 a0",
3627 write = " 1 1 0 0 0 0 0 0",
3628 " x x x x x a10 a9 a8",
3629 " a7 a6 a5 a4 a3 a2 a1 a0",
3643 min_write_delay = 4500;
3644 max_write_delay = 4500;
3647 read_lo = " 0 0 1 0 0 0 0 0",
3648 "a15 a14 a13 a12 a11 a10 a9 a8",
3649 " a7 a6 a5 a4 a3 a2 a1 a0",
3652 read_hi = " 0 0 1 0 1 0 0 0",
3653 "a15 a14 a13 a12 a11 a10 a9 a8",
3654 " a7 a6 a5 a4 a3 a2 a1 a0",
3657 loadpage_lo = " 0 1 0 0 0 0 0 0",
3659 " x a6 a5 a4 a3 a2 a1 a0",
3662 loadpage_hi = " 0 1 0 0 1 0 0 0",
3664 " x a6 a5 a4 a3 a2 a1 a0",
3667 writepage = " 0 1 0 0 1 1 0 0",
3668 " x x x a12 a11 a10 a9 a8",
3669 " a7 x x x x x x x",
3680 min_write_delay = 4500;
3681 max_write_delay = 4500;
3682 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
3683 "x x x x x x x x o o o o o o o o";
3685 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
3686 "x x x x x x x x i i i i i i i i";
3691 min_write_delay = 4500;
3692 max_write_delay = 4500;
3693 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
3694 "x x x x x x x x o o o o o o o o";
3696 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
3697 "x x x x x x x x i i i i i i i i";
3702 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
3703 "x x x x x x x x o o o o o o o o";
3705 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
3706 "x x x x x x x x x x x x i i i x";
3711 min_write_delay = 4500;
3712 max_write_delay = 4500;
3713 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
3714 "x x x x x x x x x x o o o o o o";
3716 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
3717 "x x x x x x x x 1 1 i i i i i i";
3722 read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x",
3723 "x x x x x x a1 a0 o o o o o o o o";
3726 memory "calibration"
3728 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
3729 "0 0 0 0 0 0 0 0 o o o o o o o o";
3733 #------------------------------------------------------------
3735 #------------------------------------------------------------
3737 # identical to ATmega649
3741 desc = "ATMEGA6490";
3743 # stk500_devcode = 0x85; # no STK500 support, only STK500v2
3744 # avr910_devcode = 0x?; # try the ATmega169 one:
3745 avr910_devcode = 0x75;
3746 chip_erase_delay = 9000;
3747 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
3748 "x x x x x x x x x x x x x x x x";
3750 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
3751 "x x x x x x x x x x x x x x x x";
3767 paged = no; /* leave this "no" */
3768 page_size = 8; /* for parallel programming */
3770 min_write_delay = 9000;
3771 max_write_delay = 9000;
3774 read = " 1 0 1 0 0 0 0 0",
3775 " x x x x x a10 a9 a8",
3776 " a7 a6 a5 a4 a3 a2 a1 a0",
3779 write = " 1 1 0 0 0 0 0 0",
3780 " x x x x x a10 a9 a8",
3781 " a7 a6 a5 a4 a3 a2 a1 a0",
3795 min_write_delay = 4500;
3796 max_write_delay = 4500;
3799 read_lo = " 0 0 1 0 0 0 0 0",
3800 "a15 a14 a13 a12 a11 a10 a9 a8",
3801 " a7 a6 a5 a4 a3 a2 a1 a0",
3804 read_hi = " 0 0 1 0 1 0 0 0",
3805 "a15 a14 a13 a12 a11 a10 a9 a8",
3806 " a7 a6 a5 a4 a3 a2 a1 a0",
3809 loadpage_lo = " 0 1 0 0 0 0 0 0",
3811 " x a6 a5 a4 a3 a2 a1 a0",
3814 loadpage_hi = " 0 1 0 0 1 0 0 0",
3816 " x a6 a5 a4 a3 a2 a1 a0",
3819 writepage = " 0 1 0 0 1 1 0 0",
3820 " x x x a12 a11 a10 a9 a8",
3821 " a7 x x x x x x x",
3832 min_write_delay = 4500;
3833 max_write_delay = 4500;
3834 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
3835 "x x x x x x x x o o o o o o o o";
3837 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
3838 "x x x x x x x x i i i i i i i i";
3843 min_write_delay = 4500;
3844 max_write_delay = 4500;
3845 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
3846 "x x x x x x x x o o o o o o o o";
3848 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
3849 "x x x x x x x x i i i i i i i i";
3854 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
3855 "x x x x x x x x o o o o o o o o";
3857 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
3858 "x x x x x x x x x x x x i i i x";
3863 min_write_delay = 4500;
3864 max_write_delay = 4500;
3865 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
3866 "x x x x x x x x x x o o o o o o";
3868 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
3869 "x x x x x x x x 1 1 i i i i i i";
3874 read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x",
3875 "x x x x x x a1 a0 o o o o o o o o";
3878 memory "calibration"
3880 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
3881 "0 0 0 0 0 0 0 0 o o o o o o o o";
3885 #------------------------------------------------------------
3887 #------------------------------------------------------------
3893 stk500_devcode = 0x91;
3894 avr910_devcode = 0x72;
3895 chip_erase_delay = 9000;
3899 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
3900 "x x x x x x x x x x x x x x x x";
3902 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
3903 "x x x x x x x x x x x x x x x x";
3917 allowfullpagebitstream = yes;
3920 paged = no; /* leave this "no" */
3921 page_size = 4; /* for parallel programming */
3923 min_write_delay = 9000;
3924 max_write_delay = 9000;
3927 read = " 1 0 1 0 0 0 0 0",
3928 " 0 0 x x x x a9 a8",
3929 " a7 a6 a5 a4 a3 a2 a1 a0",
3932 write = " 1 1 0 0 0 0 0 0",
3933 " 0 0 x x x x a9 a8",
3934 " a7 a6 a5 a4 a3 a2 a1 a0",
3948 min_write_delay = 4500;
3949 max_write_delay = 4500;
3952 read_lo = " 0 0 1 0 0 0 0 0",
3953 " 0 0 a13 a12 a11 a10 a9 a8",
3954 " a7 a6 a5 a4 a3 a2 a1 a0",
3957 read_hi = " 0 0 1 0 1 0 0 0",
3958 " 0 0 a13 a12 a11 a10 a9 a8",
3959 " a7 a6 a5 a4 a3 a2 a1 a0",
3962 loadpage_lo = " 0 1 0 0 0 0 0 0",
3964 " x x a5 a4 a3 a2 a1 a0",
3967 loadpage_hi = " 0 1 0 0 1 0 0 0",
3969 " x x a5 a4 a3 a2 a1 a0",
3972 writepage = " 0 1 0 0 1 1 0 0",
3973 " 0 0 a13 a12 a11 a10 a9 a8",
3974 " a7 a6 x x x x x x",
3985 min_write_delay = 2000;
3986 max_write_delay = 2000;
3987 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
3988 "x x x x x x x x o o o o o o o o";
3990 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
3991 "x x x x x x x x i i i i i i i i";
3996 min_write_delay = 2000;
3997 max_write_delay = 2000;
3998 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
3999 "x x x x x x x x o o o o o o o o";
4001 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
4002 "x x x x x x x x i i i i i i i i";
4007 min_write_delay = 2000;
4008 max_write_delay = 2000;
4009 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
4010 "x x x x x x x x x x o o o o o o";
4012 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
4013 "x x x x x x x x 1 1 i i i i i i";
4018 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
4019 "x x x x x x a1 a0 o o o o o o o o";
4022 memory "calibration"
4024 read = "0 0 1 1 1 0 0 0 0 0 x x x x x x",
4025 "0 0 0 0 0 0 0 0 o o o o o o o o";
4029 #------------------------------------------------------------
4031 #------------------------------------------------------------
4036 stk500_devcode = 0x80;
4037 avr910_devcode = 0x60;
4038 chip_erase_delay = 28000;
4041 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
4042 "x x x x x x x x x x x x x x x x";
4044 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
4045 "x x x x x x x x x x x x x x x x";
4059 min_write_delay = 3400;
4060 max_write_delay = 3400;
4063 read = " 1 0 1 0 0 0 0 0",
4064 " x x x x x x x a8",
4065 " a7 a6 a5 a4 a3 a2 a1 a0",
4068 write = " 1 1 0 0 0 0 0 0",
4069 " x x x x x x x a8",
4070 " a7 a6 a5 a4 a3 a2 a1 a0",
4084 min_write_delay = 14000;
4085 max_write_delay = 14000;
4088 read_lo = " 0 0 1 0 0 0 0 0",
4089 " x x x a12 a11 a10 a9 a8",
4090 " a7 a6 a5 a4 a3 a2 a1 a0",
4093 read_hi = " 0 0 1 0 1 0 0 0",
4094 " x x x a12 a11 a10 a9 a8",
4095 " a7 a6 a5 a4 a3 a2 a1 a0",
4098 loadpage_lo = " 0 1 0 0 0 0 0 0",
4100 " x x a5 a4 a3 a2 a1 a0",
4103 loadpage_hi = " 0 1 0 0 1 0 0 0",
4105 " x x a5 a4 a3 a2 a1 a0",
4108 writepage = " 0 1 0 0 1 1 0 0",
4109 " x x x a12 a11 a10 a9 a8",
4110 " a7 a6 x x x x x x",
4121 min_write_delay = 2000;
4122 max_write_delay = 2000;
4123 read = "0 1 0 1 0 0 0 0 x x x x x x x x",
4124 "x x x x x x x x x o x o o o o o";
4126 write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x",
4127 "x x x x x x x x 1 i 1 i i i i i";
4132 min_write_delay = 2000;
4133 max_write_delay = 2000;
4134 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
4135 "x x x x x x x x x x o o o o o o";
4137 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
4138 "x x x x x x x x 1 1 i i i i i i";
4142 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
4143 "x x x x x x a1 a0 o o o o o o o o";
4148 #------------------------------------------------------------
4150 #------------------------------------------------------------
4155 stk500_devcode = 0x70;
4156 avr910_devcode = 0x76;
4159 chip_erase_delay = 10000;
4160 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
4161 "x x x x x x x x x x x x x x x x";
4163 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
4164 "x x x x x x x x x x x x x x x x";
4179 min_write_delay = 9000;
4180 max_write_delay = 9000;
4183 read = " 1 0 1 0 0 0 0 0",
4184 " 0 0 x x x x x a8",
4185 " a7 a6 a5 a4 a3 a2 a1 a0",
4188 write = " 1 1 0 0 0 0 0 0",
4189 " 0 0 x x x x x a8",
4190 " a7 a6 a5 a4 a3 a2 a1 a0",
4203 min_write_delay = 4500;
4204 max_write_delay = 4500;
4207 read_lo = " 0 0 1 0 0 0 0 0",
4208 " 0 0 0 0 a11 a10 a9 a8",
4209 " a7 a6 a5 a4 a3 a2 a1 a0",
4212 read_hi = " 0 0 1 0 1 0 0 0",
4213 " 0 0 0 0 a11 a10 a9 a8",
4214 " a7 a6 a5 a4 a3 a2 a1 a0",
4217 loadpage_lo = " 0 1 0 0 0 0 0 0",
4219 " x x x a4 a3 a2 a1 a0",
4222 loadpage_hi = " 0 1 0 0 1 0 0 0",
4224 " x x x a4 a3 a2 a1 a0",
4227 writepage = " 0 1 0 0 1 1 0 0",
4228 " 0 0 0 0 a11 a10 a9 a8",
4229 " a7 a6 a5 x x x x x",
4240 min_write_delay = 2000;
4241 max_write_delay = 2000;
4242 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
4243 "x x x x x x x x o o o o o o o o";
4245 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
4246 "x x x x x x x x i i i i i i i i";
4251 min_write_delay = 2000;
4252 max_write_delay = 2000;
4253 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
4254 "x x x x x x x x o o o o o o o o";
4256 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
4257 "x x x x x x x x i i i i i i i i";
4262 min_write_delay = 2000;
4263 max_write_delay = 2000;
4264 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
4265 "x x x x x x x x x x o o o o o o";
4267 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
4268 "x x x x x x x x 1 1 i i i i i i";
4271 memory "calibration"
4273 read = "0 0 1 1 1 0 0 0 0 0 x x x x x x",
4274 "0 0 0 0 0 0 a1 a0 o o o o o o o o";
4279 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
4280 "x x x x x x a1 a0 o o o o o o o o";
4286 #------------------------------------------------------------
4288 #------------------------------------------------------------
4292 desc = "ATMEGA8515";
4293 stk500_devcode = 0x63;
4294 avr910_devcode = 0x3A;
4295 chip_erase_delay = 9000;
4296 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
4297 "x x x x x x x x x x x x x x x x";
4299 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
4300 "x x x x x x x x x x x x x x x x";
4315 min_write_delay = 9000;
4316 max_write_delay = 9000;
4319 read = " 1 0 1 0 0 0 0 0",
4320 " 0 0 x x x x x a8",
4321 " a7 a6 a5 a4 a3 a2 a1 a0",
4324 write = " 1 1 0 0 0 0 0 0",
4325 " 0 0 x x x x x a8",
4326 " a7 a6 a5 a4 a3 a2 a1 a0",
4339 min_write_delay = 4500;
4340 max_write_delay = 4500;
4343 read_lo = " 0 0 1 0 0 0 0 0",
4344 " 0 0 0 0 a11 a10 a9 a8",
4345 " a7 a6 a5 a4 a3 a2 a1 a0",
4348 read_hi = " 0 0 1 0 1 0 0 0",
4349 " 0 0 0 0 a11 a10 a9 a8",
4350 " a7 a6 a5 a4 a3 a2 a1 a0",
4353 loadpage_lo = " 0 1 0 0 0 0 0 0",
4355 " x x x a4 a3 a2 a1 a0",
4358 loadpage_hi = " 0 1 0 0 1 0 0 0",
4360 " x x x a4 a3 a2 a1 a0",
4363 writepage = " 0 1 0 0 1 1 0 0",
4364 " 0 0 0 0 a11 a10 a9 a8",
4365 " a7 a6 a5 x x x x x",
4376 min_write_delay = 4500;
4377 max_write_delay = 4500;
4378 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
4379 "x x x x x x x x o o o o o o o o";
4381 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
4382 "x x x x x x x x i i i i i i i i";
4387 min_write_delay = 4500;
4388 max_write_delay = 4500;
4389 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
4390 "x x x x x x x x o o o o o o o o";
4392 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
4393 "x x x x x x x x i i i i i i i i";
4398 min_write_delay = 4500;
4399 max_write_delay = 4500;
4400 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
4401 "x x x x x x x x x x o o o o o o";
4403 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
4404 "x x x x x x x x 1 1 i i i i i i";
4407 memory "calibration"
4409 read = "0 0 1 1 1 0 0 0 0 0 x x x x x x",
4410 "0 0 0 0 0 0 0 0 o o o o o o o o";
4415 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
4416 "x x x x x x a1 a0 o o o o o o o o";
4423 #------------------------------------------------------------
4425 #------------------------------------------------------------
4429 desc = "ATMEGA8535";
4430 stk500_devcode = 0x64;
4433 chip_erase_delay = 9000;
4434 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
4435 "x x x x x x x x x x x x x x x x";
4437 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
4438 "x x x x x x x x x x x x x x x x";
4453 min_write_delay = 9000;
4454 max_write_delay = 9000;
4457 read = " 1 0 1 0 0 0 0 0",
4458 " 0 0 x x x x x a8",
4459 " a7 a6 a5 a4 a3 a2 a1 a0",
4462 write = " 1 1 0 0 0 0 0 0",
4463 " 0 0 x x x x x a8",
4464 " a7 a6 a5 a4 a3 a2 a1 a0",
4477 min_write_delay = 4500;
4478 max_write_delay = 4500;
4481 read_lo = " 0 0 1 0 0 0 0 0",
4482 " 0 0 0 0 a11 a10 a9 a8",
4483 " a7 a6 a5 a4 a3 a2 a1 a0",
4486 read_hi = " 0 0 1 0 1 0 0 0",
4487 " 0 0 0 0 a11 a10 a9 a8",
4488 " a7 a6 a5 a4 a3 a2 a1 a0",
4491 loadpage_lo = " 0 1 0 0 0 0 0 0",
4493 " x x x a4 a3 a2 a1 a0",
4496 loadpage_hi = " 0 1 0 0 1 0 0 0",
4498 " x x x a4 a3 a2 a1 a0",
4501 writepage = " 0 1 0 0 1 1 0 0",
4502 " 0 0 0 0 a11 a10 a9 a8",
4503 " a7 a6 a5 x x x x x",
4514 min_write_delay = 2000;
4515 max_write_delay = 2000;
4516 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
4517 "x x x x x x x x o o o o o o o o";
4519 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
4520 "x x x x x x x x i i i i i i i i";
4525 min_write_delay = 2000;
4526 max_write_delay = 2000;
4527 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
4528 "x x x x x x x x o o o o o o o o";
4530 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
4531 "x x x x x x x x i i i i i i i i";
4536 min_write_delay = 2000;
4537 max_write_delay = 2000;
4538 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
4539 "x x x x x x x x x x o o o o o o";
4541 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
4542 "x x x x x x x x 1 1 i i i i i i";
4545 memory "calibration"
4547 read = "0 0 1 1 1 0 0 0 0 0 x x x x x x",
4548 "0 0 0 0 0 0 0 0 o o o o o o o o";
4553 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
4554 "x x x x x x a1 a0 o o o o o o o o";
4559 #------------------------------------------------------------
4561 #------------------------------------------------------------
4566 stk500_devcode = 0x21;
4567 avr910_devcode = 0x5e;
4570 chip_erase_delay = 9000;
4571 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
4572 "x x x x x x x x x x x x x x x x";
4574 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
4575 "x x x x x x x x x x x x x x x x";
4590 min_write_delay = 9000;
4591 max_write_delay = 9000;
4594 read = "1 0 1 0 0 0 0 0 x x x x x x x x",
4595 "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
4597 write = "1 1 0 0 0 0 0 0 x x x x x x x x",
4598 "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
4611 min_write_delay = 4500;
4612 max_write_delay = 4500;
4615 read_lo = " 0 0 1 0 0 0 0 0",
4616 " x x x x x x a9 a8",
4617 " a7 a6 a5 a4 a3 a2 a1 a0",
4620 read_hi = " 0 0 1 0 1 0 0 0",
4621 " x x x x x x a9 a8",
4622 " a7 a6 a5 a4 a3 a2 a1 a0",
4625 loadpage_lo = " 0 1 0 0 0 0 0 0",
4627 " x x x x a3 a2 a1 a0",
4630 loadpage_hi = " 0 1 0 0 1 0 0 0",
4632 " x x x x a3 a2 a1 a0",
4635 writepage = " 0 1 0 0 1 1 0 0",
4636 " x x x x x x a9 a8",
4637 " a7 a6 a5 a4 x x x x",
4648 read = "0 0 1 1 0 0 0 0 x x x x x x x x",
4649 "0 0 0 0 0 0 a1 a0 o o o o o o o o";
4654 read = "0 1 0 1 1 0 0 0 x x x x x x x x",
4655 "x x x x x x x x x x x x x x o o";
4657 write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i",
4658 "x x x x x x x x x x x x x x x x";
4663 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
4664 "x x x x x x x x i i i i i i i i";
4666 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
4667 "x x x x x x x x o o o o o o o o";
4672 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
4673 "x x x x x x x x x x x i i i i i";
4675 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
4676 "x x x x x x x x x x x o o o o o";
4679 memory "calibration"
4681 read = "0 0 1 1 1 0 0 0 x x x x x x x x",
4682 "0 0 0 0 0 0 a1 a0 o o o o o o o o";
4688 #------------------------------------------------------------
4690 #------------------------------------------------------------
4695 stk500_devcode = 0x59;
4696 # avr910_devcode = 0x;
4699 chip_erase_delay = 45000;
4700 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
4701 "x x x x x x x x x x x x x x x x";
4703 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
4704 "x x x x x x x x x x x x x x x x";
4719 min_write_delay = 3600;
4720 max_write_delay = 3600;
4723 read = " 1 0 1 0 0 0 0 0",
4725 " a7 a6 a5 a4 a3 a2 a1 a0",
4728 write = " 1 1 0 0 0 0 0 0",
4730 " a7 a6 a5 a4 a3 a2 a1 a0",
4743 min_write_delay = 4500;
4744 max_write_delay = 4500;
4747 read_lo = " 0 0 1 0 0 0 0 0",
4748 " 0 0 0 0 0 a10 a9 a8",
4749 " a7 a6 a5 a4 a3 a2 a1 a0",
4752 read_hi = " 0 0 1 0 1 0 0 0",
4753 " 0 0 0 0 0 a10 a9 a8",
4754 " a7 a6 a5 a4 a3 a2 a1 a0",
4757 loadpage_lo = " 0 1 0 0 0 0 0 0",
4759 " x x x a4 a3 a2 a1 a0",
4762 loadpage_hi = " 0 1 0 0 1 0 0 0",
4764 " x x x a4 a3 a2 a1 a0",
4767 writepage = " 0 1 0 0 1 1 0 0",
4768 " 0 0 0 0 0 a10 a9 a8",
4769 " a7 a6 a5 x x x x x",
4780 min_write_delay = 4500;
4781 max_write_delay = 4500;
4782 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
4783 "x x x x x x x x o o o o o o o o";
4785 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
4786 "x x x x x x x x i i i i i i i i";
4791 min_write_delay = 4500;
4792 max_write_delay = 4500;
4793 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
4794 "x x x x x x x x o o o o o o o o";
4796 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
4797 "x x x x x x x x i i i i i i i i";
4802 min_write_delay = 4500;
4803 max_write_delay = 4500;
4804 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
4805 "x x x x x x x x o o o o o o o o";
4807 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
4808 "x x x x x x x x i i i i i i i i";
4811 memory "calibration"
4813 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
4814 "0 0 0 0 0 0 0 0 o o o o o o o o";
4819 read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x",
4820 "x x x x x x a1 a0 o o o o o o o o";
4825 #------------------------------------------------------------
4827 #------------------------------------------------------------
4832 stk500_devcode = 0x73;
4833 # avr910_devcode = 0x;
4836 chip_erase_delay = 9000;
4837 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
4838 "x x x x x x x x x x x x x x x x";
4840 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
4841 "x x x x x x x x x x x x x x x x";
4856 min_write_delay = 3600;
4857 max_write_delay = 3600;
4860 read = " 1 0 1 0 0 0 0 0",
4861 " 0 0 0 x x x x a8",
4862 " a7 a6 a5 a4 a3 a2 a1 a0",
4865 write = " 1 1 0 0 0 0 0 0",
4866 " 0 0 0 x x x x a8",
4867 " a7 a6 a5 a4 a3 a2 a1 a0",
4880 min_write_delay = 4500;
4881 max_write_delay = 4500;
4884 read_lo = " 0 0 1 0 0 0 0 0",
4885 " 0 0 0 0 a11 a10 a9 a8",
4886 " a7 a6 a5 a4 a3 a2 a1 a0",
4889 read_hi = " 0 0 1 0 1 0 0 0",
4890 " 0 0 0 0 a11 a10 a9 a8",
4891 " a7 a6 a5 a4 a3 a2 a1 a0",
4894 loadpage_lo = " 0 1 0 0 0 0 0 0",
4896 " x x x a4 a3 a2 a1 a0",
4899 loadpage_hi = " 0 1 0 0 1 0 0 0",
4901 " x x x a4 a3 a2 a1 a0",
4904 writepage = " 0 1 0 0 1 1 0 0",
4905 " 0 0 0 0 a11 a10 a9 a8",
4906 " a7 a6 a5 x x x x x",
4917 min_write_delay = 4500;
4918 max_write_delay = 4500;
4919 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
4920 "x x x x x x x x o o o o o o o o";
4922 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
4923 "x x x x x x x x i i i i i i i i";
4928 min_write_delay = 4500;
4929 max_write_delay = 4500;
4930 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
4931 "x x x x x x x x o o o o o o o o";
4933 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
4934 "x x x x x x x x i i i i i i i i";
4939 min_write_delay = 4500;
4940 max_write_delay = 4500;
4941 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
4942 "x x x x x x x x o o o o o o o o";
4944 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
4945 "x x x x x x x x i i i i i i i i";
4950 min_write_delay = 4500;
4951 max_write_delay = 4500;
4952 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
4953 "x x x x x x x x x x o o o o o o";
4955 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
4956 "x x x x x x x x 1 1 i i i i i i";
4959 memory "calibration"
4961 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
4962 "0 0 0 0 0 0 0 0 o o o o o o o o";
4967 read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x",
4968 "x x x x x x a1 a0 o o o o o o o o";
4973 #------------------------------------------------------------
4975 #------------------------------------------------------------
4979 desc = "ATtiny2313";
4980 stk500_devcode = 0x23;
4981 ## avr910_devcode = ?;
4982 ## Try the AT90S2313 devcode:
4983 avr910_devcode = 0x20;
4987 chip_erase_delay = 9000;
4989 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
4990 "x x x x x x x x x x x x x x x x";
4992 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
4993 "x x x x x x x x x x x x x x x x";
5008 min_write_delay = 4000;
5009 max_write_delay = 4500;
5012 read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x",
5013 "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
5015 write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x",
5016 "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
5028 min_write_delay = 4500;
5029 max_write_delay = 4500;
5032 read_lo = " 0 0 1 0 0 0 0 0",
5033 " 0 0 0 0 0 0 a9 a8",
5034 " a7 a6 a5 a4 a3 a2 a1 a0",
5037 read_hi = " 0 0 1 0 1 0 0 0",
5038 " 0 0 0 0 0 0 a9 a8",
5039 " a7 a6 a5 a4 a3 a2 a1 a0",
5042 # The information in the data sheet of April/2004 is wrong, this works:
5043 loadpage_lo = " 0 1 0 0 0 0 0 0",
5045 " x x x x a3 a2 a1 a0",
5048 # The information in the data sheet of April/2004 is wrong, this works:
5049 loadpage_hi = " 0 1 0 0 1 0 0 0",
5051 " x x x x a3 a2 a1 a0",
5054 # The information in the data sheet of April/2004 is wrong, this works:
5055 writepage = " 0 1 0 0 1 1 0 0",
5056 " 0 0 0 0 0 0 a9 a8",
5057 " a7 a6 a5 a4 x x x x",
5065 # ATtiny2313 has Signature Bytes: 0x1E 0x91 0x0A.
5068 read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x",
5069 "x x x x x x a1 a0 o o o o o o o o";
5073 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
5074 "x x x x x x x x 1 1 i i i i i i";
5079 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
5080 "x x x x x x x x i i i i i i i i";
5082 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
5083 "x x x x x x x x o o o o o o o o";
5088 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
5089 "x x x x x x x x i i i i i i i i";
5091 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
5092 "x x x x x x x x o o o o o o o o";
5097 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
5098 "x x x x x x x x x x x x x x x i";
5100 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
5101 "x x x x x x x x o o o o o o o o";
5103 # The Tiny2313 has calibration data for both 4 MHz and 8 MHz.
5104 # The information in the data sheet of April/2004 is wrong, this works:
5106 memory "calibration"
5108 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
5109 "0 0 0 0 0 0 0 a0 o o o o o o o o";
5113 #------------------------------------------------------------
5115 #------------------------------------------------------------
5120 stk500_devcode = 0x65;
5121 ## avr910_devcode = ?;
5125 chip_erase_delay = 9000;
5127 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
5128 "x x x x x x x x x x x x x x x x";
5130 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
5131 "x x x x x x x x x x x x x x x x";
5146 min_write_delay = 4000;
5147 max_write_delay = 4500;
5150 read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8",
5151 "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
5153 write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8",
5154 "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
5166 min_write_delay = 4500;
5167 max_write_delay = 4500;
5170 read_lo = " 0 0 1 0 0 0 0 0",
5171 " 0 0 0 0 a11 a10 a9 a8",
5172 " a7 a6 a5 a4 a3 a2 a1 a0",
5175 read_hi = " 0 0 1 0 1 0 0 0",
5176 " 0 0 0 0 a11 a10 a9 a8",
5177 " a7 a6 a5 a4 a3 a2 a1 a0",
5180 loadpage_lo = " 0 1 0 0 0 0 0 0",
5182 " x x a5 a4 a3 a2 a1 a0",
5185 loadpage_hi = " 0 1 0 0 1 0 0 0",
5187 " x x a5 a4 a3 a2 a1 a0",
5190 writepage = " 0 1 0 0 1 1 0 0",
5191 " 0 0 0 0 a11 a10 a9 a8",
5192 " a7 a6 x x x x x x",
5200 # AT90PWM2 has Signature Bytes: 0x1E 0x93 0x81.
5203 read = "0 0 1 1 0 0 0 0 0 0 x x x x x x",
5204 "x x x x x x a1 a0 o o o o o o o o";
5208 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
5209 "x x x x x x x x 1 1 i i i i i i";
5211 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
5212 "x x x x x x x x x x o o o o o o";
5217 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
5218 "x x x x x x x x i i i i i i i i";
5220 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
5221 "x x x x x x x x o o o o o o o o";
5226 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
5227 "x x x x x x x x i i i i i i i i";
5229 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
5230 "x x x x x x x x o o o o o o o o";
5235 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
5236 "x x x x x x x x x x x x x x x i";
5238 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
5239 "x x x x x x x x o o o o o o o o";
5242 memory "calibration"
5244 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
5245 "0 0 0 0 0 0 0 0 o o o o o o o o";
5249 #------------------------------------------------------------
5251 #------------------------------------------------------------
5253 # Completely identical to AT90PWM2 (including the signature!)
5258 stk500_devcode = 0x65;
5259 ## avr910_devcode = ?;
5263 chip_erase_delay = 9000;
5265 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
5266 "x x x x x x x x x x x x x x x x";
5268 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
5269 "x x x x x x x x x x x x x x x x";
5284 min_write_delay = 4000;
5285 max_write_delay = 4500;
5288 read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8",
5289 "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
5291 write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8",
5292 "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
5304 min_write_delay = 4500;
5305 max_write_delay = 4500;
5308 read_lo = " 0 0 1 0 0 0 0 0",
5309 " 0 0 0 0 a11 a10 a9 a8",
5310 " a7 a6 a5 a4 a3 a2 a1 a0",
5313 read_hi = " 0 0 1 0 1 0 0 0",
5314 " 0 0 0 0 a11 a10 a9 a8",
5315 " a7 a6 a5 a4 a3 a2 a1 a0",
5318 loadpage_lo = " 0 1 0 0 0 0 0 0",
5320 " x x a5 a4 a3 a2 a1 a0",
5323 loadpage_hi = " 0 1 0 0 1 0 0 0",
5325 " x x a5 a4 a3 a2 a1 a0",
5328 writepage = " 0 1 0 0 1 1 0 0",
5329 " 0 0 0 0 a11 a10 a9 a8",
5330 " a7 a6 x x x x x x",
5338 # AT90PWM2 has Signature Bytes: 0x1E 0x93 0x81.
5341 read = "0 0 1 1 0 0 0 0 0 0 x x x x x x",
5342 "x x x x x x a1 a0 o o o o o o o o";
5346 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
5347 "x x x x x x x x 1 1 i i i i i i";
5349 read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
5350 "x x x x x x x x x x o o o o o o";
5355 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
5356 "x x x x x x x x i i i i i i i i";
5358 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
5359 "x x x x x x x x o o o o o o o o";
5364 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
5365 "x x x x x x x x i i i i i i i i";
5367 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
5368 "x x x x x x x x o o o o o o o o";
5373 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
5374 "x x x x x x x x x x x x x x x i";
5376 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
5377 "x x x x x x x x o o o o o o o o";
5380 memory "calibration"
5382 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
5383 "0 0 0 0 0 0 0 0 o o o o o o o o";
5387 #------------------------------------------------------------
5389 #------------------------------------------------------------
5394 ## no STK500 devcode in XML file, use the ATtiny45 one
5395 stk500_devcode = 0x14;
5396 ## avr910_devcode = ?;
5397 ## Try the AT90S2313 devcode:
5398 avr910_devcode = 0x20;
5400 chip_erase_delay = 4500;
5402 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
5403 "x x x x x x x x x x x x x x x x";
5405 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
5406 "x x x x x x x x x x x x x x x x";
5421 min_write_delay = 4000;
5422 max_write_delay = 4500;
5425 read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x",
5426 "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
5428 write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x",
5429 "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
5441 min_write_delay = 4500;
5442 max_write_delay = 4500;
5445 read_lo = " 0 0 1 0 0 0 0 0",
5446 " 0 0 0 0 0 0 a9 a8",
5447 " a7 a6 a5 a4 a3 a2 a1 a0",
5450 read_hi = " 0 0 1 0 1 0 0 0",
5451 " 0 0 0 0 0 0 a9 a8",
5452 " a7 a6 a5 a4 a3 a2 a1 a0",
5455 loadpage_lo = " 0 1 0 0 0 0 0 0",
5457 " x x x x a3 a2 a1 a0",
5460 loadpage_hi = " 0 1 0 0 1 0 0 0",
5462 " x x x x a3 a2 a1 a0",
5465 writepage = " 0 1 0 0 1 1 0 0",
5466 " 0 0 0 0 0 0 a9 a8",
5467 " a7 a6 a5 a4 x x x x",
5475 # ATtiny25 has Signature Bytes: 0x1E 0x91 0x08.
5478 read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x",
5479 "x x x x x x a1 a0 o o o o o o o o";
5483 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
5484 "x x x x x x x x 1 1 i i i i i i";
5489 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
5490 "x x x x x x x x i i i i i i i i";
5492 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
5493 "x x x x x x x x o o o o o o o o";
5498 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
5499 "x x x x x x x x i i i i i i i i";
5501 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
5502 "x x x x x x x x o o o o o o o o";
5507 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
5508 "x x x x x x x x x x x x x x x i";
5510 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
5511 "x x x x x x x x o o o o o o o o";
5514 memory "calibration"
5516 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
5517 "0 0 0 0 0 0 0 a0 o o o o o o o o";
5521 #------------------------------------------------------------
5523 #------------------------------------------------------------
5528 stk500_devcode = 0x14;
5529 ## avr910_devcode = ?;
5530 ## Try the AT90S2313 devcode:
5531 avr910_devcode = 0x20;
5533 chip_erase_delay = 4500;
5535 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
5536 "x x x x x x x x x x x x x x x x";
5538 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
5539 "x x x x x x x x x x x x x x x x";
5554 min_write_delay = 4000;
5555 max_write_delay = 4500;
5558 read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x",
5559 "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
5561 write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x",
5562 "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
5574 min_write_delay = 4500;
5575 max_write_delay = 4500;
5578 read_lo = " 0 0 1 0 0 0 0 0",
5579 " 0 0 0 0 0 a10 a9 a8",
5580 " a7 a6 a5 a4 a3 a2 a1 a0",
5583 read_hi = " 0 0 1 0 1 0 0 0",
5584 " 0 0 0 0 0 a10 a9 a8",
5585 " a7 a6 a5 a4 a3 a2 a1 a0",
5588 loadpage_lo = " 0 1 0 0 0 0 0 0",
5590 " x x x a4 a3 a2 a1 a0",
5593 loadpage_hi = " 0 1 0 0 1 0 0 0",
5595 " x x x a4 a3 a2 a1 a0",
5598 writepage = " 0 1 0 0 1 1 0 0",
5599 " 0 0 0 0 0 a10 a9 a8",
5600 " a7 a6 a5 x x x x x",
5608 # ATtiny45 has Signature Bytes: 0x1E 0x92 0x08.
5611 read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x",
5612 "x x x x x x a1 a0 o o o o o o o o";
5616 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
5617 "x x x x x x x x 1 1 i i i i i i";
5622 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
5623 "x x x x x x x x i i i i i i i i";
5625 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
5626 "x x x x x x x x o o o o o o o o";
5631 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
5632 "x x x x x x x x i i i i i i i i";
5634 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
5635 "x x x x x x x x o o o o o o o o";
5640 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
5641 "x x x x x x x x x x x x x x x i";
5643 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
5644 "x x x x x x x x o o o o o o o o";
5647 memory "calibration"
5649 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
5650 "0 0 0 0 0 0 0 a0 o o o o o o o o";
5654 #------------------------------------------------------------
5656 #------------------------------------------------------------
5661 ## no STK500 devcode in XML file, use the ATtiny45 one
5662 stk500_devcode = 0x14;
5663 ## avr910_devcode = ?;
5664 ## Try the AT90S2313 devcode:
5665 avr910_devcode = 0x20;
5667 chip_erase_delay = 4500;
5669 pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
5670 "x x x x x x x x x x x x x x x x";
5672 chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
5673 "x x x x x x x x x x x x x x x x";
5688 min_write_delay = 4000;
5689 max_write_delay = 4500;
5692 read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8",
5693 "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o";
5695 write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8",
5696 "a8 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
5708 min_write_delay = 4500;
5709 max_write_delay = 4500;
5712 read_lo = " 0 0 1 0 0 0 0 0",
5713 " 0 0 0 0 a11 a10 a9 a8",
5714 " a7 a6 a5 a4 a3 a2 a1 a0",
5717 read_hi = " 0 0 1 0 1 0 0 0",
5718 " 0 0 0 0 a11 a10 a9 a8",
5719 " a7 a6 a5 a4 a3 a2 a1 a0",
5722 loadpage_lo = " 0 1 0 0 0 0 0 0",
5724 " x x x a4 a3 a2 a1 a0",
5727 loadpage_hi = " 0 1 0 0 1 0 0 0",
5729 " x x x a4 a3 a2 a1 a0",
5732 writepage = " 0 1 0 0 1 1 0 0",
5733 " 0 0 0 0 a11 a10 a9 a8",
5734 " a7 a6 a5 x x x x x",
5742 # ATtiny85 has Signature Bytes: 0x1E 0x93 0x08.
5745 read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x",
5746 "x x x x x x a1 a0 o o o o o o o o";
5750 write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
5751 "x x x x x x x x 1 1 i i i i i i";
5756 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
5757 "x x x x x x x x i i i i i i i i";
5759 read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
5760 "x x x x x x x x o o o o o o o o";
5765 write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
5766 "x x x x x x x x i i i i i i i i";
5768 read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
5769 "x x x x x x x x o o o o o o o o";
5774 write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
5775 "x x x x x x x x x x x x x x x i";
5777 read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
5778 "x x x x x x x x o o o o o o o o";
5781 memory "calibration"
5783 read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
5784 "0 0 0 0 0 0 0 a0 o o o o o o o o";