What's your meaning of 256 KB s1 rom?This promblem only exists in
"Crouching Tiger Hidden Dragon 2003 Super Plus" driver,otherwise,
it works fine in new version with 128k s1 rom now!So.....
// Crouching Tiger Hidden Dragon 2003 Super Plus
static struct BurnRomInfo ct2003spRomDesc[] = {
{ "5003-p1sp.bin",0x100000, 0x96EE06BC, 1 | BRF_ESS | BRF_PRG }, // 0 68K code
{ "5003-p2sp.bin",0x200000, 0x2332EE0C, 1 | BRF_ESS | BRF_PRG }, // 1
{ "5003-p3sp.bin",0x200000, 0x017919AA, 1 | BRF_ESS | BRF_PRG }, // 2
{ "5003-s1sp.bin",0x020000, 0xC5061AAF, 2 | BRF_GRA }, // 3 Text layer tiles
{ "5003-c1.bin", 0x800000, 0x29FD9108, 3 | BRF_GRA }, // 4 Sprite data
{ "5003-c2.bin", 0x800000, 0xF58D4D3E, 3 | BRF_GRA }, // 5
{ "5003-c3.bin", 0x800000, 0x71B3172D, 3 | BRF_GRA }, // 6
{ "5003-c4.bin", 0x800000, 0x564C70C1, 3 | BRF_GRA }, // 7
{ "5003-c5.bin", 0x800000, 0x8EF8AEF9, 3 | BRF_GRA }, // 8
{ "5003-c6.bin", 0x800000, 0x8A0FD440, 3 | BRF_GRA }, // 9
{ "5003-c7.bin", 0x800000, 0x6F1EFFAB, 3 | BRF_GRA }, // 10
{ "5003-c8.bin", 0x800000, 0x39550D3A, 3 | BRF_GRA }, // 11
{ "5003-m1.bin", 0x020000, 0x526CCCAB, 4 | BRF_ESS | BRF_PRG }, // 12 Z80 code
{ "5003-v1.bin", 0x400000, 0x83D49ECF, 5 | BRF_SND }, // 13 Sound data
{ "5003-v2.bin", 0x400000, 0x003F1843, 5 | BRF_SND }, // 14
{ "5003-v3.bin", 0x400000, 0x2AE38DBE, 5 | BRF_SND }, // 15
{ "5003-v4.bin", 0x400000, 0x26EC4DD9, 5 | BRF_SND }, // 16
};
STDROMPICKEXT(ct2003sp, ct2003sp, neogeo);
STD_ROM_FN(ct2003sp);
static void ct2003spSMADecrypt()
{
unsigned char *src = Neo68KROM;
unsigned char *dst = (unsigned char*)malloc(0x500000);
int sec[] = {0x400000,0x000000,0x100000,0x200000,0x300000};
if (dst) {
memcpy(dst,src,0x500000);
for(int i = 0; i < 5; ++i)
memcpy(src+i*0x100000,dst+sec[i],0x100000);
free(dst);
}
}
static int ct2003spInit()
{
nNeoTextROMFixType = 7;
return NeoSMAInit(ct2003spSMADecrypt,cthdWriteWordBankswitch,0,0);
}
struct BurnDriver BurnDrvct2003sp = {
"ct2003sp","ct2003nd", "neogeo", "2003",
"Crouching Tiger Hidden Dragon 2003 Super Plus\0",NULL , "Phenixsoft", "Neo Geo",
NULL, NULL, NULL, NULL,
BDF_GAME_WORKING | BDF_BOOTLEG | BDF_CLONE, 2, HARDWARE_SNK_NEOGEO,
NULL, ct2003spRomInfo, ct2003spRomName, neogeoInputInfo, neogeoDIPInfo,
ct2003spInit, NeoExit, NeoFrame, NeoRender, NeoScan, &NeoRecalcPalette,
nNeoScreenWidth, 224, 4, 3
};