summaryrefslogtreecommitdiff
path: root/apps/settings.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/settings.c')
-rw-r--r--apps/settings.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/apps/settings.c b/apps/settings.c
index 3c56257db4..b2fa22170b 100644
--- a/apps/settings.c
+++ b/apps/settings.c
@@ -103,6 +103,7 @@ offset abs
1030x1a 0x2e <time until disk spindown> 1030x1a 0x2e <time until disk spindown>
1040x1b 0x2f <browse current, play selected, recursive dir insert> 1040x1b 0x2f <browse current, play selected, recursive dir insert>
1050x1c 0x30 <peak meter hold timeout (bit 0-4), 1050x1c 0x30 <peak meter hold timeout (bit 0-4),
106 flip_display (bit 6)
106 rec_editable (bit 7)> 107 rec_editable (bit 7)>
1070x1d 0x31 <(int) Resume shuffle seed, or -1 if no shuffle> 1080x1d 0x31 <(int) Resume shuffle seed, or -1 if no shuffle>
1080x21 0x35 <repeat mode (bit 0-1), rec. channels (bit 2), 1090x21 0x35 <repeat mode (bit 0-1), rec. channels (bit 2),
@@ -362,6 +363,7 @@ int settings_save( void )
362 ((global_settings.recursive_dir_insert & 3) << 2)); 363 ((global_settings.recursive_dir_insert & 3) << 2));
363 364
364 config_block[0x1c] = (unsigned char)global_settings.peak_meter_hold | 365 config_block[0x1c] = (unsigned char)global_settings.peak_meter_hold |
366 (global_settings.flip_display ? 0x40 : 0) |
365 (global_settings.rec_editable?0x80:0); 367 (global_settings.rec_editable?0x80:0);
366 368
367 memcpy(&config_block[0x1d], &global_settings.resume_seed, 4); 369 memcpy(&config_block[0x1d], &global_settings.resume_seed, 4);
@@ -516,6 +518,9 @@ void settings_apply(void)
516 518
517#ifdef HAVE_LCD_BITMAP 519#ifdef HAVE_LCD_BITMAP
518 lcd_set_invert_display(global_settings.invert); 520 lcd_set_invert_display(global_settings.invert);
521 lcd_set_flip(global_settings.flip_display);
522 button_set_flip(global_settings.flip_display);
523 lcd_update(); /* refresh after flipping the screen */
519 settings_apply_pm_range(); 524 settings_apply_pm_range();
520 peak_meter_init_times( 525 peak_meter_init_times(
521 global_settings.peak_meter_release, global_settings.peak_meter_hold, 526 global_settings.peak_meter_release, global_settings.peak_meter_hold,
@@ -660,6 +665,8 @@ void settings_load(void)
660 665
661 if (config_block[0x1c] != 0xFF) { 666 if (config_block[0x1c] != 0xFF) {
662 global_settings.peak_meter_hold = (config_block[0x1c]) & 0x1f; 667 global_settings.peak_meter_hold = (config_block[0x1c]) & 0x1f;
668 global_settings.flip_display =
669 (config_block[0x1c] & 0x40)?true:false;
663 global_settings.rec_editable = 670 global_settings.rec_editable =
664 (config_block[0x1c] & 0x80)?true:false; 671 (config_block[0x1c] & 0x80)?true:false;
665 } 672 }
@@ -970,6 +977,8 @@ bool settings_load_config(char* file)
970 set_cfg_bool(&global_settings.scrollbar, value); 977 set_cfg_bool(&global_settings.scrollbar, value);
971 else if (!strcasecmp(name, "invert")) 978 else if (!strcasecmp(name, "invert"))
972 set_cfg_bool(&global_settings.invert, value); 979 set_cfg_bool(&global_settings.invert, value);
980 else if (!strcasecmp(name, "flip diplay"))
981 set_cfg_bool(&global_settings.flip_display, value);
973 else if (!strcasecmp(name, "invert cursor")) 982 else if (!strcasecmp(name, "invert cursor"))
974 set_cfg_bool(&global_settings.invert_cursor, value); 983 set_cfg_bool(&global_settings.invert_cursor, value);
975 else if (!strcasecmp(name, "show icons")) 984 else if (!strcasecmp(name, "show icons"))
@@ -1295,6 +1304,8 @@ bool settings_save_config(void)
1295#ifdef HAVE_LCD_BITMAP 1304#ifdef HAVE_LCD_BITMAP
1296 fprintf(fd, "invert: %s\r\n", boolopt[global_settings.invert]); 1305 fprintf(fd, "invert: %s\r\n", boolopt[global_settings.invert]);
1297 1306
1307 fprintf(fd, "flip display: %s\r\n", boolopt[global_settings.flip_display]);
1308
1298 fprintf(fd, "invert cursor: %s\r\n", 1309 fprintf(fd, "invert cursor: %s\r\n",
1299 boolopt[global_settings.invert_cursor]); 1310 boolopt[global_settings.invert_cursor]);
1300 1311
@@ -1446,6 +1457,7 @@ void settings_reset(void) {
1446 global_settings.resume = RESUME_ASK; 1457 global_settings.resume = RESUME_ASK;
1447 global_settings.contrast = lcd_default_contrast(); 1458 global_settings.contrast = lcd_default_contrast();
1448 global_settings.invert = DEFAULT_INVERT_SETTING; 1459 global_settings.invert = DEFAULT_INVERT_SETTING;
1460 global_settings.flip_display= false;
1449 global_settings.poweroff = DEFAULT_POWEROFF_SETTING; 1461 global_settings.poweroff = DEFAULT_POWEROFF_SETTING;
1450 global_settings.backlight_timeout = DEFAULT_BACKLIGHT_TIMEOUT_SETTING; 1462 global_settings.backlight_timeout = DEFAULT_BACKLIGHT_TIMEOUT_SETTING;
1451 global_settings.invert_cursor = DEFAULT_INVERT_CURSOR_SETTING; 1463 global_settings.invert_cursor = DEFAULT_INVERT_CURSOR_SETTING;