Skip to content

Commit

Permalink
Add support for "GG Super 56 in 1 (B) [Mega Man] (Unl)" which uses th…
Browse files Browse the repository at this point in the history
…e same mapper

The mapper is made slightly less strict about initial conditions as proven by the new dump. It still works fine for the previous dump, happily

---

I've been calling this "GG Super 56 in 1 (B) [Mega Man] (Unl)" but the correct name is not entirely clear

The label has some title candidate text:

GG (in a jagged balloon)
Super
56 in 1
(B)

The menu screens also have a collection title:

G.G. 56 IN 1

The cartridge label has a game list with Traditional Chinese and English names for each of the 56 entries

Mine came used as a loose cartridge

This is a 2MB Game Gear multicart containing both native Game Gear games and SMS games running in SMS-GG mode

This cartridge also contains a copy of SG-1000 Exerion combined with the menu, but this appears not to be reachable and may not be fully playable though it can at least be started by forcing a jump to address 0x0004

Dumping steps are the same as for "Super GG 68 in 1 [Sonic Adventure] (Unl)" and the mapper is basically the same too

Here's the dumping script I used to extract the contents. It turns out the cartridge can remain connected between dumps. After the fragment shown, I used a regular Sega dumping steps (regular read for the first 32KB, then paging using 0xFFFF and the 0x8000...0xBFFF range after that.)
```
// /* first megabyte, first 256K */ 0x000C00;
// /* first megabyte, second 256K */ 0x080C00;
// /* first megabyte, third 256K */ 0x100C00;
// /* first megabyte, fourth 256K */ 0x180C00;
// /* second megabyte, first 512K */ 0x001204;
// /* second megabyte, second 512K */ 0x101204;
local base_page_unlock = 0x200C00; // adjust for different games
cpu_write(d, 0xFFF9, 0x00);
cpu_write(d, 0xFFF8, 0x00);
cpu_write(d, 0xFFFA, 0x01);
cpu_write(d, 0xFFF8, (base_page_unlock & 0xFF0000) >> 16);
cpu_write(d, 0xFFF9, (base_page_unlock & 0xFF00) >> 8);
cpu_write(d, 0xFFFA, base_page_unlock & 0xFF);
cpu_write(d, 0xFFFE, 0x01);
```

On startup the menu writes:
[0xFFFE=0x01]

Menu contents: (the arrow "→" is a movable cursor and shown in its initial position)

Screen 1:

```
   G.G. 56 IN 1

 PUSH ↑.↓.1.START

→01.MAGA MAN       [0xFFFA=0x00, 0xFFF9=0x13, 0xFFF8=0x10, 0xFFFE=0x01]; it's [GG] part-30-Mega Man (US)-512k.gg
 02.FATAL FURY  2  [0xFFFA=0x00, 0xFFF9=0x13, 0xFFF8=0x00, 0xFFFE=0x01]; it's [GG] part-20-Fatal Fury Special (US)-512k.gg
 03.DORAEMON       [0xFFFA=0x00, 0xFFF9=0x0c, 0xFFF8=0x10, 0xFFFE=0x01]; it's [GG] part-10-Doraemon Nora No Suke No Yabou (JP)-256k.gg
 04.SONIC TAIL     [0xFFFA=0x00, 0xFFF9=0x0c, 0xFFF8=0x18, 0xFFFE=0x01]; it's [GG] part-18-Tails' Skypatrol (JP)-256k.gg
 05.DAN PEN        [0xFFFA=0x00, 0xFFF9=0x08, 0xFFF8=0x04, 0xFFFE=0x01]; it's [GG] part-04-Honoo no Toukyuuji Dodge Danpei (JP)-128k.gg
 06.COLUMNS        [0xFFFA=0x00, 0xFFF9=0x00, 0xFFF8=0x01, 0xFFFE=0x01]; it's [GG] part-01-columns-32k.gg
 07.GHOST HOUSE    [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0f, 0xFFFE=0x01]; it's [SMS-GG] part-0f-ghost-house-32k.sms
 08.SATELLITE-7    [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0e, 0xFFFE=0x01]; it's [SMS-GG] part-0e-satellite-7-32k.sms
 09.ASTRO FLASH    [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0d, 0xFFFE=0x01]; it's [SMS-GG] part-0d-astro-flash-32k.sms
 10.MACHINE GUN    [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0c, 0xFFFE=0x01]; it's [SMS-GG] part-0c-machine-gun-joe-32k.sms
```

Screen 2:

```
   G.G. 56 IN 1

 PUSH ↑.↓.1.START

→11.ACTION BOY     [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0b, 0xFFFE=0x01]; it's [SMS-GG] part-0b-seishun-scandal-32k.sms
 12.SPY  VS SPY    [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0a, 0xFFFE=0x01]; it's [SMS-GG] part-0a-spy-vs-spy-32k.sms
 13.GREAT SOCCER   [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x09, 0xFFFE=0x01]; it's [SMS-GG] part-09-great-soccer-32k.sms
 14.HANG ON        [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x08, 0xFFFE=0x01]; it's [SMS-GG] part-08-hang-on-32k.sms
 15.WOODY POP      [0xFFFA=0x00, 0xFFF9=0x00, 0xFFF8=0x03, 0xFFFE=0x01]; it's [GG] part-03-woody-pop-32k.gg
 16.PENGUIN LAND   [0xFFFA=0x00, 0xFFF9=0x00, 0xFFF8=0x02, 0xFFFE=0x01]; it's [GG] part-02-pengo-32k.gg
 17.ARO DIN DON    [0xFFFA=0x00, 0xFFF9=0x0c, 0xFFF8=0x10, 0xFFFE=0x01]; it's [GG] part-10-Doraemon Nora No Suke No Yabou (JP)-256k.gg
 18.SUPER DAN PEI  [0xFFFA=0x00, 0xFFF9=0x08, 0xFFF8=0x04, 0xFFFE=0x01]; it's [GG] part-04-Honoo no Toukyuuji Dodge Danpei (JP)-128k.gg
 19.ROCK MAN       [0xFFFA=0x00, 0xFFF9=0x13, 0xFFF8=0x10, 0xFFFE=0x01]; it's [GG] part-30-Mega Man (US)-512k.gg
 20.WORLD HEROS    [0xFFFA=0x00, 0xFFF9=0x13, 0xFFF8=0x00, 0xFFFE=0x01]; it's [GG] part-20-Fatal Fury Special (US)-512k.gg
```

Screen 3:

```
   G.G. 56 IN 1

 PUSH ↑.↓.1.START

→21.SONIC BROTHER  [0xFFFA=0x00, 0xFFF9=0x0c, 0xFFF8=0x18, 0xFFFE=0x01]; it's [GG] part-18-Tails' Skypatrol (JP)-256k.gg
 22.ALLEY WAY      [0xFFFA=0x00, 0xFFF9=0x00, 0xFFF8=0x03, 0xFFFE=0x01]; it's [GG] part-03-woody-pop-32k.gg
 23.PENGO          [0xFFFA=0x00, 0xFFF9=0x00, 0xFFF8=0x02, 0xFFFE=0x01]; it's [GG] part-02-pengo-32k.gg
 24.COLORS TETRIS  [0xFFFA=0x00, 0xFFF9=0x00, 0xFFF8=0x01, 0xFFFE=0x01]; it's [GG] part-01-columns-32k.gg
 25.GHOST LAND     [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0f, 0xFFFE=0x01]; it's [SMS-GG] part-0f-ghost-house-32k.sms
 26.STAR GATE      [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0e, 0xFFFE=0x01]; it's [SMS-GG] part-0e-satellite-7-32k.sms
 27.VOLLEY FIRE    [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0d, 0xFFFE=0x01]; it's [SMS-GG] part-0d-astro-flash-32k.sms
 28.SHOOT GUN      [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0c, 0xFFFE=0x01]; it's [SMS-GG] part-0c-machine-gun-joe-32k.sms
 29.SCHOOL BOY     [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0b, 0xFFFE=0x01]; it's [SMS-GG] part-0b-seishun-scandal-32k.sms
 30.TECHNO COP     [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0a, 0xFFFE=0x01]; it's [SMS-GG] part-0a-spy-vs-spy-32k.sms
```

Screen 4:

```
   G.G. 56 IN 1

 PUSH ↑.↓.1.START

→31.FIFA SOCCER    [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x09, 0xFFFE=0x01]; it's [SMS-GG] part-09-great-soccer-32k.sms
 32.MOTOBIKE       [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x08, 0xFFFE=0x01]; it's [SMS-GG] part-08-hang-on-32k.sms
 33.ATTACK         [0xFFFA=0x00, 0xFFF9=0x13, 0xFFF8=0x10, 0xFFFE=0x01]; it's [GG] part-30-Mega Man (US)-512k.gg
 34.THUNDER        [0xFFFA=0x00, 0xFFF9=0x0c, 0xFFF8=0x10, 0xFFFE=0x01]; it's [GG] part-10-Doraemon Nora No Suke No Yabou (JP)-256k.gg
 35.DANGEROUS      [0xFFFA=0x00, 0xFFF9=0x0c, 0xFFF8=0x18, 0xFFFE=0x01]; it's [GG] part-18-Tails' Skypatrol (JP)-256k.gg
 36.POP POP HERO   [0xFFFA=0x00, 0xFFF9=0x08, 0xFFF8=0x04, 0xFFFE=0x01]; it's [GG] part-04-Honoo no Toukyuuji Dodge Danpei (JP)-128k.gg
 37.YOUNG GUY      [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0b, 0xFFFE=0x01]; it's [SMS-GG] part-0b-seishun-scandal-32k.sms
 38.FURY 95        [0xFFFA=0x00, 0xFFF9=0x13, 0xFFF8=0x00, 0xFFFE=0x01]; it's [GG] part-20-Fatal Fury Special (US)-512k.gg
 39.LIONET         [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x08, 0xFFFE=0x01]; it's [SMS-GG] part-08-hang-on-32k.sms
 40.WOODY WAY      [0xFFFA=0x00, 0xFFF9=0x00, 0xFFF8=0x03, 0xFFFE=0x01]; it's [GG] part-03-woody-pop-32k.gg
```

Screen 5:

```
   G.G. 56 IN 1

 PUSH ↑.↓.1.START

→41.PENGUIN EGG    [0xFFFA=0x00, 0xFFF9=0x00, 0xFFF8=0x02, 0xFFFE=0x01]; it's [GG] part-02-pengo-32k.gg
 42.COLORS BLOCK   [0xFFFA=0x00, 0xFFF9=0x00, 0xFFF8=0x01, 0xFFFE=0x01]; it's [GG] part-01-columns-32k.gg
 43.GHOST BUSTER   [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0f, 0xFFFE=0x01]; it's [SMS-GG] part-0f-ghost-house-32k.sms
 44.TOP GUN        [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0e, 0xFFFE=0x01]; it's [SMS-GG] part-0e-satellite-7-32k.sms
 45.AIR WAR        [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0d, 0xFFFE=0x01]; it's [SMS-GG] part-0d-astro-flash-32k.sms
 46.HUNTER         [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0c, 0xFFFE=0x01]; it's [SMS-GG] part-0c-machine-gun-joe-32k.sms
 47.MY HERO        [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0b, 0xFFFE=0x01]; it's [SMS-GG] part-0b-seishun-scandal-32k.sms
 48.SPY MAN        [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0a, 0xFFFE=0x01]; it's [SMS-GG] part-0a-spy-vs-spy-32k.sms
 49.PRO SOCCER     [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x09, 0xFFFE=0x01]; it's [SMS-GG] part-09-great-soccer-32k.sms
 40.MOTOCROSS      [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x08, 0xFFFE=0x01]; it's [SMS-GG] part-08-hang-on-32k.sms
```

Screen 6:

```
   G.G. 56 IN 1

 PUSH ↑.↓.1.START

→51.PRO CRAZY BOY  [0xFFFA=0x00, 0xFFF9=0x13, 0xFFF8=0x10, 0xFFFE=0x01]; it's [GG] part-30-Mega Man (US)-512k.gg
 52.BOY BLUES      [0xFFFA=0x00, 0xFFF9=0x0c, 0xFFF8=0x10, 0xFFFE=0x01]; it's [GG] part-10-Doraemon Nora No Suke No Yabou (JP)-256k.gg
 53.P.P GAMES      [0xFFFA=0x00, 0xFFF9=0x0c, 0xFFF8=0x18, 0xFFFE=0x01]; it's [GG] part-18-Tails' Skypatrol (JP)-256k.gg
 54.KLAX           [0xFFFA=0x00, 0xFFF9=0x08, 0xFFF8=0x04, 0xFFFE=0x01]; it's [GG] part-04-Honoo no Toukyuuji Dodge Danpei (JP)-128k.gg
 55.F 16 BOY       [0xFFFA=0x01, 0xFFF9=0x00, 0xFFF8=0x0d, 0xFFFE=0x01]; it's [SMS-GG] part-0d-astro-flash-32k.sms
 56.STREE FIGHTER  [0xFFFA=0x00, 0xFFF9=0x13, 0xFFF8=0x00, 0xFFFE=0x01]; it's [GG] part-20-Fatal Fury Special (US)-512k.gg
```

ROM fingerprint information:

2.0M GG Super 56 in 1 (B) [Mega Man] (Unl).gg
Checking for export header with matching CRC... NO
sha256:80ab455b6204ba7b1968bbb4b085fe3a23ed567c02a7d94bb223ee30000266a5 GG Super 56 in 1 (B) [Mega Man] (Unl).gg
sha1:a31755d835e42ad4695e453dece0d9b3f98c92cf GG Super 56 in 1 (B) [Mega Man] (Unl).gg
md5:2bb00478b5df60492c49e77075d432fa GG Super 56 in 1 (B) [Mega Man] (Unl).gg
mekacrc:92CBD58C8243F885 GG Super 56 in 1 (B) [Mega Man] (Unl).gg
crc32:271f40a3 GG Super 56 in 1 (B) [Mega Man] (Unl).gg

32K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-00-menu-and-exerion-32k.gg
Checking for export header with matching CRC... NO
sha256:e2c42cacc925c5625deaa3b1b8c4ba3af02388aec5a31de3b1ff6cb3549fc29f GG Super 56 in 1 (B) [Mega Man] (Unl)/part-00-menu-and-exerion-32k.gg
sha1:af611e1557c4f10ce4f76ff155ae8f6f216a4443 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-00-menu-and-exerion-32k.gg
md5:e26a304dfef7ea019c79dedc0b2782ad GG Super 56 in 1 (B) [Mega Man] (Unl)/part-00-menu-and-exerion-32k.gg
mekacrc:A96A175A0CC102AD GG Super 56 in 1 (B) [Mega Man] (Unl)/part-00-menu-and-exerion-32k.gg
crc32:4a97d476 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-00-menu-and-exerion-32k.gg

32K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-01-columns-32k.gg
Checking for export header with matching CRC... NO
sha256:73f6012c1a92bcc96497668cdecfb3b592162c6b39a8c7efb8b9dc3931380561 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-01-columns-32k.gg
sha1:26d407e8389a5564b836f0a68585a935ca019802 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-01-columns-32k.gg
md5:bfcf0e46ec8df8a51776bd2315b859fc GG Super 56 in 1 (B) [Mega Man] (Unl)/part-01-columns-32k.gg
mekacrc:1DE54704572F032A GG Super 56 in 1 (B) [Mega Man] (Unl)/part-01-columns-32k.gg
crc32:7316423e GG Super 56 in 1 (B) [Mega Man] (Unl)/part-01-columns-32k.gg

32K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-02-pengo-32k.gg
Checking for export header with matching CRC... NO
sha256:1c221bcb0b7ef67e644a695b78cb4dd851b800202ee13fd8d03fb099e533c46a GG Super 56 in 1 (B) [Mega Man] (Unl)/part-02-pengo-32k.gg
sha1:126654feb2975e3a52431d29cefcafbd37bb2ef5 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-02-pengo-32k.gg
md5:69bf00297cad6ee0bb6046c8084e5e37 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-02-pengo-32k.gg
mekacrc:6C3C703170EBD587 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-02-pengo-32k.gg
crc32:6bd56e95 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-02-pengo-32k.gg

32K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-03-woody-pop-32k.gg
Checking for export header with matching CRC... NO
sha256:0c23fccffa3160b6754fa54ecbf08d3828f5e60a64dbe4203109715644ad94ce GG Super 56 in 1 (B) [Mega Man] (Unl)/part-03-woody-pop-32k.gg
sha1:58516c23f1e1b87daebda1b971fab278a6e7ce59 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-03-woody-pop-32k.gg
md5:3885c64be1dc990918adebcbe9675855 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-03-woody-pop-32k.gg
mekacrc:9D2A47DDDF12FD27 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-03-woody-pop-32k.gg
crc32:0c6e4769 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-03-woody-pop-32k.gg

128K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-04-Honoo no Toukyuuji Dodge Danpei (JP)-128k.gg
Checking for export header with matching CRC... NO
sha256:ac7b81ec5cdc7dd6ed1cfd8f1690fdd9461493827535f3744ddc1c95e834ba30 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-04-Honoo no Toukyuuji Dodge Danpei (JP)-128k.gg
sha1:66032cc214d728b2f1c59ad2934277e378b36865 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-04-Honoo no Toukyuuji Dodge Danpei (JP)-128k.gg
md5:a299b81a9a5455bfff538f669a5e7a0d GG Super 56 in 1 (B) [Mega Man] (Unl)/part-04-Honoo no Toukyuuji Dodge Danpei (JP)-128k.gg
mekacrc:357F4A30EE2C9A1E GG Super 56 in 1 (B) [Mega Man] (Unl)/part-04-Honoo no Toukyuuji Dodge Danpei (JP)-128k.gg
crc32:dfa805a0 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-04-Honoo no Toukyuuji Dodge Danpei (JP)-128k.gg

32K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-08-hang-on-32k.sms
Checking for export header with matching CRC... NO
sha256:5a2ecca3d78ae9aa8a6ac2c1775122cfdce3744898032ce5763c0017350e58ce GG Super 56 in 1 (B) [Mega Man] (Unl)/part-08-hang-on-32k.sms
sha1:5726c7f7948612ca42daed96ded45745393bd80a GG Super 56 in 1 (B) [Mega Man] (Unl)/part-08-hang-on-32k.sms
md5:5c25b6b38963fc513958a26e64c591d4 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-08-hang-on-32k.sms
mekacrc:02A62976104874ED GG Super 56 in 1 (B) [Mega Man] (Unl)/part-08-hang-on-32k.sms
crc32:40cedfd9 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-08-hang-on-32k.sms

32K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-09-great-soccer-32k.sms
Checking for export header with matching CRC... NO
sha256:b48ce6a09946941fdf62e8ebf611fc1706344e26ea230bb206ba98cf04e9fbd2 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-09-great-soccer-32k.sms
sha1:41d55da9ed00124c570d9964494b791e09d93af8 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-09-great-soccer-32k.sms
md5:cecccff2d09d3cc705d848b28037e267 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-09-great-soccer-32k.sms
mekacrc:7CB0BCEF29C11827 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-09-great-soccer-32k.sms
crc32:be711818 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-09-great-soccer-32k.sms

32K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0a-spy-vs-spy-32k.sms
Checking for export header with matching CRC... NO
sha256:bcba12678775542b59694fc8fe3945530490cdd92a2bfafb07f74b189fa03ede GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0a-spy-vs-spy-32k.sms
sha1:fd7d1bee1ca42c6d962780f21d5ad138b792db59 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0a-spy-vs-spy-32k.sms
md5:324741e68234ae80ff3df8bc3f411557 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0a-spy-vs-spy-32k.sms
mekacrc:98EC9FA8477AEC88 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0a-spy-vs-spy-32k.sms
crc32:f13a28c0 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0a-spy-vs-spy-32k.sms

32K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0b-seishun-scandal-32k.sms
Checking for export header with matching CRC... NO
sha256:3a1df738527b578e248b6650c9a1498abaf9bef6da813a172dfae0a63be4e746 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0b-seishun-scandal-32k.sms
sha1:2c39fdf814e223e2dc14646941a276879ae14c64 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0b-seishun-scandal-32k.sms
md5:c021bce5a58cfbf513af253a25bc29bd GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0b-seishun-scandal-32k.sms
mekacrc:D41A76F3C3411E87 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0b-seishun-scandal-32k.sms
crc32:637dbbef GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0b-seishun-scandal-32k.sms

32K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0c-machine-gun-joe-32k.sms
Checking for export header with matching CRC... NO
sha256:3981649682a895772012a769e8296e24e660ac4fc4102ecfbb747d53d18cee3e GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0c-machine-gun-joe-32k.sms
sha1:03a8a50b3b9e97ea5e10d7e094d287b51ca477af GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0c-machine-gun-joe-32k.sms
md5:02906381c66601fb49b10bed123455d4 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0c-machine-gun-joe-32k.sms
mekacrc:5C858AC9BD4714B4 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0c-machine-gun-joe-32k.sms
crc32:9a94c7cc GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0c-machine-gun-joe-32k.sms

32K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0d-astro-flash-32k.sms
Checking for export header with matching CRC... NO
sha256:514484c1d4156fc77e4cefcd39cffd71f3e126c708420100ebb07e4972dc3486 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0d-astro-flash-32k.sms
sha1:b4e2483fbfe9e4c23a6fb14e755e5aa8c6ecece0 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0d-astro-flash-32k.sms
md5:4c13f02b69c266ffea80fd7aba160bb2 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0d-astro-flash-32k.sms
mekacrc:13171118D3218C2D GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0d-astro-flash-32k.sms
crc32:b1267d52 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0d-astro-flash-32k.sms

32K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0e-satellite-7-32k.sms
Checking for export header with matching CRC... NO
sha256:3adcd01767ee06949a930b88b76f9e2d8c89031c41e289af9d2e4290455ee5c1 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0e-satellite-7-32k.sms
sha1:be0ace7ed8f1f1ab6fa51dfaa3ba2dd167ab3863 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0e-satellite-7-32k.sms
md5:7cb52be125ef66daa5e7a6e971a2a97f GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0e-satellite-7-32k.sms
mekacrc:C30BB9170D4D8E7A GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0e-satellite-7-32k.sms
crc32:eb9a0359 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0e-satellite-7-32k.sms

32K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0f-ghost-house-32k.sms
Checking for export header with matching CRC... NO
sha256:c690ae4bff9711c0244e9a2ab18a579a429b29191dcc993f0ed5a496b472cfd3 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0f-ghost-house-32k.sms
sha1:9917f8f06ed4c99b71d58d8a03fbea13330c84a1 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0f-ghost-house-32k.sms
md5:343210de693491444b452df7b665921d GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0f-ghost-house-32k.sms
mekacrc:A5771FE4EC52960D GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0f-ghost-house-32k.sms
crc32:317451a3 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-0f-ghost-house-32k.sms

256K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-10-Doraemon Nora No Suke No Yabou (JP)-256k.gg
Checking for export header with matching CRC... NO
sha256:09a0ff25362323583df586c6e6825a54499a24883802190854b9ff856e3fd7ce GG Super 56 in 1 (B) [Mega Man] (Unl)/part-10-Doraemon Nora No Suke No Yabou (JP)-256k.gg
sha1:6976b170879767889994b1e763a52726aa62ed98 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-10-Doraemon Nora No Suke No Yabou (JP)-256k.gg
md5:e768a7c45f8ea390d6091032fdf6dcbe GG Super 56 in 1 (B) [Mega Man] (Unl)/part-10-Doraemon Nora No Suke No Yabou (JP)-256k.gg
mekacrc:4200580F20BADF9E GG Super 56 in 1 (B) [Mega Man] (Unl)/part-10-Doraemon Nora No Suke No Yabou (JP)-256k.gg
crc32:9a8b2c16 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-10-Doraemon Nora No Suke No Yabou (JP)-256k.gg

256K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-18-Tails' Skypatrol (JP)-256k.gg
Checking for export header with matching CRC... NO
sha256:334406059c26a3704e881680fe102f819472cd331ceb13a79ce9f6b9adc08e0b GG Super 56 in 1 (B) [Mega Man] (Unl)/part-18-Tails' Skypatrol (JP)-256k.gg
sha1:9cb440611e9e3a7957438698fede0978d568a807 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-18-Tails' Skypatrol (JP)-256k.gg
md5:ffb364bbaf72881cf7571e7ec388490d GG Super 56 in 1 (B) [Mega Man] (Unl)/part-18-Tails' Skypatrol (JP)-256k.gg
mekacrc:9AB480AD16FFC7A9 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-18-Tails' Skypatrol (JP)-256k.gg
crc32:88618afa GG Super 56 in 1 (B) [Mega Man] (Unl)/part-18-Tails' Skypatrol (JP)-256k.gg

512K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-20-Fatal Fury Special (US)-512k.gg
Checking for export header with matching CRC... NO
sha256:e7b53995690c55dbb1fbe95349a0dce5fe3ed6106d5610d1cd394f93dda43fea GG Super 56 in 1 (B) [Mega Man] (Unl)/part-20-Fatal Fury Special (US)-512k.gg
sha1:7ce20ca34b7bc91ba7e73f830b40830ad6bafbc8 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-20-Fatal Fury Special (US)-512k.gg
md5:4292c099f98cc0c6d03025f0729f64df GG Super 56 in 1 (B) [Mega Man] (Unl)/part-20-Fatal Fury Special (US)-512k.gg
mekacrc:01B1CB4E2F1E4C9C GG Super 56 in 1 (B) [Mega Man] (Unl)/part-20-Fatal Fury Special (US)-512k.gg
crc32:449787e2 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-20-Fatal Fury Special (US)-512k.gg

512K GG Super 56 in 1 (B) [Mega Man] (Unl)/part-30-Mega Man (US)-512k.gg
Checking for export header with matching CRC... NO
sha256:b313e90469133da5d0d39f683cc098993c3b137458804dd0aafb173eb39cd98a GG Super 56 in 1 (B) [Mega Man] (Unl)/part-30-Mega Man (US)-512k.gg
sha1:085517c4ac940b937d0e0a900e4735a2247ca4dd GG Super 56 in 1 (B) [Mega Man] (Unl)/part-30-Mega Man (US)-512k.gg
md5:8583950be61ffbaf0f63dde8dded2ab3 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-30-Mega Man (US)-512k.gg
mekacrc:F0B8660AB1883B74 GG Super 56 in 1 (B) [Mega Man] (Unl)/part-30-Mega Man (US)-512k.gg
crc32:1ace93af GG Super 56 in 1 (B) [Mega Man] (Unl)/part-30-Mega Man (US)-512k.gg
  • Loading branch information
bsittler committed May 25, 2023
1 parent fcfcf73 commit c1c7f9d
Show file tree
Hide file tree
Showing 4 changed files with 6 additions and 5 deletions.
3 changes: 2 additions & 1 deletion meka/compat.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1144,6 +1144,7 @@
GG Portrait - Pai Chen (JP) Ok
GG Portrait - Yuuki Akira (JP) Ok
GG Shinobi, The (JP) Ok
GG Super 56 in 1 (B) [Mega Man] *Ok
Global Gladiators Ok
G-LOC - Air Battle Ok
G-LOC - Air Battle [v0] (JP) Ok
Expand Down Expand Up @@ -1499,7 +1500,7 @@
Zoop (US) Ok
Zoop [Proto] (US) Ok
-----------------------------------------------------------------------------
518 games tested - 507 are "Ok" - Compatibility rate: 97.88%
519 games tested - 508 are "Ok" - Compatibility rate: 97.88%
-----------------------------------------------------------------------------

-----------------------------------------------------------------------------
Expand Down
1 change: 1 addition & 0 deletions meka/meka.nam
Original file line number Diff line number Diff line change
Expand Up @@ -1040,6 +1040,7 @@ GG 695cc120 FCC991E880B52D60 GG Portrait - Pai Chen/COUNTRY=JP/PRODUCT_NO=G-3
GG 51159f8f 5D96967FEE1C49A5 GG Portrait - Yuuki Akira/COUNTRY=JP/PRODUCT_NO=G-3386
GG 83926bd1 7EC1D6C6D2A7119B GG Shinobi, The/COUNTRY=JP/PRODUCT_NO=G-3302
GG d2b6021e F0E8A87399B7C4F9 Global Gladiators/COUNTRY=US,EU/PRODUCT_NO=T-70058,T-70058-50
GG 271f40a3 92CBD58C8243F885 GG Super 56 in 1 (B) [Mega Man]/EMU_MAPPER=32
GG 18de59ed 093B5C63C1FA1E24 G-LOC - Air Battle/NAME_BR=G-LOC/COUNTRY=US,EU,BR/PRODUCT_NO=2301,012120
GG 2333f615 9B4CDA9945218AB6 G-LOC - Air Battle [v0]/COUNTRY=JP/PRODUCT_NO=G-3204
GG 33237f50 6949D8B6CE13CD12 G-LOC - Air Battle [v1]/COUNTRY=JP/PRODUCT_NO=G-3204
Expand Down
5 changes: 2 additions & 3 deletions meka/srcs/mappers.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -957,6 +957,7 @@ WRITE_FUNC (Write_Mapper_SMS_Korean_MSX_32KB_2000)

// Mapper #32
// Super GG 68 in 1 [Sonic Adventure]
// GG Super 56 in 1 (B) [Mega Man]
WRITE_FUNC(Write_Mapper_GG_FFF8_FFF9_FFFA_FFFE_FFFF)
{
if ((Addr == 0xFFF8) || (Addr == 0xFFF9) || (Addr == 0xFFFA) || (Addr == 0xFFFE) || (Addr == 0xFFFF)) // Configurable segment -----------------------------------------------
Expand All @@ -967,9 +968,7 @@ WRITE_FUNC(Write_Mapper_GG_FFF8_FFF9_FFFA_FFFE_FFFF)
g_machine.mapper_regs[4] = Value;
} else if (Addr == 0xFFFA) {
g_machine.mapper_regs[3] = Value;
if ((Value == 0x01) && (g_machine.mapper_regs[4] == 0x00) && (g_machine.mapper_regs[5] == 0x00)) {
g_machine.mapper_regs[0] = 0x40;
}
g_machine.mapper_regs[0] = 0x40;
} else if (Addr == 0xFFFE) {
g_machine.mapper_regs[2] = Value;
if ((Value == 0x01) && (g_machine.mapper_regs[0] == 0x40)) {
Expand Down
2 changes: 1 addition & 1 deletion meka/srcs/mappers.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@
#define MAPPER_SMS_Korean_MD_FFF5 (25) // Registers at 0xFFF5 and 0xFFFF (Jaemiissneun Game Mo-eumjip 42/65 Hap [SMS-MD], Pigu Wang Hap ~ Jaemiiss-neun Game Mo-eumjip [SMS-MD])
#define MAPPER_SMS_Korean_MD_FFFA (26) // Registers at 0xFFFA and 0xFFFF (Game Jiphap 30 Hap [SMS-MD])
#define MAPPER_SMS_Korean_MSX_32KB_2000 (27) // Register at 0x2000 (2 Hap in 1 (Moai-ui bomul, David-2))
#define MAPPER_GG_FFF8_FFF9_FFFA_FFFE_FFFF (32) // Registers at 0xFFF8, 0xFFF9, 0xFFFA, 0xFFFE, and 0xFFFF (Super GG 68 in 1 [Sonic Adventure])
#define MAPPER_GG_FFF8_FFF9_FFFA_FFFE_FFFF (32) // Registers at 0xFFF8, 0xFFF9, 0xFFFA, 0xFFFE, and 0xFFFF (Super GG 68 in 1 [Sonic Adventure], GG Super 56 in 1 (B) [Mega Man])

#define READ_FUNC(_NAME) u8 _NAME(register u16 Addr)
#define WRITE_FUNC(_NAME) void _NAME(register u16 Addr, register u8 Value)
Expand Down

0 comments on commit c1c7f9d

Please sign in to comment.