Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
* with up to 15 opcodes within BLS.
* This array will be called "bootloader__do_spm", and implements the
* "do_spm" subroutine from atmels "Instruction Set Manual" Rev.0856I, page 140.
* with up to 15 opcodes within BLS.
* This array will be called "bootloader__do_spm", and implements the
* "do_spm" subroutine from atmels "Instruction Set Manual" Rev.0856I, page 140.
- * If additionally "HAVE_BLB11_SOFTW_BACKDOOR" is enabled, the array will just
- * contain "NOP()" instructions, since other code can be flashed into via
- * backdoor.
*
do_spm:
;input: spmcrval determines SPM action
*
do_spm:
;input: spmcrval determines SPM action
-#if HAVE_BLB11_SOFTW_BACKDOOR
- const uint16_t bootloader__do_spm[15] PROGMEM = {0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000};
-#else
/*
do_spm:
;input: spmcrval determines SPM action
/*
do_spm:
;input: spmcrval determines SPM action
ret
*/
#if defined (__AVR_ATmega8__)
ret
*/
#if defined (__AVR_ATmega8__)
- const uint16_t bootloader__do_spm[15] PROGMEM = {0xb68f , 0x94f8, 0xb677, 0xfc70, 0xcffd, 0xbe97, 0x95e8, 0xbe8f, 0x9508, 0x00, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF};
+ const uint16_t bootloader__do_spm[15] PROGMEM = {0xb68f , 0x94f8, 0xb677, 0xfc70, 0xcffd, 0xbe97, 0x95e8, 0xbe8f, 0x9508, 0x00, 0xFFFF, 0x95e8, 0x9508, 0x0000, 0xFFFF};
#else
#error "bootloader__do_spm has to be adapted, since there is no guaranty for SREG==0x3f, SPMCR==0x37, SPMEN==0x00"
#endif
#endif
#else
#error "bootloader__do_spm has to be adapted, since there is no guaranty for SREG==0x3f, SPMCR==0x37, SPMEN==0x00"
#endif
#endif