sanni / cartreader

A shield for the Arduino Mega that can back up video game cartridges.
GNU General Public License v3.0
2.2k stars 224 forks source link

Carts sharing same serial but not same rom size #468

Closed sanni closed 2 years ago

sanni commented 2 years ago

Example :

Metroid - Zero Mission (USA) (Beta).gba
922C4A10,BMXE,16,3

Metroid - Zero Mission (USA) (Virtual Console).gba
8825294A,BMXE,08,3

Metroid - Zero Mission (USA).gba
5C61A844,BMXE,08,3

I inserted the USA retail cart of course. The dumper takes the first "BMXE" entry in txt and set size to 16MB. All logical... but giving in an overdump for the real retail cart. Dunno if a couple of serial + header checksum would help here ?

Originally posted by @PsyK0p4T in https://github.com/sanni/cartreader/discussions/383#discussioncomment-3394274

sanni commented 2 years ago

Here are some more, looks like it's always a Beta, Kiosk, Demo, Unl or Virtual Console version that messes things up. Just with "Garfield - The Search for Pooky (Europe) (En,Fr,De,It).gba" it's two retail carts with different size.

Sabrina the Teenage Witch - Potion Commotion (Europe) (En,Fr,De,Es,It,Nl).gba
CAA8225B,A3BP,04,0

Tom Clancy's Splinter Cell (Europe) (En,Fr,De,Es,It,Nl) (Beta).gba
E07BA799,A3BP,16,0

Donkey Kong Country (USA).gba
12F7A968,A5NE,08,1

Donkey Kong Country 3 (USA) (Beta).gba
8DD750EF,A5NE,16,1

All-Star Baseball 2003 (USA).gba
E30691FE,AA3E,04,3

All-Star Baseball 2004 (USA) (Beta 2).gba
6AA9B41E,AA3E,08,3

Duel Masters - Sempai Legends (Europe) (En,Fr,De,Es,It) (Beta).gba
C3827890,AA9P,16,1

Duel Masters - Sempai Legends (Europe) (En,Fr,De,Es,It).gba
2FFF9BA9,AA9P,08,1

Dungeons & Dragons - Eye of the Beholder (Europe) (En,Fr,De,Es,It) (Beta).gba
C3A6ADA9,AD4E,16,3

Dungeons & Dragons - Eye of the Beholder (USA).gba
91B16892,AD4E,04,3

Mega Man Battle Network 2 (USA, Europe) (Virtual Console).gba
5E88C34B,AE2E,08,3

Mega Man Battle Network 2 (USA) (Debug Version).gba
FBDADAA7,AE2E,32,3

Mega Man Battle Network 2 (USA).gba
6D961F82,AE2E,08,3

Aero the Acro-Bat (USA) (Beta).gba
BEED50F0,AEJE,00,0

Earthworm Jim (USA, Europe).gba
C4991D13,AEJE,08,0

Fire Emblem - Fuuin no Tsurugi (Japan) (Virtual Console).gba
F8AF3359,AFEJ,08,3

Fire Emblem - Fuuin no Tsurugi (Japan).gba
D38763E1,AFEJ,08,3

Fire Emblem - Rekka no Ken (Japan) (Beta) (2003-02-06).gba
B40D6854,AFEJ,16,3

Fire Emblem - Rekka no Ken (Japan) (Beta) (2003-02-19).gba
8146A270,AFEJ,16,3

Beyblade V-Force - Ultimate Blader Jam (Europe) (En,Fr,De,Es,It) (Beta).gba
94D00A1E,AGBJ,16,4

Dragon Ball Z - Taiketsu (USA) (Beta).gba
B4F57E66,AGBJ,16,4

GBA AV Adapter (China) (Unl).gba
A1B64F16,AGBJ,00,4

GetBackers Dakkanya - Jigoku no Scaramouche (Japan).gba
C0A0A979,AGBJ,04,4

GT Racers (Europe) (Beta) (2005-07-13).gba
E027657A,AGBJ,00,4

GT Racers (Europe) (Beta) (2005-10-14).gba
A0F745A0,AGBJ,02,4

Jimmy Neutron vs. Jimmy Negatron (Germany) (Beta).gba
220CCF25,AGBJ,03,4

Pac-Man World 2 (USA) (Beta).gba
B645B5EF,AGBJ,04,4

Pokemon - Liechi Berry Glitch Fix & Shiny Zigzagoon Distribution (Europe) (Kiosk).gba
D78B5A1F,AGBJ,04,4

Wild Thornberrys Movie, The (USA, Europe) (Beta).gba
E41720F5,AGBJ,03,4

Yoshi Sample (Japan) (En) (SDK 3.0) (Demo).gba
954D2619,AGBJ,02,4

Nicktoons Racing (Europe) (En,Fr,De,Es,It).gba
BABCCEFD,ANQP,04,1

Nicktoons Racing (USA) (Beta).gba
38295D30,ANQP,08,1

GP-1 Racing (USA) (Proto).gba
4851B490,ARCE,02,9

RoboCop (USA) (Proto).gba
282E6408,ARCE,08,9

Travis Pastrana's Pro MotoX (USA, Europe) (Proto) (2002-12-12).gba
ECFE5F96,AWDE,04,1

Wakeboarding Unleashed Featuring Shaun Murray (Europe).gba
A3CCF1EC,AWDE,08,1

Wakeboarding Unleashed Featuring Shaun Murray (USA).gba
CAD6376C,AWDE,08,1

SEGA Rally Championship (Europe) (Beta).gba
31FB92EA,AYLP,16,3

SEGA Rally Championship (Europe).gba
D125A6BB,AYLP,08,3

Rayman 3 (USA) (Beta).gba
C3ADBC41,AYZE,16,1

Rayman 3 (USA) (En,Fr,Es).gba
D1613266,AYZE,08,1

Ace Combat Advance (Europe) (En,Fr,De,Es,It) (Beta).gba
2FA2C076,BAEE,16,0

Ace Combat Advance (USA, Europe).gba
43F5E157,BAEE,04,0

Garfield - The Search for Pooky (Europe) (En,Fr,De,Es,It) (Rev 2).gba
0C3AA538,BGOP,08,0

Garfield - The Search for Pooky (Europe) (En,Fr,De,It) (Rev 1).gba
387EB638,BGOP,08,0

Garfield - The Search for Pooky (Europe) (En,Fr,De,It).gba
CE9291F1,BGOP,16,0

Asterix & Obelix XXL (Europe) (En,Fr,De,Es,It,Nl) (Beta 2).gba
A3F66D2C,BLXP,16,1

Asterix & Obelix XXL (Europe) (En,Fr,De,Es,It,Nl).gba
A9B1ECE5,BLXP,08,1

Metroid - Zero Mission (USA) (Beta).gba
922C4A10,BMXE,16,3

Metroid - Zero Mission (USA) (Virtual Console).gba
8825294A,BMXE,08,3

Metroid - Zero Mission (USA).gba
5C61A844,BMXE,08,3

Metroid - Zero Mission (Europe) (En,Fr,De,Es,It) (Beta).gba
B6438226,BMXP,16,3

Metroid - Zero Mission (Europe) (En,Fr,De,Es,It) (Virtual Console).gba
3AB66D36,BMXP,08,3

Metroid - Zero Mission (Europe) (En,Fr,De,Es,It).gba
F1D92E63,BMXP,08,3

Rebelstar - Tactical Command (Europe) (En,Fr,De,Es,It) (Beta).gba
9706208C,BRLE,16,2

Rebelstar - Tactical Command (USA).gba
FB6C590F,BRLE,04,2

Battletoads (USA) (Proto).gba
31480D89,RARE,02,9

Diddy Kong Pilot (Unknown) (Proto) (2003).gba
057DC388,RARE,11,9

AGS Aging Cartridge (World) (v7.0) (Test Program).gba
BBB6A960,TCHK,02,9

AGS Aging Cartridge (World) (v7.1) (Test Program).gba
D047FFDF,TCHK,08,9

GBA TV Tuner PAL (China) (v1.3) (Unl).gba
AF124F8C,TVAP,01,9

GBA TV Tuner PAL (China) (v2.0) (Unl).gba
B511DF64,TVAP,08,9

As a quick fix I'm going to put the retail carts in front.

sanni commented 2 years ago

I have now implemented the same "browse through database before dumping" approach as with NES. For it to work the database needs to be sorted by ROM ID though instead of name.