Example #1
0
// read global config from eeprom, if MAGICs changed, set to defaults
// returns 1 if calibration values was set to defaults
u8 config_global_read(void) {
    u8 calib_changed = 0;

    eeprom_read_global();
    if (config_global.magic_global != CONFIG_GLOBAL_MAGIC) {
	// global config changed, initialize whole eeprom
	eeprom_empty_models();
	calib_changed = config_global_set_default();
	// do not write magic_global yet to eliminate interrupted initialization
	//   (for example flash-verify after flash-write in STVP)
	config_global.magic_global = 0;
	config_global_save();
	// and now as last set magic_global
	config_global.magic_global = CONFIG_GLOBAL_MAGIC;
	config_global_save();
    }
    else if (config_global.magic_model != CONFIG_MODEL_MAGIC) {
	// model config changed, empty all models
	eeprom_empty_models();
	// set model number to 0
	config_global.model = 0;
	config_global_save();
	// set new model magic
	config_global.magic_model = CONFIG_MODEL_MAGIC;
	config_global_save();
    }

    return calib_changed;
}
Example #2
0
static void gs_reset_all(u8 change) {
    if (change == 0xff) {
	lcd_set(L7SEG, LB_EMPTY);
	if (gs_reset_flag) {
	    gs_reset_flag = 0;
	    config_global_set_default();
	    config_global_save();
	    eeprom_empty_models();
	    menu_load_model();
	}
	return;
    }
    if (change)  gs_reset_flag ^= 1;
    lcd_7seg(L7_R);
    if (gs_reset_flag)	lcd_chars("YES");
    else		lcd_chars("ALL");
}