sound, fix config save/load for native quality mode
authorkub <derkub@gmail.com>
Thu, 31 Mar 2022 22:02:48 +0000 (22:02 +0000)
committerkub <derkub@gmail.com>
Thu, 31 Mar 2022 22:11:05 +0000 (22:11 +0000)
platform/common/config_file.c
platform/common/menu_pico.c

index 1c4b00c..5c2311e 100644 (file)
@@ -275,8 +275,13 @@ static int custom_read(menu_entry *me, const char *var, const char *val)
                case MA_OPT_SOUND_QUALITY:
                        if (strcasecmp(var, "Sound Quality") != 0) return 0;
                        PicoIn.sndRate = strtoul(val, &tmp, 10);
-                       if (PicoIn.sndRate < 8000 || PicoIn.sndRate > 53267)
-                               PicoIn.sndRate = 22050;
+                       if (PicoIn.sndRate < 8000 || PicoIn.sndRate > 53267) {
+                               if  (strncasecmp(tmp, "native", 6) == 0) {
+                                       tmp += 6;
+                                       PicoIn.sndRate = 53000;
+                               } else
+                                       PicoIn.sndRate = 22050;
+                       }
                        if (*tmp == 'H' || *tmp == 'h') tmp++;
                        if (*tmp == 'Z' || *tmp == 'z') tmp++;
                        while (*tmp == ' ') tmp++;
index fc9e769..ea0fbdc 100644 (file)
@@ -631,7 +631,7 @@ static const char *mgn_opt_sound(int id, int *offs)
        *offs = -8;
        str2 = (PicoIn.opt & POPT_EN_STEREO) ? "stereo" : "mono";
        if (PicoIn.sndRate > 52000)
-               sprintf(static_buff, "native %s\n", str2);
+               sprintf(static_buff, "native %s", str2);
        else    sprintf(static_buff, "%5iHz %s", PicoIn.sndRate, str2);
        return static_buff;
 }