diff options
Diffstat (limited to 'apps/settings.c')
-rw-r--r-- | apps/settings.c | 12 |
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 | |||
103 | 0x1a 0x2e <time until disk spindown> | 103 | 0x1a 0x2e <time until disk spindown> |
104 | 0x1b 0x2f <browse current, play selected, recursive dir insert> | 104 | 0x1b 0x2f <browse current, play selected, recursive dir insert> |
105 | 0x1c 0x30 <peak meter hold timeout (bit 0-4), | 105 | 0x1c 0x30 <peak meter hold timeout (bit 0-4), |
106 | flip_display (bit 6) | ||
106 | rec_editable (bit 7)> | 107 | rec_editable (bit 7)> |
107 | 0x1d 0x31 <(int) Resume shuffle seed, or -1 if no shuffle> | 108 | 0x1d 0x31 <(int) Resume shuffle seed, or -1 if no shuffle> |
108 | 0x21 0x35 <repeat mode (bit 0-1), rec. channels (bit 2), | 109 | 0x21 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; |