.cue support, Pico stubs
[picodrive.git] / Pico / Cart.c
index 1e0ce2b..1dc3eae 100644 (file)
@@ -528,9 +528,14 @@ int PicoCartInsert(unsigned char *rom,unsigned int romsize)
 \r
   // setup correct memory map for loaded ROM\r
   // call PicoMemReset again due to possible memmap change\r
-  if (PicoAHW & PAHW_MCD)\r
-       PicoMemSetupCD();\r
-  else PicoMemSetup();\r
+  switch (PicoAHW) {\r
+    default:\r
+      elprintf(EL_STATUS|EL_ANOMALY, "starting in unknown hw configuration: %x", PicoAHW);\r
+    case 0:\r
+    case PAHW_SVP:  PicoMemSetup(); break;\r
+    case PAHW_MCD:  PicoMemSetupCD(); break;\r
+    case PAHW_PICO: PicoMemSetupPico(); break;\r
+  }\r
   PicoMemReset();\r
 \r
   PicoPower();\r
@@ -674,6 +679,13 @@ static void PicoCartDetect(void)
     PicoSVPStartup();\r
   }\r
 \r
+  // Pico\r
+  else if (rom_strcmp(0x100, "SEGA PICO") == 0 ||\r
+           rom_strcmp(0x100, "IMA IKUNOUJYUKU") == 0) // what is that supposed to mean?\r
+  {\r
+    PicoInitPico();\r
+  }\r
+\r
   // Detect 12-in-1 mapper\r
   else if ((name_cmp("ROBOCOP 3") == 0 && Pico.romsize == 0x200000) ||\r
     (rom_strcmp(0x160, "FLICKY") == 0 && Pico.romsize >= 0x200000)  ||\r