frontend: add chan display option, for fun mostly
[pcsx_rearmed.git] / frontend / main.c
index 068fe50..b17df53 100644 (file)
@@ -94,7 +94,7 @@ void set_cd_image(const char *fname)
 
        if (ext && (
            strcasecmp(ext, ".z") == 0 || strcasecmp(ext, ".bz") == 0 ||
-           strcasecmp(ext, ".znx") == 0 || strcasecmp(ext, ".pbp") == 0)) {
+           strcasecmp(ext, ".znx") == 0 /*|| strcasecmp(ext, ".pbp") == 0*/)) {
                SetIsoFile(NULL);
                cdrcimg_set_fname(fname);
                strcpy(Config.Cdr, "builtin_cdrcimg");
@@ -122,6 +122,25 @@ static void set_default_paths(void)
        snprintf(Config.PatchesDir, sizeof(Config.PatchesDir), "." PATCHES_DIR);
 }
 
+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);
+       }
+}
+
 void do_emu_action(void)
 {
        char buf[MAXPATHLEN];
@@ -213,6 +232,7 @@ int main(int argc, char *argv[])
 
        CheckSubDir();
        set_default_paths();
+       check_memcards();
        strcpy(Config.Bios, "HLE");
 
 #ifdef MAEMO
@@ -372,7 +392,7 @@ int SysInit() {
                return -1;
        }
 
-       LoadMcds(Config.Mcd1, Config.Mcd2);     /* TODO Do we need to have this here, or in the calling main() function?? */
+       LoadMcds(Config.Mcd1, Config.Mcd2);
 
        if (Config.Debug) {
                StartDebugger();
@@ -456,7 +476,9 @@ int emu_save_state(int slot)
        if (ret != 0)
                return ret;
 
-       return SaveState(fname);
+       ret = SaveState(fname);
+       printf("* %s \"%s\" [%d]\n", ret == 0 ? "saved" : "failed to save", fname, slot);
+       return ret;
 }
 
 int emu_load_state(int slot)