Add 19XX Japan Rent version (Barry, JacKc, Tormod)

This commit is contained in:
Barry Harris 2014-02-27 21:59:51 +00:00
parent b14259d219
commit 9b3772531d
4 changed files with 105 additions and 4 deletions

View File

@ -1472,6 +1472,39 @@ INT32 Cps2LoadTilesSIM(UINT8* Tile, INT32 nStart)
return 0;
}
INT32 Cps2LoadTiles19xxjr(UINT8* Tile, INT32 nStart)
{
// left
Cps2LoadOne(Tile + 0x000000, nStart + 0, 1, 0);
Cps2LoadOne(Tile + 0x000000, nStart + 1, 1, 2);
// right
Cps2LoadOne(Tile + 0x000004, nStart + 2, 1, 0);
Cps2LoadOne(Tile + 0x000004, nStart + 3, 1, 2);
// left
Cps2LoadOne(Tile + 0x800000, nStart + 4, 1, 0);
Cps2LoadOne(Tile + 0xa00000, nStart + 5, 1, 0);
Cps2LoadOne(Tile + 0xc00000, nStart + 6, 1, 0);
Cps2LoadOne(Tile + 0xe00000, nStart + 7, 1, 0);
Cps2LoadOne(Tile + 0x800000, nStart + 8, 1, 2);
Cps2LoadOne(Tile + 0xa00000, nStart + 9, 1, 2);
Cps2LoadOne(Tile + 0xc00000, nStart + 10, 1, 2);
Cps2LoadOne(Tile + 0xe00000, nStart + 11, 1, 2);
// right
Cps2LoadOne(Tile + 0x800004, nStart + 12, 1, 0);
Cps2LoadOne(Tile + 0xa00004, nStart + 13, 1, 0);
Cps2LoadOne(Tile + 0xc00004, nStart + 14, 1, 0);
Cps2LoadOne(Tile + 0xe00004, nStart + 15, 1, 0);
Cps2LoadOne(Tile + 0x800004, nStart + 16, 1, 2);
Cps2LoadOne(Tile + 0xa00004, nStart + 17, 1, 2);
Cps2LoadOne(Tile + 0xc00004, nStart + 18, 1, 2);
Cps2LoadOne(Tile + 0xe00004, nStart + 19, 1, 2);
return 0;
}
INT32 Cps2LoadTilesGigaman2(UINT8 *Tile, UINT8 *pSrc)
{
UINT8 *pt = Tile;
@ -1649,6 +1682,19 @@ static INT32 CpsGetROMs(bool bLoad)
i++;
}
}
if ((ri.nType & 0x0f) == CPS2_GFX_19XXJR) {
if (bLoad) {
Cps2LoadTiles19xxjr(CpsGfxLoad, i);
CpsGfxLoad += (nGfxMaxSize == ~0U ? ri.nLen : nGfxMaxSize) * 20;
i += 20;
} else {
nGfxMaxSize = 0xcd000;
nCpsGfxLen += ri.nLen;
nGfxNum++;
i++;
}
}
if ((ri.nType & 0x0f) == CPS2_PRG_Z80) {
if (bLoad) {
@ -1708,7 +1754,7 @@ static INT32 CpsGetROMs(bool bLoad)
if (nGfxMaxSize != ~0U) {
nCpsGfxLen = nGfxNum * nGfxMaxSize;
}
#if 1 && defined FBA_DEBUG
if (!nCpsCodeLen) {
bprintf(PRINT_IMPORTANT, _T(" - 68K ROM size:\t0x%08X (Decrypted with key)\n"), nCpsRomLen);

View File

@ -480,6 +480,7 @@ INT32 Sf2mdtScanSound(INT32 nAction, INT32 *pnMin);
#define CPS2_GFX_SIMM 6
#define CPS2_GFX_SPLIT4 7
#define CPS2_GFX_SPLIT8 8
#define CPS2_GFX_19XXJR 9
#define CPS2_PRG_Z80 10
#define CPS2_QSND 12
#define CPS2_QSND_SIMM 13

View File

@ -892,6 +892,7 @@ static const struct game_keys keys_table[] =
{ "19xxa", { 0xcce74cf5,0xb7da3711 }, 0x200000 }, // 0C81 0095 1101 cmpi.l #$00951101,D1
{ "19xxj", { 0x00115df8,0x000ff87e }, 0x200000 }, // 0C81 0095 1101 cmpi.l #$00951101,D1
{ "19xxjr1", { 0x00115df8,0x000ff87e }, 0x200000 }, // 0C81 0095 1101 cmpi.l #$00951101,D1
{ "19xxjr", { 0x00115df8,0x000ff87e }, 0x200000 }, // 0C81 0095 1101 cmpi.l #$00951101,D1
{ "19xxh", { 0x5d49bafa,0xf7216c9f }, 0x200000 }, // 0C81 0095 1101 cmpi.l #$00951101,D1
{ "19xxb", { 0xe5f9476a,0x2dfb623f }, 0x200000 }, // 0C81 0095 1101 cmpi.l #$00951101,D1
{ "ddsom", { 0x87889abc,0xd81f5f63 }, 0x100000 }, // 0C81 1966 0419 cmpi.l #$19660419,D1

View File

@ -1,7 +1,5 @@
#include "cps.h"
// Input Definitions
INT32 Cps2Volume = 39;
INT32 Cps2DisableDigitalVolume = 0;
UINT8 Cps2VolUp;
@ -14,6 +12,8 @@ UINT16 Cps2VolumeStates[40] = {
0xe050, 0xe048, 0xe044, 0xe042, 0xe041, 0xe030, 0xe028, 0xe024, 0xe022, 0xe021
};
// Input Definitions
static struct BurnInputInfo Cps2FightingInputList[] = {
{"P1 Coin" , BIT_DIGITAL , CpsInp020+4, "p1 coin" },
{"P1 Start" , BIT_DIGITAL , CpsInp020+0, "p1 start" },
@ -978,6 +978,49 @@ static struct BurnRomInfo Ninexxjr1RomDesc[] = {
STD_ROM_PICK(Ninexxjr1)
STD_ROM_FN(Ninexxjr1)
static struct BurnRomInfo NinexxjrRomDesc[] = {
{ "19xj.03b", 0x080000, 0xbcad93dd, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
{ "19xj.04b", 0x080000, 0x931882a1, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
{ "19xj.05b", 0x080000, 0xe7eeddc4, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
{ "19xj.06b", 0x080000, 0xf27cd6b8, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
{ "19xj.07", 0x080000, 0x61c0296c, CPS2_PRG_68K | BRF_ESS | BRF_PRG }, // 19x.07
{ "19x-69.4j", 0x080000, 0x427aeb18, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.13m
{ "19x-59.4d", 0x080000, 0x63bdbf54, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.15m
{ "19x-79.4m", 0x080000, 0x2dfe18b5, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.17m
{ "19x-89.4p", 0x080000, 0xcbef9579, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.19m
{ "19x-73.8j", 0x080000, 0x8e81f595, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.14m
{ "19x-74.9j", 0x080000, 0x6d7ad22e, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.14m
{ "19x-75.10j", 0x080000, 0xcb1a1b6a, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.14m
{ "19x-76.11j", 0x080000, 0x26fc2b08, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.14m
{ "19x-63.8d", 0x080000, 0x6f8b045e, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.16m
{ "19x-64.9d", 0x080000, 0xccd5725a, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.16m
{ "19x-65.10d", 0x080000, 0x6cf6db35, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.16m
{ "19x-66.11d", 0x080000, 0x16115dd3, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.16m
{ "19x-83.8m", 0x080000, 0xc11f88c1, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.18m
{ "19x-84.9m", 0x080000, 0x68cc9cd8, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.18m
{ "19x-85.10m", 0x080000, 0xf213666b, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.18m
{ "19x-86.11m", 0x080000, 0x574e0473, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.18m
{ "19x-93.8p", 0x080000, 0x9fad3c55, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.20m
{ "19x-94.9p", 0x080000, 0xe10e252c, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.20m
{ "19x-95.10p", 0x080000, 0x2b86fa67, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.20m
{ "19x-96.11p", 0x080000, 0xae6eb692, CPS2_GFX_19XXJR | BRF_GRA }, // 19x.20m
{ "19x-01.1a", 0x020000, 0xef55195e, CPS2_PRG_Z80 | BRF_ESS | BRF_PRG }, // 19x.01
{ "19x-51.6a", 0x080000, 0xe9cd7780, CPS2_QSND | BRF_SND }, // 19x.11m
{ "19x-52.7a", 0x080000, 0xb27b91a8, CPS2_QSND | BRF_SND }, // 19x.11m
{ "19x-53.8a", 0x080000, 0x2e563ee2, CPS2_QSND | BRF_SND }, // 19x.11m
{ "19x-54.9a", 0x080000, 0xf47c1f24, CPS2_QSND | BRF_SND }, // 19x.11m
{ "19x-55.10a", 0x080000, 0x0b1af6e0, CPS2_QSND | BRF_SND }, // 19x.12m
{ "19x-56.11a", 0x080000, 0xdfa8819f, CPS2_QSND | BRF_SND }, // 19x.12m
{ "19x-57.12a", 0x080000, 0x229ba777, CPS2_QSND | BRF_SND }, // 19x.12m
{ "19x-58.13a", 0x080000, 0xc7dceba4, CPS2_QSND | BRF_SND }, // 19x.12m
};
STD_ROM_PICK(Ninexxjr)
STD_ROM_FN(Ninexxjr)
static struct BurnRomInfo Nine44RomDesc[] = {
{ "nffu.03", 0x080000, 0x9693cf8f, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
{ "nff.04", 0x080000, 0xdba1c66e, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
@ -7367,7 +7410,7 @@ static INT32 DrvExit()
Ssf2t = 0;
Ssf2tb = 0;
Xmcota = 0;
Cps2Volume = 39;
Cps2DisableDigitalVolume = 0;
@ -7443,6 +7486,16 @@ struct BurnDriver BurnDrvCps19xxjr1 = {
&CpsRecalcPal, 0x1000, 224, 384, 3, 4
};
struct BurnDriver BurnDrvCps19xxjr = {
"19xxjr", "19xx", NULL, NULL, "1996",
"19XX - the war against destiny (960104 Japan, Rent version)\0", NULL, "Capcom", "CPS2",
NULL, NULL, NULL, NULL,
BDF_GAME_WORKING | BDF_CLONE | BDF_ORIENTATION_VERTICAL, 2, HARDWARE_CAPCOM_CPS2, GBF_VERSHOOT, FBF_19XX,
NULL, NinexxjrRomInfo, NinexxjrRomName, NULL, NULL, NineXXInputInfo, NULL,
Cps2Init, DrvExit, Cps2Frame, CpsRedraw, CpsAreaScan,
&CpsRecalcPal, 0x1000, 224, 384, 3, 4
};
struct BurnDriver BurnDrvCps1944 = {
"1944", NULL, NULL, NULL, "2000",
"1944 - the loop master (000620 USA)\0", NULL, "Capcom / 8ing / Raizing", "CPS2",