[gnoduino: 117/237] fixed bug where sketches over 28k caused subsequent auto-reset-and-upload attempts to fail. fixed b



commit 29d88309aedc76f75c6814931eaa046ddd2f8944
Author: Zach Eveland <zeveland blacklabel-development com>
Date:   Thu Sep 8 19:31:18 2011 -0400

    fixed bug where sketches over 28k caused subsequent auto-reset-and-upload attempts to fail.  fixed bug in reboot routine, changed fuses to select 1024-word bootloader size, disabled hardware boot enable.

 arduino/boards.txt            |    6 +++---
 arduino/cores/arduino/CDC.cpp |   10 +---------
 2 files changed, 4 insertions(+), 12 deletions(-)
---
diff --git a/arduino/boards.txt b/arduino/boards.txt
index 10a74f1..87ca07d 100644
--- a/arduino/boards.txt
+++ b/arduino/boards.txt
@@ -5,12 +5,12 @@ leonardo.upload.protocol=arduino
 leonardo.upload.maximum_size=30720
 leonardo.upload.speed=1200
 leonardo.bootloader.low_fuses=0xde
-leonardo.bootloader.high_fuses=0xd8
-leonardo.bootloader.extended_fuses=0xf3
+leonardo.bootloader.high_fuses=0xda
+leonardo.bootloader.extended_fuses=0xcb
 leonardo.bootloader.path=diskloader
 leonardo.bootloader.file=DiskLoader.hex
 leonardo.bootloader.unlock_bits=0x3F
-leonardo.bootloader.lock_bits=0x0F
+leonardo.bootloader.lock_bits=0x2F
 leonardo.build.mcu=atmega32u4
 leonardo.build.f_cpu=16000000L
 leonardo.build.core=arduino
diff --git a/arduino/cores/arduino/CDC.cpp b/arduino/cores/arduino/CDC.cpp
index 5059cec..14a0eae 100644
--- a/arduino/cores/arduino/CDC.cpp
+++ b/arduino/cores/arduino/CDC.cpp
@@ -23,19 +23,11 @@
 #if defined(USBCON)
 #ifdef CDC_ENABLED
 
-//	TODO: Should really use the wdt here
-//	Not currently working for a non-obvious reason
-
-typedef void (*AppPtr_t)(void) __attribute__ ((noreturn)); 
-AppPtr_t Bootloader = (AppPtr_t)(30*1024); 
-
 void Reboot()
 {
 	USB.detach();
 	cli();
-	Bootloader();
-	//wdt_enable(WDTO_15MS);
-	//while(1);	// reboot
+	asm volatile("jmp 0x7800");		// jump to bootloader - DiskLoader takes up last 2 kB
 }
 
 typedef struct



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]