From abbe828f81b0b9c605fd25df6c57a79eda200190 Mon Sep 17 00:00:00 2001 From: WestfW Date: Tue, 27 Aug 2019 23:39:25 -0700 Subject: [PATCH] oops. Last commit had a bug or two, and while every .hex file tha built matched the prvious verion, some of them didn't build at all. --- optiboot/bootloaders/optiboot/optiboot.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/optiboot/bootloaders/optiboot/optiboot.c b/optiboot/bootloaders/optiboot/optiboot.c index 4148593..7b2c836 100644 --- a/optiboot/bootloaders/optiboot/optiboot.c +++ b/optiboot/bootloaders/optiboot/optiboot.c @@ -829,7 +829,7 @@ int main(void) { #if FLASHEND > (128*1024) #error "Can't use VIRTUAL_BOOT_PARTITION with more than 128k of Flash" #endif - if (address.word == RSTVECT_ADDRESS) { + if (address.word == RSTVEC_ADDRESS) { // This is the reset vector page. We need to live-patch the // code so the bootloader runs first. // @@ -846,20 +846,21 @@ int main(void) { // the save_vector is not necessarilly on the same flash page as the reset // vector. If it isn't, we've waiting to actually write it. } else if (address.word == SAVVEC_ADDRESS) { - saveVect0_sav = saveVect1_sav = buff.bptr[saveVect-SAVVEC_ADDRESS]; + saveVect0_sav = buff.bptr[saveVect0 - SAVVEC_ADDRESS]; + saveVect1_sav = buff.bptr[saveVect1 - SAVVEC_ADDRESS]; - // Move RESET jmp target to 'save' vector - buff.bptr[saveVect0 - SAVVEC_ADDRESS] = rstVect0_sav; - buff.bptr[saveVect1 - SAVVEC_ADDRESS] = rstVect1_sav; - } + // Move RESET jmp target to 'save' vector + buff.bptr[saveVect0 - SAVVEC_ADDRESS] = rstVect0_sav; + buff.bptr[saveVect1 - SAVVEC_ADDRESS] = rstVect1_sav; + } #else saveVect0_sav = buff.bptr[saveVect0]; - saveVect1_sav = buff.bptr[saveVect1]; + saveVect1_sav = buff.bptr[saveVect1]; // Move RESET jmp target to 'save' vector buff.bptr[saveVect0] = rstVect0_sav; buff.bptr[saveVect1] = rstVect1_sav; - } + } #endif #else