diff --git a/menu.cpp b/menu.cpp index a7dc115..fcb6143 100644 --- a/menu.cpp +++ b/menu.cpp @@ -165,7 +165,7 @@ const char *config_button_turbo_choice_msg[] = { "A only", "B only", "A & B" }; const char *joy_button_map[] = { "RIGHT", "LEFT", "DOWN", "UP", "BUTTON 1", "BUTTON 2", "BUTTON 3", "BUTTON 4", "KBD TOGGLE", "BUTTON OSD" }; const char *config_stereo_msg[] = { "0%", "25%", "50%", "100%" }; const char *config_uart_msg[] = { " None", " PPP", " Console", " USBMIDI", "USBMIDI-38K" }; -const char *config_scaler_msg[] = { "Nearest Neighbor","Bilinear","Sharp Bilinear","Bicubic","Custom" }; +const char *config_scaler_msg[] = { "Internal","Custom" }; char joy_bnames[12][32]; int joy_bcount = 0; @@ -1326,7 +1326,7 @@ void HandleUI(void) { menumask |= 0x30; OsdWrite(n++, " HDMI Scaler:"); - sprintf(s, " \x16 Filter - %s", config_scaler_msg[user_io_get_scaler_flt()]); + sprintf(s, " \x16 Filter - %s", config_scaler_msg[user_io_get_scaler_flt() ? 1 : 0]); OsdWrite(n++, s, menusub == 4); memset(s, 0, sizeof(s)); @@ -1334,7 +1334,7 @@ void HandleUI(void) if (strlen(user_io_get_scaler_coeff())) strncat(s, user_io_get_scaler_coeff(), 22); else strcat(s, ""); - OsdWrite(n++, s, menusub == 5, user_io_get_scaler_flt() != 4 || !S_ISDIR(getFileType(COEFF_DIR))); + OsdWrite(n++, s, menusub == 5, !user_io_get_scaler_flt() || !S_ISDIR(getFileType(COEFF_DIR))); OsdWrite(n++); } @@ -1416,12 +1416,12 @@ void HandleUI(void) } break; case 4: - user_io_set_scaler_flt((user_io_get_scaler_flt() < 4) ? user_io_get_scaler_flt() + 1 : 0); + user_io_set_scaler_flt(user_io_get_scaler_flt() ? 0 : 1); menustate = MENU_8BIT_SYSTEM1; break; case 5: - if (user_io_get_scaler_flt() == 4) + if (user_io_get_scaler_flt()) { sprintf(SelectedPath, COEFF_DIR"/%s", user_io_get_scaler_coeff()); SelectFile(0, SCANO_COEFF, MENU_COEFF_FILE_SELECTED, MENU_8BIT_SYSTEM1); diff --git a/user_io.cpp b/user_io.cpp index e36b347..748461f 100644 --- a/user_io.cpp +++ b/user_io.cpp @@ -2590,16 +2590,14 @@ static void setScaler() if (!spi_uio_cmd_cont(UIO_SET_FLTNUM)) { DisableIO(); - sprintf(filename, "%s/coeff.txt", HomeDir); - } - else - { - new_scaler = 1; - spi8(scaler_flt_cfg[0]); - DisableIO(); - sprintf(filename, COEFF_DIR"/%s", scaler_flt_cfg + 1); + return; } + new_scaler = 1; + spi8(scaler_flt_cfg[0]); + DisableIO(); + sprintf(filename, COEFF_DIR"/%s", scaler_flt_cfg + 1); + if (FileOpen(&f, filename)) { printf("Read scaler coefficients\n"); @@ -2664,6 +2662,7 @@ void user_io_set_scaler_flt(int n) scaler_flt_cfg[0] = (char)n; FileSaveConfig("scaler.cfg", &scaler_flt_cfg, sizeof(scaler_flt_cfg)); spi_uio_cmd8(UIO_SET_FLTNUM, scaler_flt_cfg[0]); + spi_uio_cmd(UIO_SET_FLTCOEF); } void user_io_set_scaler_coeff(char *name) @@ -2671,6 +2670,7 @@ void user_io_set_scaler_coeff(char *name) strcpy(scaler_flt_cfg + 1, name); FileSaveConfig("scaler.cfg", &scaler_flt_cfg, sizeof(scaler_flt_cfg)); setScaler(); + user_io_send_buttons(1); } static void loadScalerCfg()