summaryrefslogtreecommitdiffstats
path: root/opgui.c
diff options
context:
space:
mode:
Diffstat (limited to 'opgui.c')
-rw-r--r--opgui.c29
1 files changed, 18 insertions, 11 deletions
diff --git a/opgui.c b/opgui.c
index c93dc86..b935466 100644
--- a/opgui.c
+++ b/opgui.c
@@ -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*************