[Core/MD] added support for Triple Play 96 & Triple Play - Gold Edition real Mask ROM dumps

This commit is contained in:
ekeeke 2020-07-14 01:45:12 +02:00
parent 1758bbe0e4
commit 15722b16ab
5 changed files with 18 additions and 3 deletions

View File

@ -17,6 +17,7 @@ Genesis Plus GX 1.7.5 (xx/xx/xxxx) (Eke-Eke)
* added optional support for external VORBIS library
* added optional CHD file support
* added CDC & GFX register polling detection / synchronization
* improved Timer interrupt timings and CDD interrupt accuracy (fixes audio stutters during Popful Mail FMV)
* improved CDC emulation (fixes random freezes during Jeopardy & ESPN Sunday Night NFL intro)
* improved emulation of mirrored memory areas
* improved savestate format
@ -27,6 +28,7 @@ Genesis Plus GX 1.7.5 (xx/xx/xxxx) (Eke-Eke)
* improved Word-RAM byte access accuracy (verified on schematics)
* disabled 68k and Z80 access to PRG-RAM when SUB-CPU is running (fixes "Dungeon Explorer")
* disabled CD hardware reset on Soft-Reset (verified on real hardware)
* fixed potential load issues with non-zero backup RAM cart
* fixed DATA track minimal length (fixes BIOS refusing to boot small homebrew demos)
* fixed CDD "no disc" status code (fixes boot sequence loading time when no disc is loaded)
* fixed AUDIO tracks length calculation when using separated files (WAV/OGG/BIN) with INDEX pause defined in CUE file
@ -45,6 +47,8 @@ Genesis Plus GX 1.7.5 (xx/xx/xxxx) (Eke-Eke)
[Core/MD]
---------------
* added support for more Radica dumps
* added support for more X-in-1 pirate mappers
* added support for some new unlicensed games with copy protection (Thunderbolt II, Tom Clown, Chaoji Puke / Super Poker)
* added support for Everdrive extended SSF mapper
* added (very basic) emulation of Flashkit MD hardware

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 MiB

After

Width:  |  Height:  |  Size: 3.7 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 MiB

After

Width:  |  Height:  |  Size: 3.9 MiB

View File

@ -408,11 +408,12 @@ void md_cart_init(void)
zbank_memory_map[sram.start >> 16].write = sram_write_byte;
}
/* support for Triple Play 96 & Triple Play - Gold Edition (available ROM dumps include dumped SRAM data) */
/* support for Triple Play 96 & Triple Play - Gold Edition mapping */
else if ((strstr(rominfo.product,"T-172026") != NULL) || (strstr(rominfo.product,"T-172116") != NULL))
{
/* $000000-$1fffff and $300000-$3fffff: cartridge ROM (2MB + 1MB) */
/* $200000-$2fffff: SRAM (32 KB mirrored) */
/* $000000-$1fffff: cartridge ROM (lower 2MB) */
/* $200000-$2fffff: SRAM (32KB mirrored) */
/* NB: existing 4MB ROM dumps include SRAM data at ROM offsets 0x200000-0x2fffff */
for (i=0x20; i<0x30; i++)
{
m68k.memory_map[i].base = sram.sram;
@ -423,6 +424,16 @@ void md_cart_init(void)
zbank_memory_map[i].read = sram_read_byte;
zbank_memory_map[i].write = sram_write_byte;
}
/* $300000-$3fffff: cartridge ROM (upper 1MB) */
/* NB: only real (3MB) Mask ROM dumps need ROM offsets 0x200000-0x2fffff to be remapped to this area */
if (READ_BYTE(cart.rom, 0x200000) != 0xFF)
{
for (i=0x30; i<0x40; i++)
{
m68k.memory_map[i].base = cart.rom + ((i - 0x10) << 16);
}
}
}
}