// if(addr > 0x0fff) return -1; // Address error
if(page > USER_MEMORY_BANKS) return -1; // Address Error
p = &freqset_temp;
- c = i2c_eeprom_burstread(0xa0, addr, (unsigned char *)p, sizeof(__freqset_t));
+ c = i2c_eeprom_burstread(I2CEEPROM_ADDR, addr, (unsigned char *)p, sizeof(__freqset_t));
// Pass 1 Read OK?
if(c == 0x00) return -2;
// Pass 1 check magic
sum = calcsum_frequencies(&freqset, 0xa5a5);
freqset.checksum = sum;
// Pass 1 write to rom.
- c = i2c_eeprom_burstwrite(0xa0, addr, (unsigned char *)p, sizeof(__freqset_t));
+ c = i2c_eeprom_burstwrite(I2CEEPROM_ADDR, addr, (unsigned char *)p, sizeof(__freqset_t));
return;
}
sum = calcsum_frequencies(&freqset_temp, 0xa5a5);
freqset_temp.checksum = sum;
- i = i2c_eeprom_burstwrite(0xa0, (page << 7)+ 512, (unsigned char *)(&freqset_temp), sizeof(__freqset_t));
+ i = i2c_eeprom_burstwrite(I2CEEPROM_ADDR, (page << 7)+ 512, (unsigned char *)(&freqset_temp), sizeof(__freqset_t));
}
void check_frequencies(void)
/*
* Check eeprom, and format/restore.
*/
+static void check_eeprom_sub(void)
+{
+ _CLS();
+ _LOCATE(0,0);
+ printstr("Formatting... ");
+ format_eeprom(2,250);
+ _LOCATE(0,0);
+ printstr("Save defaults ");
+ setdefault();
+ save_eeprom();
+}
+
+
void check_eeprom(void)
{
unsigned char c;
case 0x01: // No magic-word
idle_time_ms(2000);
c = printhelp_2lines("EEPROM FORMAT", "Press any key");
- _CLS();
- _LOCATE(0,0);
- printstr("Formatting... ");
- format_eeprom(2,250);
- _LOCATE(0,0);
- printstr("Save defaults ");
- setdefault();
- save_eeprom();
+ check_eeprom_sub();
break;
case 0x00: // Checksum error
idle_time_ms(2000);
c = printhelp_2lines("X-) Sum error", "Press any key");
- c = pollkey_single();
- _CLS();
- _LOCATE(0,0);
- printstr("Formatting...");
- format_eeprom(2,250);
- _LOCATE(0,0);
- printstr("Save defaults");
- setdefault();
- save_eeprom();
+ check_eeprom_sub();
break;
case 0xff: // Success
check_frequencies();