extend "spminterface.h" for support of multiple ATmegas
[pub/USBaspLoader.git] / firmware / bootloaderconfig.h
index 9525aad..97311dd 100644 (file)
@@ -93,12 +93,15 @@ these macros are defined, the boot loader usees them.
  * to erase itself from the bootregion
  */
 
-#define HAVE_BLB11_SOFTW_BACKDOOR    1
+#define HAVE_SPMINTEREFACE         1
 /*
- * When "HAVE_BLB11_SOFTW_LOCKBIT" is enabled, this backdor will allow writing
- * to the BLS while JUMPER stays low. (keeps be pressed)
- * If JUMPER is released (and after a short debouncing period) repressing it
- * will have NO affect on disabling the writelock.
+ * Since code within normal section of application memory (rww-section) is
+ * not able to call spm for programming flash-pages, this option (when
+ * enabled) will insert a small subroutine into the bootloader-section
+ * to enable applications to circumvent this limitation and make them
+ * able to program the flash in a similar way as the bootloader does, too.
+ * For further details see "spminterface.h", which implements this 
+ * feature.
  */
 
 #define HAVE_EEPROM_PAGED_ACCESS    1
@@ -162,7 +165,8 @@ these macros are defined, the boot loader usees them.
 
 static inline void  bootLoaderInit(void)
 {
-    PORTD |= (1 << JUMPER_BIT);     /* activate pull-up */
+    DDRD   = 0;
+    PORTD  = (1 << JUMPER_BIT);     /* activate pull-up */
 //     deactivated by Stephan - reset after each avrdude op is annoing!
 //     if(!(MCUCSR & (1 << EXTRF)))    /* If this was not an external reset, ignore */
 //         leaveBootloader();