diff xband.c @ 1692:5dacaef602a7 segacd

Merge from default
author Michael Pavone <pavone@retrodev.com>
date Sat, 05 Jan 2019 00:58:08 -0800
parents 17c1c30e0d6f
children
line wrap: on
line diff
--- a/xband.c	Tue Dec 19 00:49:13 2017 -0800
+++ b/xband.c	Sat Jan 05 00:58:08 2019 -0800
@@ -83,6 +83,23 @@
 
 uint8_t xband_detect(uint8_t *rom, uint32_t rom_size)
 {
+	if (rom_size < 0x200) {
+		return 0;
+	} 
+	
+	//product ID is all NULL
+	for (int i = GAME_ID_OFF; i <= (GAME_ID_OFF + GAME_ID_LEN); i++)
+	{
+		if (rom[i]) {
+			return 0;
+		}
+	}
+	
+	if (!memcmp(rom+8, "DAVE", 4)) {
+		//XBAND test roms
+		return 1;
+	}
+	
 	//Internal ROM is 512KB, accept larger ones for overdumps and custom firmware
 	if (rom_size < (512*1024)) {
 		return 0;
@@ -93,13 +110,7 @@
 		return 0;
 	}
 	
-	//product ID is all NULL
-	for (int i = GAME_ID_OFF; i <= (GAME_ID_OFF + GAME_ID_LEN); i++)
-	{
-		if (rom[i]) {
-			return 0;
-		}
-	}
+	
 	return 1;
 }