+ int OldPicoRegionFPSOverride = PicoRegionFPSOverride;
+ var.value = NULL;
+ var.key = "picodrive_region_fps";
+ if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value) {
+ if (strcmp(var.value, "Auto") == 0)
+ PicoRegionFPSOverride = 0;
+ else if (strcmp(var.value, "NTSC") == 0)
+ PicoRegionFPSOverride = 1;
+ else if (strcmp(var.value, "PAL") == 0)
+ PicoRegionFPSOverride = 2;
+ }
+
+ // Update region, fps and sound flags if needed
+ if (PicoRegionOverride != OldPicoRegionOverride ||
+ PicoRegionFPSOverride != OldPicoRegionFPSOverride)
+ {
+ PicoDetectRegion();
+ PicoLoopPrepare();
+ PsndRerate(1);
+ }
+