Fixed Superchip autodetect for Dig Dug as discussed on AtariAge.

This commit is contained in:
Stephen Anthony 2017-03-16 18:46:43 -02:30
parent 3950f80a30
commit 02a399a8aa
4 changed files with 9 additions and 8 deletions

View File

@ -55,6 +55,10 @@
* Added ROM properties for D.K. VCS homebrew ROM, thanks to Andreas
Dietrich.
* Added slight improvement for auto-detecting Superchip bankswitching;
the new implementation now works for the NTSC 'Dig Dug' ROM. Special
thanks for SpiceWare for the idea and modified implementation.
* For the Linux/UNIX port:
- The settings directory now uses the XDG Base Directory Specification.
In most cases, this means that your files will now be stored in

View File

@ -574,16 +574,14 @@ bool Cartridge::searchForBytes(const uInt8* image, uInt32 imagesize,
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
bool Cartridge::isProbablySC(const uInt8* image, uInt32 size)
{
// We assume a Superchip cart contains the same bytes for its entire
// RAM area; obviously this test will fail if it doesn't
// The RAM area will be the first 256 bytes of each 4K bank
// We assume a Superchip cart repeats the first 128 bytes for the second
// 128 bytes in the RAM area, which is the first 256 bytes of each 4K bank
uInt32 banks = size / 4096;
for(uInt32 i = 0; i < banks; ++i)
{
uInt8 first = image[i*4096];
for(uInt32 j = 0; j < 256; ++j)
for(uInt32 j = 0; j < 128; ++j)
{
if(image[i*4096+j] != first)
if(image[i*4096+j] != image[i*4096+j + 128])
return false;
}
}

View File

@ -1452,7 +1452,7 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
{ "6d842c96d5a01967be9680080dd5be54", "Activision, David Crane", "AB-035-04", "Pitfall II (1983) (Activision)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
{ "6d8a04ee15951480cb7c466e5951eee0", "Zirok", "", "Kanguru (1983) (Zirok)", "AKA Kangaroo", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
{ "6d9afd70e9369c2a6bff96c4964413b7", "", "", "Time Warp (Unknown) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
{ "6dda84fb8e442ecf34241ac0d1d91d69", "Atari - GCC, Douglas B. Macrae", "CX2677", "Dig Dug (1983) (Atari)", "", "", "", "F6SC", "", "", "", "", "", "", "", "", "", "", "", "", "" },
{ "6dda84fb8e442ecf34241ac0d1d91d69", "Atari - GCC, Douglas B. Macrae", "CX2677", "Dig Dug (1983) (Atari)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
{ "6de924c2297c8733524952448d54a33c", "CCE", "C-1006", "Moon Patrol (1983) (CCE)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
{ "6dfad2dd2c7c16ac0fa257b6ce0be2f0", "Parker Brothers, Larry Gelberg, Gary Goltz", "PB5065", "Star Wars - Ewok Adventure (1983) (Parker Bros) (Prototype) (PAL)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
{ "6e179eee3d4631a7434d40cf7aeea6e8", "Wizard Video Games, Robert Barber, Tim Martin", "007", "Halloween (1983) (Wizard Video Games) (Prototype)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },

View File

@ -8760,7 +8760,6 @@
"Cartridge.Manufacturer" "Atari - GCC, Douglas B. Macrae"
"Cartridge.ModelNo" "CX2677"
"Cartridge.Name" "Dig Dug (1983) (Atari)"
"Cartridge.Type" "F6SC"
""
"Cartridge.MD5" "6de924c2297c8733524952448d54a33c"