diff options
Diffstat (limited to 'opgui.c')
-rw-r--r-- | opgui.c | 29 |
1 files changed, 18 insertions, 11 deletions
@@ -2,7 +2,7 @@ * \file opgui.c * main control program for the open programmer * - * Copyright (C) 2009-2023 Alberto Maccioni + * Copyright (C) 2009-2025 Alberto Maccioni * for detailed info see: * http://openprog.altervista.org/ * @@ -50,7 +50,7 @@ int IOTimer=0; int skipV33check=0; int waitS1=0,waitingS1=0; int progress=0; - +int useSAFLOCK_flag=0; #ifdef DEBUG int addrDebug=0; unsigned short dataDebug=0; @@ -79,6 +79,7 @@ GtkWidget * EEPROM_RW; GtkWidget * ReadReserved; GtkWidget * Write_ID_BKCal; GtkWidget * WriteCalib12; +GtkWidget * UseSaflock; GtkWidget * UseOSCCAL; GtkWidget * UseBKOSCCAL; GtkWidget * UseFileCal; @@ -214,7 +215,7 @@ void info(GtkWidget *widget,GtkWidget *window) //"authors","Alberto Maccioni",NULL, "comments", "A graphical interface for the Open Programmer", "copyright", - "Copyright (C) Alberto Maccioni 2009-2023\n\n" + "Copyright (C) Alberto Maccioni 2009-2025\n\n" "This program is free software; you can \n" "redistribute it and/or modify it under \n" "the terms of the GNU General Public License \n" @@ -282,7 +283,10 @@ void getOptions() programID = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(Write_ID_BKCal)); max_err=atoi(gtk_entry_get_text(GTK_ENTRY(Errors_entry))); load_calibword= gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(WriteCalib12)); - load_osccal= gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(UseOSCCAL)); + useSAFLOCK_flag= gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(UseSaflock)); + //load_osccal means load from file so it is the opposite of "OSCCal" setting + //no need to check FileCal + load_osccal= !(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(UseOSCCAL))); load_BKosccal= gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(UseBKOSCCAL)); ICDenable= gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(ICD_check)); readRes= gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(ReadReserved)); @@ -429,9 +433,9 @@ void Fopen(GtkWidget *widget,GtkWidget *window) filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); if(cur_path) free(cur_path); cur_path = gtk_file_chooser_get_current_folder(dialog); - Load(dev,filename); + Load(devType,filename); g_free (filename); - if(!strncmp(dev,"AT",2)){ //load EEPROM from separate file for ATMEL chips + if(devType==AVR){ //load EEPROM from separate file for ATMEL chips GtkFileChooser *dialog2; dialog2 = (GtkFileChooser*) gtk_file_chooser_dialog_new (strings[S_openEEfile], GTK_WINDOW(window), @@ -446,7 +450,7 @@ void Fopen(GtkWidget *widget,GtkWidget *window) filename2 = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog2)); if(cur_pathEE) free(cur_pathEE); cur_pathEE = gtk_file_chooser_get_current_folder(dialog2); - LoadEE(dev,filename2); + LoadEE(devType,filename2); g_free (filename2); } gtk_widget_destroy(GTK_WIDGET(dialog2)); @@ -476,10 +480,10 @@ void Fsave(GtkWidget *widget,GtkWidget *window) filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); if(cur_path) free(cur_path); cur_path = gtk_file_chooser_get_current_folder(dialog); - Save(dev,filename); + Save(devType,filename); PrintMessage1(strings[S_FileSaved],filename); g_free (filename); - if(!strncmp(dev,"AT",2)&&sizeEE){ //save EEPROM on separate file for ATMEL chips + if(devType==AVR){ //save EEPROM on separate file for ATMEL chips GtkFileChooser *dialog2; dialog2 = (GtkFileChooser*) gtk_file_chooser_dialog_new (strings[S_saveEEfile], GTK_WINDOW(window), @@ -495,7 +499,7 @@ void Fsave(GtkWidget *widget,GtkWidget *window) filename2 = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog2)); if(cur_pathEE) free(cur_pathEE); cur_pathEE = gtk_file_chooser_get_current_folder(dialog2); - SaveEE(dev,filename2); + SaveEE(devType,filename2); PrintMessage1(strings[S_FileSaved],filename2); g_free (filename2); } @@ -665,6 +669,7 @@ void onDevSel_Changed(GtkWidget *widget,GtkWidget *window) gtk_widget_show_all(GTK_WIDGET(devPIC_CW6)); gtk_widget_show_all(GTK_WIDGET(devPIC_CW7)); gtk_widget_show_all(GTK_WIDGET(devPIC_CW8)); + gtk_widget_show_all(GTK_WIDGET(devPIC_CW8)); } } else{ @@ -1462,6 +1467,8 @@ int main( int argc, char *argv[]) gtk_button_set_label(GTK_BUTTON(Write_ID_BKCal),strings[I_ID_BKo_W]); //"Write ID and BKOscCal" WriteCalib12 = GTK_WIDGET(gtk_builder_get_object(builder,"PROG_CAL12")); gtk_button_set_label(GTK_BUTTON(WriteCalib12),strings[I_CalW]); //"Write Calib 1 and 2" + UseSaflock = GTK_WIDGET(gtk_builder_get_object(builder,"USE_SAFLOCK")); + gtk_button_set_label(GTK_BUTTON(UseSaflock),strings[I_Saflock]); //"Use SAFLOCK" gtk_label_set_text(GTK_LABEL(GTK_WIDGET(gtk_builder_get_object(builder,"OSCCAL_L"))),strings[I_OSCW]); //"Write OscCal" UseOSCCAL = GTK_WIDGET(gtk_builder_get_object(builder,"OSCCAL")); gtk_button_set_label(GTK_BUTTON(UseOSCCAL),strings[I_OSC]); //"OSCCal" @@ -1701,7 +1708,7 @@ int main( int argc, char *argv[]) //------status bar------------- status_bar = GTK_WIDGET(gtk_builder_get_object(builder,"STATUS_B")); statusID=gtk_statusbar_get_context_id(GTK_STATUSBAR(status_bar),"ID"); - //printf("load time: %dms\n",GetTickCount()-t0);fflush(stdout); + //printf("%dms> show window\n",GetTickCount()-t0);fflush(stdout); gtk_widget_show_all(window); //********Init************* |