From 7ef00382093ca77afae66a759452d7ba66759ec8 Mon Sep 17 00:00:00 2001 From: ole00 Date: Sun, 4 Feb 2024 23:36:45 +0000 Subject: [PATCH] sketch: ensure sparse fusemap is enabled only for ATF750C --- afterburner.ino | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/afterburner.ino b/afterburner.ino index 6358daf..8b3dae0 100644 --- a/afterburner.ino +++ b/afterburner.ino @@ -661,16 +661,20 @@ void setup() { Serial.println(">"); } +static void sparseSetup(char clearArray){ + // Note: Sparse fuse map is ignored on MCUs with big SRAM + if (gal == ATF750C) { + sparseInit(clearArray); + } else { + sparseDisable(); + } +} + //copy galinfo item from the flash array into RAM backed struct static void copyGalInfo(void) { memcpy_P(&galinfo, &galInfoList[gal], sizeof(galinfo_t)); - // Note: Sparse fuse map is ignored on MCUs with big SRAM - if (gal == ATF750C || gal == ATF22V10C) { - sparseInit(0); - } else { - sparseDisable(); - } + sparseSetup(0); } // read from serial line and discard the data @@ -1997,7 +2001,7 @@ static void readOrVerifyGal(char verify) for (i = 0; i < MAXFUSES; i++) { fusemap[i] = 0; } - sparseInit(1); + sparseSetup(1); } turnOn(READGAL); @@ -2872,7 +2876,7 @@ void loop() { for (i = 0; i < MAXFUSES; i++) { fusemap[i] = 0; } - sparseInit(1); + sparseSetup(1); isUploading = 1; uploadError = 0; } break;