cue support wip
authornotaz <notasas@gmail.com>
Sun, 27 Apr 2008 19:16:32 +0000 (19:16 +0000)
committernotaz <notasas@gmail.com>
Sun, 27 Apr 2008 19:16:32 +0000 (19:16 +0000)
git-svn-id: file:///home/notaz/opt/svn/PicoDrive/platform@432 be3aeb3a-fb24-0410-a615-afba39da0efa

common/emu.c
gp2x/menu.c
psp/menu.c

index feb3167..1bbdf35 100644 (file)
@@ -164,6 +164,9 @@ int emu_cdCheck(int *pregion)
        unsigned char buf[32];\r
        pm_file *cd_f;\r
        int type = 0, region = 4; // 1: Japan, 4: US, 8: Europe\r
+       char ext[5];\r
+\r
+       get_ext(romFileName, ext);\r
 \r
        cd_f = pm_open(romFileName);\r
        if (!cd_f) return 0; // let the upper level handle this\r
@@ -330,7 +333,7 @@ int emu_ReloadRom(void)
 \r
        // check for MegaCD image\r
        cd_state = emu_cdCheck(&cd_region);\r
-       if (cd_state > 0)\r
+       if (cd_state != CIT_NOT_CD)\r
        {\r
                PicoAHW |= PAHW_MCD;\r
                // valid CD image, check for BIOS..\r
@@ -405,8 +408,8 @@ int emu_ReloadRom(void)
        Pico.m.frame_count = 0;\r
 \r
        // insert CD if it was detected\r
-       if (cd_state > 0) {\r
-               ret = Insert_CD(romFileName, cd_state == 2);\r
+       if (cd_state != CIT_NOT_CD) {\r
+               ret = Insert_CD(romFileName, cd_state);\r
                if (ret != 0) {\r
                        sprintf(menuErrorMsg, "Insert_CD() failed, invalid CD image?");\r
                        lprintf("%s\n", menuErrorMsg);\r
index 919fdb9..af7397e 100644 (file)
@@ -200,7 +200,7 @@ void menu_romload_end(void)
 static unsigned short file2color(const char *fname)\r
 {\r
        const char *ext = fname + strlen(fname) - 3;\r
-       static const char *rom_exts[]   = { "zip", "bin", "smd", "gen", "iso", "cso" };\r
+       static const char *rom_exts[]   = { "zip", "bin", "smd", "gen", "iso", "cso", "cue" };\r
        static const char *other_exts[] = { "gmv", "pat" };\r
        int i;\r
 \r
@@ -256,7 +256,7 @@ static int scandir_cmp(const void *p1, const void *p2)
 \r
 static char *filter_exts[] = {\r
        ".mp3", ".MP3", ".srm", ".brm", "s.gz", ".mds", "bcfg", ".txt", ".htm", "html",\r
-       ".jpg", ".gpe", ".cue"\r
+       ".jpg", ".gpe"\r
 };\r
 \r
 static int scandir_filter(const struct dirent *ent)\r
@@ -1724,10 +1724,11 @@ int menu_loop_tray(void)
                                case 0: // select image\r
                                        selfname = romsel_loop(curr_path);\r
                                        if (selfname) {\r
-                                               int ret = -1, cd_type;\r
+                                               int ret = -1;\r
+                                               cd_img_type cd_type;\r
                                                cd_type = emu_cdCheck(NULL);\r
-                                               if (cd_type > 0)\r
-                                                       ret = Insert_CD(romFileName, cd_type == 2);\r
+                                               if (cd_type != CIT_NOT_CD)\r
+                                                       ret = Insert_CD(romFileName, cd_type);\r
                                                if (ret != 0) {\r
                                                        sprintf(menuErrorMsg, "Load failed, invalid CD image?");\r
                                                        printf("%s\n", menuErrorMsg);\r
index 1613cfb..48de81e 100644 (file)
@@ -185,7 +185,7 @@ struct my_dirent
 static unsigned short file2color(const char *fname)
 {
        const char *ext = fname + strlen(fname) - 3;
-       static const char *rom_exts[]   = { "zip", "bin", "smd", "gen", "iso", "cso" };
+       static const char *rom_exts[]   = { "zip", "bin", "smd", "gen", "iso", "cso", "cue" };
        static const char *other_exts[] = { "gmv", "pat" };
        int i;
 
@@ -241,7 +241,7 @@ static int scandir_cmp(const void *p1, const void *p2)
 
 static char *filter_exts[] = {
        ".mp3", ".srm", ".brm", "s.gz", ".mds", "bcfg", ".txt", ".htm", "html",
-       ".jpg", ".cue", ".pbp"
+       ".jpg", ".pbp"
 };
 
 static int scandir_filter(const struct my_dirent *ent)
@@ -1810,10 +1810,11 @@ int menu_loop_tray(void)
                                case 0: // select image
                                        selfname = romsel_loop(curr_path);
                                        if (selfname) {
-                                               int ret = -1, cd_type;
+                                               int ret = -1;
+                                               cd_img_type cd_type;
                                                cd_type = emu_cdCheck(NULL);
-                                               if (cd_type > 0)
-                                                       ret = Insert_CD(romFileName, cd_type == 2);
+                                               if (cd_type != CIT_NOT_CD)
+                                                       ret = Insert_CD(romFileName, cd_type);
                                                if (ret != 0) {
                                                        sprintf(menuErrorMsg, "Load failed, invalid CD image?");
                                                        lprintf("%s\n", menuErrorMsg);