Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
MarlinKimbra
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
machinery
MarlinKimbra
Commits
c0e9111b
Commit
c0e9111b
authored
9 years ago
by
MagoKimbra
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Test Github push to server
parent
1bd1a030
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
0 additions
and
1110 deletions
+0
-1110
boards.txt
ArduinoAddons/Arduino_0.xx/Gen6/boards.txt
+0
-35
ATmegaBOOT.c
...ons/Arduino_0.xx/Gen6/bootloaders/atmega644p/ATmegaBOOT.c
+0
-713
ATmegaBOOT_324P.hex
...uino_0.xx/Gen6/bootloaders/atmega644p/ATmegaBOOT_324P.hex
+0
-121
ATmegaBOOT_644.hex
...duino_0.xx/Gen6/bootloaders/atmega644p/ATmegaBOOT_644.hex
+0
-120
ATmegaBOOT_644P.hex
...uino_0.xx/Gen6/bootloaders/atmega644p/ATmegaBOOT_644P.hex
+0
-121
No files found.
ArduinoAddons/Arduino_0.xx/Gen6/boards.txt
deleted
100644 → 0
View file @
1bd1a030
##############################################################
Generation_Series.name=Gen6 & Gen6 Deluxe
Generation_Series.upload.protocol=stk500
Generation_Series.upload.maximum_size=63488
Generation_Series.upload.speed=38400
Generation_Series.bootloader.low_fuses=0xFF
Generation_Series.bootloader.high_fuses=0xDC
Generation_Series.bootloader.extended_fuses=0xFD
Generation_Series.bootloader.path=atmega644p
Generation_Series.bootloader.file=ATmegaBOOT_644P.hex
Generation_Series.bootloader.unlock_bits=0x3F
Generation_Series.bootloader.lock_bits=0x0F
Generation_Series.build.mcu=atmega644p
Generation_Series.build.f_cpu=16000000L
Generation_Series.build.core=arduino
##############################################################
Sanguinololu.name=Sanguinololu 1.2 and above
Sanguinololu.upload.protocol=stk500
Sanguinololu.upload.maximum_size=63488
Sanguinololu.upload.speed=38400
Sanguinololu.bootloader.low_fuses=0xFF
Sanguinololu.bootloader.high_fuses=0xDC
Sanguinololu.bootloader.extended_fuses=0xFD
Sanguinololu.bootloader.path=atmega644p
Sanguinololu.bootloader.file=ATmegaBOOT_644P.hex
Sanguinololu.bootloader.unlock_bits=0x3F
Sanguinololu.bootloader.lock_bits=0x0F
Sanguinololu.build.mcu=atmega644p
Sanguinololu.build.f_cpu=16000000L
Sanguinololu.build.core=arduino
This diff is collapsed.
Click to expand it.
ArduinoAddons/Arduino_0.xx/Gen6/bootloaders/atmega644p/ATmegaBOOT.c
deleted
100644 → 0
View file @
1bd1a030
/**********************************************************/
/* Serial Bootloader for Atmel megaAVR Controllers */
/* */
/* tested with ATmega644 and ATmega644P */
/* should work with other mega's, see code for details */
/* */
/* ATmegaBOOT.c */
/* */
/* 20090131: Added 324P support from Alex Leone */
/* Marius Kintel */
/* 20080915: applied ADABoot mods for Sanguino 644P */
/* Brian Riley */
/* 20080711: hacked for Sanguino by Zach Smith */
/* and Justin Day */
/* 20070626: hacked for Arduino Diecimila (which auto- */
/* resets when a USB connection is made to it) */
/* by D. Mellis */
/* 20060802: hacked for Arduino by D. Cuartielles */
/* based on a previous hack by D. Mellis */
/* and D. Cuartielles */
/* */
/* Monitor and debug functions were added to the original */
/* code by Dr. Erik Lins, chip45.com. (See below) */
/* */
/* Thanks to Karl Pitrich for fixing a bootloader pin */
/* problem and more informative LED blinking! */
/* */
/* For the latest version see: */
/* http://www.chip45.com/ */
/* */
/* ------------------------------------------------------ */
/* */
/* based on stk500boot.c */
/* Copyright (c) 2003, Jason P. Kyle */
/* All rights reserved. */
/* see avr1.org for original file and information */
/* */
/* This program is free software; you can redistribute it */
/* and/or modify it under the terms of the GNU General */
/* Public License as published by the Free Software */
/* Foundation; either version 2 of the License, or */
/* (at your option) any later version. */
/* */
/* This program is distributed in the hope that it will */
/* be useful, but WITHOUT ANY WARRANTY; without even the */
/* implied warranty of MERCHANTABILITY or FITNESS FOR A */
/* PARTICULAR PURPOSE. See the GNU General Public */
/* License for more details. */
/* */
/* You should have received a copy of the GNU General */
/* Public License along with this program; if not, write */
/* to the Free Software Foundation, Inc., */
/* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
/* */
/* Licence can be viewed at */
/* http://www.fsf.org/licenses/gpl.txt */
/* */
/* Target = Atmel AVR m128,m64,m32,m16,m8,m162,m163,m169, */
/* m8515,m8535. ATmega161 has a very small boot block so */
/* isn't supported. */
/* */
/* Tested with m168 */
/**********************************************************/
/* $Id$ */
/* some includes */
#include <inttypes.h>
#include <avr/io.h>
#include <avr/pgmspace.h>
#include <avr/interrupt.h>
#include <avr/wdt.h>
#include <avr/boot.h>
#ifdef ADABOOT
#define NUM_LED_FLASHES 3
#define ADABOOT_VER 1
#endif
/* 20070707: hacked by David A. Mellis - after this many errors give up and launch application */
#define MAX_ERROR_COUNT 5
/* set the UART baud rate */
/* 20080711: hack by Zach Hoeken */
#define BAUD_RATE 38400
/* SW_MAJOR and MINOR needs to be updated from time to time to avoid warning message from AVR Studio */
/* never allow AVR Studio to do an update !!!! */
#define HW_VER 0x02
#define SW_MAJOR 0x01
#define SW_MINOR 0x10
/* onboard LED is used to indicate, that the bootloader was entered (3x flashing) */
/* if monitor functions are included, LED goes on after monitor was entered */
#define LED_DDR DDRB
#define LED_PORT PORTB
#define LED_PIN PINB
#define LED PINB0
/* define various device id's */
/* manufacturer byte is always the same */
#define SIG1 0x1E // Yep, Atmel is the only manufacturer of AVR micros. Single source :(
#if defined(__AVR_ATmega644P__)
#define SIG2 0x96
#define SIG3 0x0A
#elif defined(__AVR_ATmega644__)
#define SIG2 0x96
#define SIG3 0x09
#elif defined(__AVR_ATmega324P__)
#define SIG2 0x95
#define SIG3 0x08
#endif
#define PAGE_SIZE 0x080U //128 words
#define PAGE_SIZE_BYTES 0x100U //256 bytes
/* function prototypes */
void
putch
(
char
);
char
getch
(
void
);
void
getNch
(
uint8_t
);
void
byte_response
(
uint8_t
);
void
nothing_response
(
void
);
char
gethex
(
void
);
void
puthex
(
char
);
void
flash_led
(
uint8_t
);
/* some variables */
union
address_union
{
uint16_t
word
;
uint8_t
byte
[
2
];
}
address
;
union
length_union
{
uint16_t
word
;
uint8_t
byte
[
2
];
}
length
;
struct
flags_struct
{
unsigned
eeprom
:
1
;
unsigned
rampz
:
1
;
}
flags
;
uint8_t
buff
[
256
];
uint8_t
error_count
=
0
;
uint8_t
sreg
;
void
(
*
app_start
)(
void
)
=
0x0000
;
/* main program starts here */
int
main
(
void
)
{
uint8_t
ch
,
ch2
;
uint16_t
w
;
uint16_t
i
;
asm
volatile
(
"nop
\n\t
"
);
#ifdef ADABOOT // BBR/LF 10/8/2007 & 9/13/2008
ch
=
MCUSR
;
MCUSR
=
0
;
WDTCSR
|=
_BV
(
WDCE
)
|
_BV
(
WDE
);
WDTCSR
=
0
;
// Check if the WDT was used to reset, in which case we dont bootload and skip straight to the code. woot.
if
(
!
(
ch
&
_BV
(
EXTRF
)))
// if it's a not an external reset...
app_start
();
// skip bootloader
#endif
//initialize our serial port.
UBRR0L
=
(
uint8_t
)(
F_CPU
/
(
BAUD_RATE
*
16L
)
-
1
);
UBRR0H
=
(
F_CPU
/
(
BAUD_RATE
*
16L
)
-
1
)
>>
8
;
UCSR0B
=
(
1
<<
RXEN0
)
|
(
1
<<
TXEN0
);
UCSR0C
=
(
1
<<
UCSZ00
)
|
(
1
<<
UCSZ01
);
/* Enable internal pull-up resistor on pin D0 (RX), in order
to supress line noise that prevents the bootloader from
timing out (DAM: 20070509) */
DDRD
&=
~
_BV
(
PIND0
);
PORTD
|=
_BV
(
PIND0
);
/* set LED pin as output */
LED_DDR
|=
_BV
(
LED
);
/* flash onboard LED to signal entering of bootloader */
/* ADABOOT will do two series of flashes. first 4 - signifying ADABOOT */
/* then a pause and another flash series signifying ADABOOT sub-version */
flash_led
(
NUM_LED_FLASHES
);
#ifdef ADABOOT
flash_led
(
ADABOOT_VER
);
// BBR 9/13/2008
#endif
/* forever loop */
for
(;;)
{
/* get character from UART */
ch
=
getch
();
/* A bunch of if...else if... gives smaller code than switch...case ! */
/* Hello is anyone home ? */
if
(
ch
==
'0'
)
nothing_response
();
/* Request programmer ID */
/* Not using PROGMEM string due to boot block in m128 being beyond 64kB boundry */
/* Would need to selectively manipulate RAMPZ, and it's only 9 characters anyway so who cares. */
else
if
(
ch
==
'1'
)
{
if
(
getch
()
==
' '
)
{
putch
(
0x14
);
putch
(
'A'
);
putch
(
'V'
);
putch
(
'R'
);
putch
(
' '
);
putch
(
'I'
);
putch
(
'S'
);
putch
(
'P'
);
putch
(
0x10
);
}
else
{
if
(
++
error_count
==
MAX_ERROR_COUNT
)
app_start
();
}
}
/* AVR ISP/STK500 board commands DON'T CARE so default nothing_response */
else
if
(
ch
==
'@'
)
{
ch2
=
getch
();
if
(
ch2
>
0x85
)
getch
();
nothing_response
();
}
/* AVR ISP/STK500 board requests */
else
if
(
ch
==
'A'
)
{
ch2
=
getch
();
if
(
ch2
==
0x80
)
byte_response
(
HW_VER
);
// Hardware version
else
if
(
ch2
==
0x81
)
byte_response
(
SW_MAJOR
);
// Software major version
else
if
(
ch2
==
0x82
)
byte_response
(
SW_MINOR
);
// Software minor version
else
if
(
ch2
==
0x98
)
byte_response
(
0x03
);
// Unknown but seems to be required by avr studio 3.56
else
byte_response
(
0x00
);
// Covers various unnecessary responses we don't care about
}
/* Device Parameters DON'T CARE, DEVICE IS FIXED */
else
if
(
ch
==
'B'
)
{
getNch
(
20
);
nothing_response
();
}
/* Parallel programming stuff DON'T CARE */
else
if
(
ch
==
'E'
)
{
getNch
(
5
);
nothing_response
();
}
/* Enter programming mode */
else
if
(
ch
==
'P'
)
{
nothing_response
();
}
/* Leave programming mode */
else
if
(
ch
==
'Q'
)
{
nothing_response
();
#ifdef ADABOOT
// autoreset via watchdog (sneaky!) BBR/LF 9/13/2008
WDTCSR
=
_BV
(
WDE
);
while
(
1
);
// 16 ms
#endif
}
/* Erase device, don't care as we will erase one page at a time anyway. */
else
if
(
ch
==
'R'
)
{
nothing_response
();
}
/* Set address, little endian. EEPROM in bytes, FLASH in words */
/* Perhaps extra address bytes may be added in future to support > 128kB FLASH. */
/* This might explain why little endian was used here, big endian used everywhere else. */
else
if
(
ch
==
'U'
)
{
address
.
byte
[
0
]
=
getch
();
address
.
byte
[
1
]
=
getch
();
nothing_response
();
}
/* Universal SPI programming command, disabled. Would be used for fuses and lock bits. */
else
if
(
ch
==
'V'
)
{
getNch
(
4
);
byte_response
(
0x00
);
}
/* Write memory, length is big endian and is in bytes */
else
if
(
ch
==
'd'
)
{
length
.
byte
[
1
]
=
getch
();
length
.
byte
[
0
]
=
getch
();
flags
.
eeprom
=
0
;
if
(
getch
()
==
'E'
)
flags
.
eeprom
=
1
;
for
(
i
=
0
;
i
<
PAGE_SIZE
;
i
++
)
buff
[
i
]
=
0
;
for
(
w
=
0
;
w
<
length
.
word
;
w
++
)
{
// Store data in buffer, can't keep up with serial data stream whilst programming pages
buff
[
w
]
=
getch
();
}
if
(
getch
()
==
' '
)
{
if
(
flags
.
eeprom
)
{
//Write to EEPROM one byte at a time
for
(
w
=
0
;
w
<
length
.
word
;
w
++
)
{
while
(
EECR
&
(
1
<<
EEPE
));
EEAR
=
(
uint16_t
)(
void
*
)
address
.
word
;
EEDR
=
buff
[
w
];
EECR
|=
(
1
<<
EEMPE
);
EECR
|=
(
1
<<
EEPE
);
address
.
word
++
;
}
}
else
{
//address * 2 -> byte location
address
.
word
=
address
.
word
<<
1
;
//Even up an odd number of bytes
if
((
length
.
byte
[
0
]
&
0x01
))
length
.
word
++
;
// HACKME: EEPE used to be EEWE
//Wait for previous EEPROM writes to complete
//while(bit_is_set(EECR,EEPE));
while
(
EECR
&
(
1
<<
EEPE
));
asm
volatile
(
"clr r17
\n\t
"
//page_word_count
"lds r30,address
\n\t
"
//Address of FLASH location (in bytes)
"lds r31,address+1
\n\t
"
"ldi r28,lo8(buff)
\n\t
"
//Start of buffer array in RAM
"ldi r29,hi8(buff)
\n\t
"
"lds r24,length
\n\t
"
//Length of data to be written (in bytes)
"lds r25,length+1
\n\t
"
"length_loop:
\n\t
"
//Main loop, repeat for number of words in block
"cpi r17,0x00
\n\t
"
//If page_word_count=0 then erase page
"brne no_page_erase
\n\t
"
"wait_spm1:
\n\t
"
"lds r16,%0
\n\t
"
//Wait for previous spm to complete
"andi r16,1
\n\t
"
"cpi r16,1
\n\t
"
"breq wait_spm1
\n\t
"
"ldi r16,0x03
\n\t
"
//Erase page pointed to by Z
"sts %0,r16
\n\t
"
"spm
\n\t
"
"wait_spm2:
\n\t
"
"lds r16,%0
\n\t
"
//Wait for previous spm to complete
"andi r16,1
\n\t
"
"cpi r16,1
\n\t
"
"breq wait_spm2
\n\t
"
"ldi r16,0x11
\n\t
"
//Re-enable RWW section
"sts %0,r16
\n\t
"
"spm
\n\t
"
"no_page_erase:
\n\t
"
"ld r0,Y+
\n\t
"
//Write 2 bytes into page buffer
"ld r1,Y+
\n\t
"
"wait_spm3:
\n\t
"
"lds r16,%0
\n\t
"
//Wait for previous spm to complete
"andi r16,1
\n\t
"
"cpi r16,1
\n\t
"
"breq wait_spm3
\n\t
"
"ldi r16,0x01
\n\t
"
//Load r0,r1 into FLASH page buffer
"sts %0,r16
\n\t
"
"spm
\n\t
"
"inc r17
\n\t
"
//page_word_count++
"cpi r17,%1
\n\t
"
"brlo same_page
\n\t
"
//Still same page in FLASH
"write_page:
\n\t
"
"clr r17
\n\t
"
//New page, write current one first
"wait_spm4:
\n\t
"
"lds r16,%0
\n\t
"
//Wait for previous spm to complete
"andi r16,1
\n\t
"
"cpi r16,1
\n\t
"
"breq wait_spm4
\n\t
"
"ldi r16,0x05
\n\t
"
//Write page pointed to by Z
"sts %0,r16
\n\t
"
"spm
\n\t
"
"wait_spm5:
\n\t
"
"lds r16,%0
\n\t
"
//Wait for previous spm to complete
"andi r16,1
\n\t
"
"cpi r16,1
\n\t
"
"breq wait_spm5
\n\t
"
"ldi r16,0x11
\n\t
"
//Re-enable RWW section
"sts %0,r16
\n\t
"
"spm
\n\t
"
"same_page:
\n\t
"
"adiw r30,2
\n\t
"
//Next word in FLASH
"sbiw r24,2
\n\t
"
//length-2
"breq final_write
\n\t
"
//Finished
"rjmp length_loop
\n\t
"
"final_write:
\n\t
"
"cpi r17,0
\n\t
"
"breq block_done
\n\t
"
"adiw r24,2
\n\t
"
//length+2, fool above check on length after short page write
"rjmp write_page
\n\t
"
"block_done:
\n\t
"
"clr __zero_reg__
\n\t
"
//restore zero register
:
"=m"
(
SPMCSR
)
:
"M"
(
PAGE_SIZE
)
:
"r0"
,
"r16"
,
"r17"
,
"r24"
,
"r25"
,
"r28"
,
"r29"
,
"r30"
,
"r31"
);
}
putch
(
0x14
);
putch
(
0x10
);
}
else
{
if
(
++
error_count
==
MAX_ERROR_COUNT
)
app_start
();
}
}
/* Read memory block mode, length is big endian. */
else
if
(
ch
==
't'
)
{
length
.
byte
[
1
]
=
getch
();
length
.
byte
[
0
]
=
getch
();
if
(
getch
()
==
'E'
)
flags
.
eeprom
=
1
;
else
{
flags
.
eeprom
=
0
;
address
.
word
=
address
.
word
<<
1
;
// address * 2 -> byte location
}
// Command terminator
if
(
getch
()
==
' '
)
{
putch
(
0x14
);
for
(
w
=
0
;
w
<
length
.
word
;
w
++
)
{
// Can handle odd and even lengths okay
if
(
flags
.
eeprom
)
{
// Byte access EEPROM read
while
(
EECR
&
(
1
<<
EEPE
));
EEAR
=
(
uint16_t
)(
void
*
)
address
.
word
;
EECR
|=
(
1
<<
EERE
);
putch
(
EEDR
);
address
.
word
++
;
}
else
{
if
(
!
flags
.
rampz
)
putch
(
pgm_read_byte_near
(
address
.
word
));
address
.
word
++
;
}
}
putch
(
0x10
);
}
}
/* Get device signature bytes */
else
if
(
ch
==
'u'
)
{
if
(
getch
()
==
' '
)
{
putch
(
0x14
);
putch
(
SIG1
);
putch
(
SIG2
);
putch
(
SIG3
);
putch
(
0x10
);
}
else
{
if
(
++
error_count
==
MAX_ERROR_COUNT
)
app_start
();
}
}
/* Read oscillator calibration byte */
else
if
(
ch
==
'v'
)
byte_response
(
0x00
);
else
if
(
++
error_count
==
MAX_ERROR_COUNT
)
app_start
();
}
/* end of forever loop */
}
char
gethex
(
void
)
{
char
ah
,
al
;
ah
=
getch
();
putch
(
ah
);
al
=
getch
();
putch
(
al
);
if
(
ah
>=
'a'
)
ah
=
ah
-
'a'
+
0x0a
;
else
if
(
ah
>=
'0'
)
ah
-=
'0'
;
if
(
al
>=
'a'
)
al
=
al
-
'a'
+
0x0a
;
else
if
(
al
>=
'0'
)
al
-=
'0'
;
return
(
ah
<<
4
)
+
al
;
}
void
puthex
(
char
ch
)
{
char
ah
,
al
;
ah
=
(
ch
&
0xf0
)
>>
4
;
if
(
ah
>=
0x0a
)
ah
=
ah
-
0x0a
+
'a'
;
else
ah
+=
'0'
;
al
=
(
ch
&
0x0f
);
if
(
al
>=
0x0a
)
al
=
al
-
0x0a
+
'a'
;
else
al
+=
'0'
;
putch
(
ah
);
putch
(
al
);
}
void
putch
(
char
ch
)
{
while
(
!
(
UCSR0A
&
_BV
(
UDRE0
)));
UDR0
=
ch
;
}
char
getch
(
void
)
{
uint32_t
count
=
0
;
#ifdef ADABOOT
LED_PORT
&=
~
_BV
(
LED
);
// toggle LED to show activity - BBR/LF 10/3/2007 & 9/13/2008
#endif
while
(
!
(
UCSR0A
&
_BV
(
RXC0
)))
{
/* 20060803 DojoCorp:: Addon coming from the previous Bootloader*/
/* HACKME:: here is a good place to count times*/
count
++
;
if
(
count
>
MAX_TIME_COUNT
)
app_start
();
}
#ifdef ADABOOT
LED_PORT
|=
_BV
(
LED
);
// toggle LED to show activity - BBR/LF 10/3/2007 & 9/13/2008
#endif
return
UDR0
;
}
void
getNch
(
uint8_t
count
)
{
uint8_t
i
;
for
(
i
=
0
;
i
<
count
;
i
++
)
{
while
(
!
(
UCSR0A
&
_BV
(
RXC0
)));
UDR0
;
}
}
void
byte_response
(
uint8_t
val
)
{
if
(
getch
()
==
' '
)
{
putch
(
0x14
);
putch
(
val
);
putch
(
0x10
);
}
else
{
if
(
++
error_count
==
MAX_ERROR_COUNT
)
app_start
();
}
}
void
nothing_response
(
void
)
{
if
(
getch
()
==
' '
)
{
putch
(
0x14
);
putch
(
0x10
);
}
else
{
if
(
++
error_count
==
MAX_ERROR_COUNT
)
app_start
();
}
}
#ifdef ADABOOT
void
flash_led
(
uint8_t
count
)
{
/* flash onboard LED count times to signal entering of bootloader */
/* l needs to be volatile or the delay loops below might get */
/* optimized away if compiling with optimizations (DAM). */
volatile
uint32_t
l
;
if
(
count
==
0
)
{
count
=
ADABOOT
;
}
int8_t
i
;
for
(
i
=
0
;
i
<
count
;
++
i
)
{
LED_PORT
|=
_BV
(
LED
);
// LED on
for
(
l
=
0
;
l
<
(
F_CPU
/
1000
);
++
l
);
// delay NGvalue was 1000 for both loops - BBR
LED_PORT
&=
~
_BV
(
LED
);
// LED off
for
(
l
=
0
;
l
<
(
F_CPU
/
250
);
++
l
);
// delay asymmteric for ADA BOOT BBR
}
for
(
l
=
0
;
l
<
(
F_CPU
/
100
);
++
l
);
// pause ADA BOOT BBR
}
#else
void
flash_led
(
uint8_t
count
)
{
/* flash onboard LED three times to signal entering of bootloader */
/* l needs to be volatile or the delay loops below might get
optimized away if compiling with optimizations (DAM). */
volatile
uint32_t
l
;
if
(
count
==
0
)
{
count
=
3
;
}
int8_t
i
;
for
(
i
=
0
;
i
<
count
;
++
i
)
{
LED_PORT
|=
_BV
(
LED
);
for
(
l
=
0
;
l
<
(
F_CPU
/
1000
);
++
l
);
LED_PORT
&=
~
_BV
(
LED
);
for
(
l
=
0
;
l
<
(
F_CPU
/
1000
);
++
l
);
}
}
#endif
/* end of file ATmegaBOOT.c */
This diff is collapsed.
Click to expand it.
ArduinoAddons/Arduino_0.xx/Gen6/bootloaders/atmega644p/ATmegaBOOT_324P.hex
deleted
100644 → 0
View file @
1bd1a030
:10F800000C943E7C0C945B7C0C945B7C0C945B7C39
:10F810000C945B7C0C945B7C0C945B7C0C945B7C0C
:10F820000C945B7C0C945B7C0C945B7C0C945B7CFC
:10F830000C945B7C0C945B7C0C945B7C0C945B7CEC
:10F840000C945B7C0C945B7C0C945B7C0C945B7CDC
:10F850000C945B7C0C945B7C0C945B7C0C945B7CCC
:10F860000C945B7C0C945B7C0C945B7C0C945B7CBC
:10F870000C945B7C0C945B7C0C945B7C11241FBE11
:10F88000CFEFD8E0DEBFCDBF11E0A0E0B1E0E6E60B
:10F89000FFEF02C005900D92A030B107D9F712E03A
:10F8A000A0E0B1E001C01D92A930B107E1F70E94CC
:10F8B000537D0C94B27F0C94007CCF93DF93CDB733
:10F8C000DEB724970FB6F894DEBF0FBECDBF8823F6
:10F8D00009F481E020E0482F55274115510509F42E
:10F8E0003DC0289A19821A821B821C820BC0898112
:10F8F0009A81AB81BC810196A11DB11D89839A8338
:10F90000AB83BC8389819A81AB81BC8180589E4343
:10F91000A040B04060F3289819821A821B821C8292
:10F920000BC089819A81AB81BC810196A11DB11D5B
:10F9300089839A83AB83BC8389819A81AB81BC81A3
:10F9400080509A4FA040B04060F32F5F822F9927DC
:10F9500087FD9095841795070CF4C3CF19821A82FE
:10F960001B821C8289819A81AB81BC818050914726
:10F97000A240B040A0F489819A81AB81BC810196FC
:10F98000A11DB11D89839A83AB83BC8389819A8130
:10F99000AB81BC8180509147A240B04060F3249677
:10F9A0000FB6F894DEBF0FBECDBFDF91CF910895A3
:10F9B000EF92FF920F931F93EE24FF248701289864
:10F9C0008091C00087FD17C00894E11CF11C011D47
:10F9D000111D81E0E81689E0F8068DE3080780E054
:10F9E000180770F3E0910001F091010109958091F1
:10F9F000C00087FFE9CF289A8091C600992787FD2C
:10FA000090951F910F91FF90EF900895982F8091FE
:10FA1000C00085FFFCCF9093C60008950E94D87C5B
:10FA2000803271F0809102018F5F809302018530F6
:10FA300009F00895E0910001F09101010995089500
:10FA400084E10E94067D80E10E94067D0895CF93A7
:10FA5000C82F0E94D87C803241F0809102018F5FD4
:10FA600080930201853081F40AC084E10E94067D02
:10FA70008C2F0E94067D80E10E94067D05C0E091EA
:10FA80000001F09101010995CF910895282F90E090
:10FA900007C08091C0008823E4F78091C6009F5F73
:10FAA0009217B8F30895CFEFD8E0DEBFCDBF0000C6
:10FAB00094B714BE809160008861809360001092BA
:10FAC000600091FF74C189E18093C4001092C50069
:10FAD00088E18093C10086E08093C2005098589AD4
:10FAE000209A83E00E945D7C81E00E945D7C0E9400
:10FAF000D87C8033B9F18133C1F1803409F456C028
:10FB0000813409F45CC0823409F46EC0853409F490
:10FB100071C0803539F1813509F4F3C0823511F1B6
:10FB2000853509F4D3C0863509F4CBC0843609F491
:10FB300065C0843709F4EBC0853709F4D2C0863735
:10FB400009F44AC0809102018F5F809302018530E1
:10FB500071F6E0910001F091010109950E94D87CB5
:10FB6000803349F60E940E7DC2CF0E94D87CC82FF8
:10FB7000803241F784E10E94067D81E40E94067D87
:10FB800086E50E94067D82E50E94067D8C2F0E94FC
:10FB9000067D89E40E94067D83E50E94067D80E55E
:10FBA0000E94067D80E10E94067DA1CF0E94D87C44
:10FBB0008638C0F20E94D87C0E940E7D98CF0E94A9
:10FBC000D87C803809F407C1813809F400C1823833
:10FBD00009F4F9C0883921F080E00E94277D87CFA1
:10FBE00083E00E94277D83CF84E10E94467D0E94AE
:10FBF0000E7D7DCF85E00E94467DF9CF0E94D87CA6
:10FC0000809306020E94D87C8093050280910802AE
:10FC10008E7F809308020E94D87C853409F44BC003
:10FC2000E5E0F1E0119281E0E438F807D9F3D0F390
:10FC3000C0E0D0E0809105029091060218161906E6
:10FC400078F405E011E00E94D87CF80181938F01DF
:10FC500021968091050290910602C817D90798F362
:10FC60000E94D87C803209F06DCF8091080280FF1D
:10FC7000B6C0C0E0D0E02091050230910602121615
:10FC80001306B8F4E0910301F0910401A5E0B1E09E
:10FC9000F999FECFF2BDE1BD8D9180BDFA9AF99A36
:10FCA00031962196C217D30798F3F0930401E0939D
:10FCB000030184E175CF809108028160809308027E
:10FCC000AFCF84E00E94467D80E087CF0E94D87C41
:10FCD000809303010E94D87C809304010E940E7DD2
:10FCE00006CF0E94D87C803209F02CCF84E10E949C
:10FCF000067D8EE10E94067D85E90E94067D88E0F2
:10FD00004FCF0E940E7D88E080936000FFCF0E945D
:10FD1000D87C809306020E94D87C809305020E94C2
:10FD2000D87C853409F449C0809108028E7F809385
:10FD300008028091030190910401880F991F90930C
:10FD40000401809303010E94D87C803209F0CFCE59
:10FD500084E10E94067DC0E0D0E020910502309150
:10FD600006021216130608F01DCFE0910301F09170
:10FD700004018091080280FF96C0F999FECFF2BD80
:10FD8000E1BDF89A80B50E94067DE0910301F091F3
:10FD900004013196F0930401E093030120910502E0
:10FDA000309106022196C217D30718F3FBCEE091DB
:10FDB0000001F0910101099586CE809108028160D1
:10FDC00080930802C0CF80E10E94277D90CE81E021
:10FDD0000E94277D8CCE82E00E94277D88CE809174
:10FDE000030190910401880F991F9093040180935F
:10FDF00003018091050280FF09C080910502909166
:10FE0000060201969093060280930502F999FECFAF
:10FE10001127E0910301F0910401C5E0D1E0809148
:10FE2000050290910602103091F400915700017084
:10FE30000130D9F303E000935700E8950091570093
:10FE400001700130D9F301E100935700E895099062
:10FE500019900091570001700130D9F301E000932F
:10FE60005700E8951395103898F011270091570026
:10FE700001700130D9F305E000935700E895009137
:10FE8000570001700130D9F301E100935700E89564
:10FE90003296029709F0C7CF103011F00296E5CFE5
:10FEA000112484E17DCE869580FF06C03196F093C3
:10FEB0000401E093030176CF84910E94067D209196
:10FEC000050230910602E0910301F0910401EECFAA
:10FED0001F93CF930E94D87CC82F0E94067D0E945A
:10FEE000D87C182F0E94067DC1362CF0C7551136DC
:10FEF0003CF0175508C0C033D4F3C0531136CCF7CB
:10FF000010330CF01053C295C07FC10F8C2F99276E
:10FF100087FD9095CF911F910895CF93282F992712
:10FF200087FD9095807F907095958795959587959D
:10FF300095958795959587958A303CF0895AC22F7B
:10FF4000CF70CA303CF0C95A06C0805DC22FCF7056
:10FF5000CA30CCF7C05D0E94067D8C2F0E94067DC2
:06FF6000CF910895FFCFD0
:040000030000F80001
:00000001FF
This diff is collapsed.
Click to expand it.
ArduinoAddons/Arduino_0.xx/Gen6/bootloaders/atmega644p/ATmegaBOOT_644.hex
deleted
100644 → 0
View file @
1bd1a030
:10F800000C94387C0C94557C0C94557C0C94557C51
:10F810000C94557C0C94557C0C94557C0C94557C24
:10F820000C94557C0C94557C0C94557C0C94557C14
:10F830000C94557C0C94557C0C94557C0C94557C04
:10F840000C94557C0C94557C0C94557C0C94557CF4
:10F850000C94557C0C94557C0C94557C0C94557CE4
:10F860000C94557C0C94557C0C94557C0C94557CD4
:10F8700011241FBECFEFD0E1DEBFCDBF11E0A0E06D
:10F88000B1E0EAE5FFEF02C005900D92A030B107AC
:10F89000D9F712E0A0E0B1E001C01D92A930B10794
:10F8A000E1F70E944D7D0C94AC7F0C94007CCF93CB
:10F8B000DF93CDB7DEB724970FB6F894DEBF0FBE47
:10F8C000CDBF882309F481E020E0482F552741155A
:10F8D000510509F43DC0289A19821A821B821C82A4
:10F8E0000BC089819A81AB81BC810196A11DB11D9C
:10F8F00089839A83AB83BC8389819A81AB81BC81E4
:10F9000080589E43A040B04060F3289819821A8224
:10F910001B821C820BC089819A81AB81BC810196BC
:10F92000A11DB11D89839A83AB83BC8389819A8190
:10F93000AB81BC8180509A4FA040B04060F32F5FF4
:10F94000822F992787FD9095841795070CF4C3CFD4
:10F9500019821A821B821C8289819A81AB81BC81A7
:10F9600080509147A240B040A0F489819A81AB8138
:10F97000BC810196A11DB11D89839A83AB83BC8391
:10F9800089819A81AB81BC8180509147A240B0406F
:10F9900060F324960FB6F894DEBF0FBECDBFDF91A3
:10F9A000CF910895EF92FF920F931F93EE24FF24BF
:10F9B000870128988091C00087FD17C00894E11C3A
:10F9C000F11C011D111D81E0E81689E0F8068DE3A8
:10F9D000080780E0180770F3E0910001F091010141
:10F9E00009958091C00087FFE9CF289A8091C600D1
:10F9F000992787FD90951F910F91FF90EF900895A3
:10FA0000982F8091C00085FFFCCF9093C600089589
:10FA10000E94D27C803271F0809102018F5F8093CE
:10FA20000201853009F00895E0910001F091010193
:10FA30000995089584E10E94007D80E10E94007D87
:10FA40000895CF93C82F0E94D27C803241F08091DC
:10FA500002018F5F80930201853081F40AC084E146
:10FA60000E94007D8C2F0E94007D80E10E94007D1D
:10FA700005C0E0910001F09101010995CF91089531
:10FA8000282F90E007C08091C0008823E4F7809180
:10FA9000C6009F5F9217B8F30895CFEFD0E1DEBFA5
:10FAA000CDBF000094B714BE809160008861809340
:10FAB00060001092600091FF74C189E18093C400DE
:10FAC0001092C50088E18093C10086E08093C20057
:10FAD0005098589A209A83E00E94577C81E00E94B7
:10FAE000577C0E94D27C8033B9F18133C1F18034DC
:10FAF00009F456C0813409F45CC0823409F46EC044
:10FB0000853409F471C0803539F1813509F4F3C0C9
:10FB1000823511F1853509F4D3C0863509F4CBC09F
:10FB2000843609F465C0843709F4EBC0853709F4DD
:10FB3000D2C0863709F44AC0809102018F5F80935A
:10FB40000201853071F6E0910001F0910101099503
:10FB50000E94D27C803349F60E94087DC2CF0E9469
:10FB6000D27CC82F803241F784E10E94007D81E47D
:10FB70000E94007D86E50E94007D82E50E94007D56
:10FB80008C2F0E94007D89E40E94007D83E50E9405
:10FB9000007D80E50E94007D80E10E94007DA1CF74
:10FBA0000E94D27C8638C0F20E94D27C0E94087DDE
:10FBB00098CF0E94D27C803809F407C1813809F4BB
:10FBC00000C1823809F4F9C0883921F080E00E9430
:10FBD000217D87CF83E00E94217D83CF84E10E9435
:10FBE000407D0E94087D7DCF85E00E94407DF9CF59
:10FBF0000E94D27C809306020E94D27C80930502F0
:10FC0000809108028E7F809308020E94D27C853406
:10FC100009F44BC0E5E0F1E0119281E0E438F80727
:10FC2000D9F3D0F3C0E0D0E08091050290910602B4
:10FC30001816190678F405E011E00E94D27CF8014C
:10FC400081938F0121968091050290910602C81739
:10FC5000D90798F30E94D27C803209F06DCF809151
:10FC6000080280FFB6C0C0E0D0E0209105023091CC
:10FC7000060212161306B8F4E0910301F091040194
:10FC8000A5E0B1E0F999FECFF2BDE1BD8D9180BD57
:10FC9000FA9AF99A31962196C217D30798F3F093FE
:10FCA0000401E093030184E175CF80910802816033
:10FCB00080930802AFCF84E00E94407D80E087CF30
:10FCC0000E94D27C809303010E94D27C8093040125
:10FCD0000E94087D06CF0E94D27C803209F02CCF92
:10FCE00084E10E94007D8EE10E94007D86E90E94F1
:10FCF000007D89E04FCF0E94087D88E080936000FE
:10FD0000FFCF0E94D27C809306020E94D27C809317
:10FD100005020E94D27C853409F449C08091080212
:10FD20008E7F809308028091030190910401880FD7
:10FD3000991F90930401809303010E94D27C80322A
:10FD400009F0CFCE84E10E94007DC0E0D0E0209198
:10FD50000502309106021216130608F01DCFE0913D
:10FD60000301F09104018091080280FF96C0F99987
:10FD7000FECFF2BDE1BDF89A80B50E94007DE09112
:10FD80000301F09104013196F0930401E093030123
:10FD900020910502309106022196C217D30718F36D
:10FDA000FBCEE0910001F0910101099586CE809192
:10FDB0000802816080930802C0CF80E10E94217D0B
:10FDC00090CE81E00E94217D8CCE82E00E94217D38
:10FDD00088CE8091030190910401880F991F909320
:10FDE0000401809303018091050280FF09C0809186
:10FDF00005029091060201969093060280930502F7
:10FE0000F999FECF1127E0910301F0910401C5E0BB
:10FE1000D1E08091050290910602103091F400919A
:10FE2000570001700130D9F303E000935700E895C3
:10FE30000091570001700130D9F301E100935700A0
:10FE4000E895099019900091570001700130D9F39D
:10FE500001E000935700E8951395103898F01127AA
:10FE60000091570001700130D9F305E0009357006D
:10FE7000E8950091570001700130D9F301E100933A
:10FE80005700E8953296029709F0C7CF103011F06D
:10FE90000296E5CF112484E17DCE869580FF06C0D1
:10FEA0003196F0930401E093030176CF84910E9490
:10FEB000007D2091050230910602E0910301F0914E
:10FEC0000401EECF1F93CF930E94D27CC82F0E94D3
:10FED000007D0E94D27C182F0E94007DC1362CF03C
:10FEE000C75511363CF0175508C0C033D4F3C05382
:10FEF0001136CCF710330CF01053C295C07FC10FF0
:10FF00008C2F992787FD9095CF911F910895CF93BE
:10FF1000282F992787FD9095807F907095958795DC
:10FF20009595879595958795959587958A303CF019
:10FF3000895AC22FCF70CA303CF0C95A06C0805DC2
:10FF4000C22FCF70CA30CCF7C05D0E94007D8C2FCD
:0AFF50000E94007DCF910895FFCFBD
:040000030000F80001
:00000001FF
This diff is collapsed.
Click to expand it.
ArduinoAddons/Arduino_0.xx/Gen6/bootloaders/atmega644p/ATmegaBOOT_644P.hex
deleted
100644 → 0
View file @
1bd1a030
:10F800000C943E7C0C945B7C0C945B7C0C945B7C39
:10F810000C945B7C0C945B7C0C945B7C0C945B7C0C
:10F820000C945B7C0C945B7C0C945B7C0C945B7CFC
:10F830000C945B7C0C945B7C0C945B7C0C945B7CEC
:10F840000C945B7C0C945B7C0C945B7C0C945B7CDC
:10F850000C945B7C0C945B7C0C945B7C0C945B7CCC
:10F860000C945B7C0C945B7C0C945B7C0C945B7CBC
:10F870000C945B7C0C945B7C0C945B7C11241FBE11
:10F88000CFEFD0E1DEBFCDBF11E0A0E0B1E0E6E612
:10F89000FFEF02C005900D92A030B107D9F712E03A
:10F8A000A0E0B1E001C01D92A930B107E1F70E94CC
:10F8B000537D0C94B27F0C94007CCF93DF93CDB733
:10F8C000DEB724970FB6F894DEBF0FBECDBF8823F6
:10F8D00009F481E020E0482F55274115510509F42E
:10F8E0003DC0289A19821A821B821C820BC0898112
:10F8F0009A81AB81BC810196A11DB11D89839A8338
:10F90000AB83BC8389819A81AB81BC8180589E4343
:10F91000A040B04060F3289819821A821B821C8292
:10F920000BC089819A81AB81BC810196A11DB11D5B
:10F9300089839A83AB83BC8389819A81AB81BC81A3
:10F9400080509A4FA040B04060F32F5F822F9927DC
:10F9500087FD9095841795070CF4C3CF19821A82FE
:10F960001B821C8289819A81AB81BC818050914726
:10F97000A240B040A0F489819A81AB81BC810196FC
:10F98000A11DB11D89839A83AB83BC8389819A8130
:10F99000AB81BC8180509147A240B04060F3249677
:10F9A0000FB6F894DEBF0FBECDBFDF91CF910895A3
:10F9B000EF92FF920F931F93EE24FF248701289864
:10F9C0008091C00087FD17C00894E11CF11C011D47
:10F9D000111D81E0E81689E0F8068DE3080780E054
:10F9E000180770F3E0910001F091010109958091F1
:10F9F000C00087FFE9CF289A8091C600992787FD2C
:10FA000090951F910F91FF90EF900895982F8091FE
:10FA1000C00085FFFCCF9093C60008950E94D87C5B
:10FA2000803271F0809102018F5F809302018530F6
:10FA300009F00895E0910001F09101010995089500
:10FA400084E10E94067D80E10E94067D0895CF93A7
:10FA5000C82F0E94D87C803241F0809102018F5FD4
:10FA600080930201853081F40AC084E10E94067D02
:10FA70008C2F0E94067D80E10E94067D05C0E091EA
:10FA80000001F09101010995CF910895282F90E090
:10FA900007C08091C0008823E4F78091C6009F5F73
:10FAA0009217B8F30895CFEFD0E1DEBFCDBF0000CD
:10FAB00094B714BE809160008861809360001092BA
:10FAC000600091FF74C189E18093C4001092C50069
:10FAD00088E18093C10086E08093C2005098589AD4
:10FAE000209A83E00E945D7C81E00E945D7C0E9400
:10FAF000D87C8033B9F18133C1F1803409F456C028
:10FB0000813409F45CC0823409F46EC0853409F490
:10FB100071C0803539F1813509F4F3C0823511F1B6
:10FB2000853509F4D3C0863509F4CBC0843609F491
:10FB300065C0843709F4EBC0853709F4D2C0863735
:10FB400009F44AC0809102018F5F809302018530E1
:10FB500071F6E0910001F091010109950E94D87CB5
:10FB6000803349F60E940E7DC2CF0E94D87CC82FF8
:10FB7000803241F784E10E94067D81E40E94067D87
:10FB800086E50E94067D82E50E94067D8C2F0E94FC
:10FB9000067D89E40E94067D83E50E94067D80E55E
:10FBA0000E94067D80E10E94067DA1CF0E94D87C44
:10FBB0008638C0F20E94D87C0E940E7D98CF0E94A9
:10FBC000D87C803809F407C1813809F400C1823833
:10FBD00009F4F9C0883921F080E00E94277D87CFA1
:10FBE00083E00E94277D83CF84E10E94467D0E94AE
:10FBF0000E7D7DCF85E00E94467DF9CF0E94D87CA6
:10FC0000809306020E94D87C8093050280910802AE
:10FC10008E7F809308020E94D87C853409F44BC003
:10FC2000E5E0F1E0119281E0E438F807D9F3D0F390
:10FC3000C0E0D0E0809105029091060218161906E6
:10FC400078F405E011E00E94D87CF80181938F01DF
:10FC500021968091050290910602C817D90798F362
:10FC60000E94D87C803209F06DCF8091080280FF1D
:10FC7000B6C0C0E0D0E02091050230910602121615
:10FC80001306B8F4E0910301F0910401A5E0B1E09E
:10FC9000F999FECFF2BDE1BD8D9180BDFA9AF99A36
:10FCA00031962196C217D30798F3F0930401E0939D
:10FCB000030184E175CF809108028160809308027E
:10FCC000AFCF84E00E94467D80E087CF0E94D87C41
:10FCD000809303010E94D87C809304010E940E7DD2
:10FCE00006CF0E94D87C803209F02CCF84E10E949C
:10FCF000067D8EE10E94067D86E90E94067D8AE0EF
:10FD00004FCF0E940E7D88E080936000FFCF0E945D
:10FD1000D87C809306020E94D87C809305020E94C2
:10FD2000D87C853409F449C0809108028E7F809385
:10FD300008028091030190910401880F991F90930C
:10FD40000401809303010E94D87C803209F0CFCE59
:10FD500084E10E94067DC0E0D0E020910502309150
:10FD600006021216130608F01DCFE0910301F09170
:10FD700004018091080280FF96C0F999FECFF2BD80
:10FD8000E1BDF89A80B50E94067DE0910301F091F3
:10FD900004013196F0930401E093030120910502E0
:10FDA000309106022196C217D30718F3FBCEE091DB
:10FDB0000001F0910101099586CE809108028160D1
:10FDC00080930802C0CF80E10E94277D90CE81E021
:10FDD0000E94277D8CCE82E00E94277D88CE809174
:10FDE000030190910401880F991F9093040180935F
:10FDF00003018091050280FF09C080910502909166
:10FE0000060201969093060280930502F999FECFAF
:10FE10001127E0910301F0910401C5E0D1E0809148
:10FE2000050290910602103091F400915700017084
:10FE30000130D9F303E000935700E8950091570093
:10FE400001700130D9F301E100935700E895099062
:10FE500019900091570001700130D9F301E000932F
:10FE60005700E8951395103898F011270091570026
:10FE700001700130D9F305E000935700E895009137
:10FE8000570001700130D9F301E100935700E89564
:10FE90003296029709F0C7CF103011F00296E5CFE5
:10FEA000112484E17DCE869580FF06C03196F093C3
:10FEB0000401E093030176CF84910E94067D209196
:10FEC000050230910602E0910301F0910401EECFAA
:10FED0001F93CF930E94D87CC82F0E94067D0E945A
:10FEE000D87C182F0E94067DC1362CF0C7551136DC
:10FEF0003CF0175508C0C033D4F3C0531136CCF7CB
:10FF000010330CF01053C295C07FC10F8C2F99276E
:10FF100087FD9095CF911F910895CF93282F992712
:10FF200087FD9095807F907095958795959587959D
:10FF300095958795959587958A303CF0895AC22F7B
:10FF4000CF70CA303CF0C95A06C0805DC22FCF7056
:10FF5000CA30CCF7C05D0E94067D8C2F0E94067DC2
:06FF6000CF910895FFCFD0
:040000030000F80001
:00000001FF
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment