It adds generic support for devices with more than 128KB flash.
Also MEGA 2560 is included as valid target.
It needs Avrdude 6.1 or at least patch from
http://savannah.nongnu.org/bugs/?40897 for ealier versions.
compile Optiboot. This has "projects" for xplained168pb, xplained328p, and
xplained328pb, but they simply invoke the normal optiboot makefile, and so
can be easily edited for other targets.
* Added override of 'save_vect_num' on Attiny84 target as
WDT_vect_num isn't defined on old avr-gcc (shipped with
Arduino 1.0.x)
* Added workaround for avr-gcc bug #6019
* Changed interrupt vector to save original jump. Now uses SPM_Ready
instead of watchdog's.
* Rewrite/fix 'rjmp' part to use and calculate correctly on all 12 bits
of address.
* Added 'virboot8' test target to Makefile with Virtboot on Atmega8.
Optiboot is licensed under GPLv2
(Since a bootloader can be updated orthoganally to application code
in a microcontroller, this does NOT mean that applications using
optiboot also need to be GPL'ed.)
https://github.com/Optiboot/optiboot/issues/119
https://code.google.com/p/optiboot/issues/detail?id=110
Make the "length" variable types be dependent on SPM_PAGESIZE.
Having it be uint8_t on smaller chips saves significant code
space, but it really should be uint16_t on bigger chips.
(Also, fix the luminet makefile target. Not that the code works.)
/* Remove serial/flash overlap */
/* (and all references to NRWWSTART/etc) */
/* Correctly handle pagesize > 255bytes */
/* Add EEPROM support in BIGBOOT (1284) */
/* EEPROM write on small chips now causes err */
/* Split Makefile into smaller pieces */
/* Add Wicked devices Wildfire */
/* Move UART=n conditionals into pin_defs.h */
/* Remove LUDICOUS_SPEED option */
/* Replace inline assembler for .version */
/* and add OPTIBOOT_CUSTOMVER for user code */
/* Fix LED value for Bobuino (Makefile) */
/* Make all functions explicitly inline or */
/* noinline, so we fit when using gcc4.8 */
/* Change optimization options for gcc4.8 */
/* Make ENV=arduino work in 1.5.x trees. */
it uses some pretty "edgey" compiler/makefile capabilities. This
patch causes Make to ignore errors (and procede anyway) if there are
errors in the baudcheck part of the build.
so that the user can see whether it's going to be reasonably
accurate or not. There are two parts to this:
1) Use of #error and #warning in optiboot.c, for when the error is large.
2) Since you can't get the compiler to spit out actual numbers, create a
new target "baudcheck" that does. This is somewhat complicated by the
possibile non-availability of the usual development tools in the user
environment, so baudcheck.c is run through the avr-gcc preprocessor, and
produces a shell script.
http://code.google.com/p/optiboot/issues/detail?id=79
Now that there's a prior "version" demonstrating identical
binaries, update to 5.0 so we can tell whether anyone uses it.
This causes much churn in the .hex and .lst files, even though
only the version number has changed.
Also, add some entries to boards.txt and update it with
build.variant lines for post IDE 1.0.2 (may no longer work
with older versions of the IDE.)
Remove the optiboot_lilypad_resonator .hex and .lst, since they
should be identical to optiboot_lilypad (only fuses change.)