+void emu_set_default_config(void)
+{
+ // try to set sane config on which most games work
+ Config.Xa = Config.Cdda = Config.Sio =
+ Config.SpuIrq = Config.RCntFix = Config.VSyncWA = 0;
+ Config.CdrReschedule = 0;
+ Config.PsxAuto = 1;
+
+ pl_rearmed_cbs.gpu_neon.allow_interlace = 2; // auto
+ pl_rearmed_cbs.gpu_peops.iUseDither = 0;
+ pl_rearmed_cbs.gpu_peops.dwActFixes = 1<<7;
+ pl_rearmed_cbs.gpu_unai.abe_hack =
+ pl_rearmed_cbs.gpu_unai.no_light =
+ pl_rearmed_cbs.gpu_unai.no_blend = 0;
+ memset(&pl_rearmed_cbs.gpu_peopsgl, 0, sizeof(pl_rearmed_cbs.gpu_peopsgl));
+ pl_rearmed_cbs.gpu_peopsgl.iVRamSize = 64;
+ pl_rearmed_cbs.gpu_peopsgl.iTexGarbageCollection = 1;
+
+ iUseReverb = 2;
+ iUseInterpolation = 1;
+ iXAPitch = 0;
+ iSPUIRQWait = 1;
+ iUseTimer = 2;
+ iVolume = 768;
+#ifndef __ARM_ARCH_7A__ /* XXX */
+ iUseReverb = 0;
+ iUseInterpolation = 0;
+#endif
+ new_dynarec_hacks = 0;
+ cycle_multiplier = 200;
+
+ in_type1 = PSE_PAD_TYPE_STANDARD;
+ in_type2 = PSE_PAD_TYPE_STANDARD;
+}
+
+static void check_memcards(void)
+{
+ char buf[MAXPATHLEN];
+ FILE *f;
+ int i;
+
+ for (i = 1; i <= 9; i++) {
+ snprintf(buf, sizeof(buf), ".%scard%d.mcd", MEMCARD_DIR, i);
+
+ f = fopen(buf, "rb");
+ if (f == NULL) {
+ printf("Creating memcard: %s\n", buf);
+ CreateMcd(buf);
+ }
+ else
+ fclose(f);
+ }
+}
+