- uint32 romsize = JaguarLoadROM(mem, path);
- jaguar_mainRom_crc32 = crc32_calcCheckSum(jaguar_mainRom, romsize);
- WriteLog( "CRC: %08X\n", (unsigned int)jaguar_mainRom_crc32);
+ uint32 romSize = JaguarLoadROM(mem, path);
+
+ if (romSize == 0)
+ {
+ char newPath[2048];
+ WriteLog("VJ: Trying GUI...\n");
+
+//This is not *nix friendly for some reason...
+// if (!UserSelectFile(path, newPath))
+ if (!UserSelectFile((path == "" ? (char *)"." : path), newPath))
+ {
+ WriteLog("VJ: Could not find valid ROM in directory \"%s\"...\nAborting!\n", path);
+ log_done();
+ exit(0);
+ }
+
+ romSize = JaguarLoadROM(mem, newPath);
+
+ if (romSize == 0)
+ {
+ WriteLog("VJ: Could not load ROM from file \"%s\"...\nAborting!\n", newPath);
+ log_done();
+ exit(0);
+ }
+ }
+
+ jaguar_mainRom_crc32 = crc32_calcCheckSum(jaguar_mainRom, romSize);
+ WriteLog("CRC: %08X\n", (unsigned int)jaguar_mainRom_crc32);