X-Git-Url: http://gitweb.hugovil.com/?a=blobdiff_plain;f=src%2Fapp-config.c;h=90022f24c4c338a930a18a56bb41cedcedb5855b;hb=98b757f83d9e4be02e9373f3279d432d3f7113f5;hp=15bed2b822a2e3ab061a17f870f604203b2b7dd9;hpb=9cddfd237c6aff9a7a05c637ef7eac3b57580c31;p=emu8051.git diff --git a/src/app-config.c b/src/app-config.c index 15bed2b..90022f2 100644 --- a/src/app-config.c +++ b/src/app-config.c @@ -55,6 +55,14 @@ app_config_init(void) cfg->win_height = 480; cfg->hpane_pos = 100; cfg->vpane_pos = 200; + cfg->main_pane_pos = 200; + + /* View menu options */ + cfg->layout = UI_LAYOUT1; + cfg->view_int_memory = 1; + cfg->view_sfr_memory = 1; + cfg->view_ext_memory = 1; + cfg->bits_per_row = 16; /* 8 or 16 */ } static int @@ -62,17 +70,11 @@ app_config_key_file_get_int(GKeyFile *kf, const char *grp, const char *key, int { char *str = g_key_file_get_value(kf, grp, key, NULL); -#ifdef EMU8051_DEBUG - printf("key: %s\n", key); -#endif + log_debug("key: %s", key); if (G_LIKELY(str)) { *value = atoi(str); - -#ifdef EMU8051_DEBUG - printf(" value = %d\n", *value); -#endif - + log_debug(" value = %d", *value); g_free(str); } @@ -91,6 +93,23 @@ app_config_load_from_key_file(GKeyFile *kf) app_config_key_file_get_int(kf, "ui", "win_height", &cfg->win_height); app_config_key_file_get_int(kf, "ui", "hpane_pos", &cfg->hpane_pos); app_config_key_file_get_int(kf, "ui", "vpane_pos", &cfg->vpane_pos); + app_config_key_file_get_int(kf, "ui", "main_pane_pos", + &cfg->main_pane_pos); + + /* View */ + app_config_key_file_get_int(kf, "view", "layout", &cfg->layout); + if ((cfg->layout != UI_LAYOUT1) && (cfg->layout != UI_LAYOUT2)) { + log_err("Invalid layout, defaulting to layout 1"); + cfg->layout = UI_LAYOUT1; + } + app_config_key_file_get_int(kf, "view", "int_memory", + &cfg->view_int_memory); + app_config_key_file_get_int(kf, "view", "sfr_memory", + &cfg->view_sfr_memory); + app_config_key_file_get_int(kf, "view", "ext_memory", + &cfg->view_ext_memory); + app_config_key_file_get_int(kf, "view", "bits_per_row", + &cfg->bits_per_row); } static char * @@ -117,9 +136,7 @@ app_config_get_file_path(void) file_path = g_build_filename(dir_path, file, NULL); -#ifdef EMU8051_DEBUG - printf("app. config file = %s\n", file_path); -#endif + log_info("app. config file = %s", file_path); g_free(dir_path); @@ -173,6 +190,19 @@ app_config_save(void) g_string_append_printf(buf, "win_height=%d\n", cfg->win_height); g_string_append_printf(buf, "hpane_pos=%d\n", cfg->hpane_pos); g_string_append_printf(buf, "vpane_pos=%d\n", cfg->vpane_pos); + g_string_append_printf(buf, "main_pane_pos=%d\n", + cfg->main_pane_pos); + + g_string_append(buf, "\n[view]\n"); + g_string_append_printf(buf, "layout=%d\n", cfg->layout); + g_string_append_printf(buf, "int_memory=%d\n", + cfg->view_int_memory); + g_string_append_printf(buf, "sfr_memory=%d\n", + cfg->view_sfr_memory); + g_string_append_printf(buf, "ext_memory=%d\n", + cfg->view_ext_memory); + g_string_append_printf(buf, "bits_per_row=%d\n", + cfg->bits_per_row); file_path = app_config_get_file_path();