Merge branch 'master' of https://github.com/finalburnneo/FBNeo
This commit is contained in:
commit
1150543952
|
@ -272,7 +272,6 @@ extern INT32 Forgottn;
|
|||
extern INT32 Cps1QsHack;
|
||||
extern INT32 Kodh;
|
||||
extern INT32 Cawingb;
|
||||
extern INT32 Wofh;
|
||||
extern INT32 Sf2thndr;
|
||||
extern INT32 Pzloop2;
|
||||
extern INT32 Hkittymp;
|
||||
|
@ -282,6 +281,12 @@ extern INT32 Dinohunt;
|
|||
extern INT32 Port6SoundWrite;
|
||||
extern INT32 CpsBootlegEEPROM;
|
||||
extern INT32 Cps2Turbo;
|
||||
extern INT32 Jurassic99;
|
||||
extern INT32 Dinoh;
|
||||
extern INT32 Wofhfh;
|
||||
extern INT32 Wofsgzb;
|
||||
extern INT32 Wof3js;
|
||||
extern INT32 Knightsh;
|
||||
|
||||
extern ClearOpposite<4, UINT8> clear_opposite;
|
||||
|
||||
|
|
|
@ -38,7 +38,6 @@ INT32 Forgottn = 0;
|
|||
INT32 Cps1QsHack = 0;
|
||||
INT32 Kodh = 0;
|
||||
INT32 Cawingb = 0;
|
||||
INT32 Wofh = 0;
|
||||
INT32 Sf2thndr = 0;
|
||||
INT32 Pzloop2 = 0;
|
||||
INT32 Hkittymp = 0;
|
||||
|
@ -47,6 +46,12 @@ INT32 Dinohunt = 0;
|
|||
INT32 Port6SoundWrite = 0;
|
||||
INT32 CpsBootlegEEPROM = 0;
|
||||
INT32 Cps2Turbo = 0;
|
||||
INT32 Jurassic99 = 0;
|
||||
INT32 Dinoh = 0;
|
||||
INT32 Wofhfh = 0;
|
||||
INT32 Wofsgzb = 0;
|
||||
INT32 Wof3js = 0;
|
||||
INT32 Knightsh = 0;
|
||||
|
||||
ClearOpposite<4, UINT8> clear_opposite;
|
||||
|
||||
|
@ -579,6 +584,15 @@ INT32 CpsRwGetInp()
|
|||
CPSINPEX
|
||||
#undef INP
|
||||
|
||||
if (Jurassic99)
|
||||
Inpc001 |= (CpsInp179[0] & 1) << 7;
|
||||
if (Wofsgzb)
|
||||
Inpc001 |= (CpsInp179[0] & 1) << 6;
|
||||
if (Dinoh)
|
||||
Inp177 |= (CpsInp179[0] & 1) << 7;
|
||||
if (Wofhfh || Wof3js || Knightsh)
|
||||
Inp177 |= (CpsInp179[0] & 1) << 6;
|
||||
|
||||
if (Forgottn) {
|
||||
// Handle analog controls
|
||||
if (fFakeDip & 0x80) {
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -9204,36 +9204,6 @@ static struct BurnRomInfo Xmvsfur2RomDesc[] = {
|
|||
STD_ROM_PICK(Xmvsfur2)
|
||||
STD_ROM_FN(Xmvsfur2)
|
||||
|
||||
static struct BurnRomInfo XmvsfcphRomDesc[] = {
|
||||
{ "xvse.03f", 0x080000, 0xd0d03ddf, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "xvse.04f", 0x080000, 0xef015aef, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "xvs.05a", 0x080000, 0x7db6025d, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "xvs.06a", 0x080000, 0xe8e2c75c, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "xvs.07", 0x080000, 0x08f0abed, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "xvs.08", 0x080000, 0x81929675, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "xvs.09", 0x080000, 0x9641f36b, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
|
||||
{ "xvs.13m", 0x400000, 0xf6684efd, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.15m", 0x400000, 0x29109221, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.17m", 0x400000, 0x92db3474, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.19m", 0x400000, 0x3733473c, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.14m", 0x400000, 0xbcac2e41, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.16m", 0x400000, 0xea04a272, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.18m", 0x400000, 0xb0def86a, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.20m", 0x400000, 0x4b40ff9f, CPS2_GFX | BRF_GRA },
|
||||
|
||||
{ "xvs.01", 0x020000, 0x3999e93a, CPS2_PRG_Z80 | BRF_ESS | BRF_PRG },
|
||||
{ "xvs.02", 0x020000, 0x101bdee9, CPS2_PRG_Z80 | BRF_ESS | BRF_PRG },
|
||||
|
||||
{ "xvs.11m", 0x200000, 0x9cadcdbc, CPS2_QSND | BRF_SND },
|
||||
{ "xvs.12m", 0x200000, 0x7b11e460, CPS2_QSND | BRF_SND },
|
||||
|
||||
{ "xmvsf.key", 0x000014, 0xd5c07311, CPS2_ENCRYPTION_KEY },
|
||||
};
|
||||
|
||||
STD_ROM_PICK(Xmvsfcph)
|
||||
STD_ROM_FN(Xmvsfcph)
|
||||
|
||||
// Driver functions
|
||||
|
||||
static INT32 MvscjsingInit()
|
||||
|
@ -12152,16 +12122,6 @@ struct BurnDriver BurnDrvCpsXmvsfur2 = {
|
|||
&CpsRecalcPal, 0x1000, 384, 224, 4, 3
|
||||
};
|
||||
|
||||
struct BurnDriver BurnDrvCpsXmvsfcph = {
|
||||
"xmvsfcph", "xmvsf", NULL, NULL, "2022",
|
||||
"X-Men Vs. Street Fighter (Hack, 961004 Coop)\0", NULL, "Bank Bank", "CPS2",
|
||||
NULL, NULL, NULL, NULL,
|
||||
BDF_GAME_WORKING | BDF_CLONE | BDF_HISCORE_SUPPORTED | BDF_HACK, 2, HARDWARE_CAPCOM_CPS2, GBF_VSFIGHT, FBF_SF,
|
||||
NULL, XmvsfcphRomInfo, XmvsfcphRomName, NULL, NULL, NULL, NULL, Cps2FightingInputInfo, NULL,
|
||||
Cps2Init, DrvExit, Cps2Frame, CpsRedraw, CpsAreaScan,
|
||||
&CpsRecalcPal, 0x1000, 384, 224, 4, 3
|
||||
};
|
||||
|
||||
// Phoenix sets
|
||||
|
||||
static struct BurnRomInfo NinexxdRomDesc[] = {
|
||||
|
@ -13275,7 +13235,7 @@ static struct BurnSampleInfo Sfz3mixSampleDesc[] = {
|
|||
{ "L18", SAMPLE_NOLOOP },
|
||||
{ "L19", SAMPLE_NOLOOP },
|
||||
{ "L1A", SAMPLE_NOLOOP | SAMPLE_NODUMP },
|
||||
{ "L1B", SAMPLE_NOLOOP | SAMPLE_NODUMP },
|
||||
{ "L1B", SAMPLE_NOLOOP },
|
||||
{ "L1C", SAMPLE_NOLOOP },
|
||||
{ "L1D", SAMPLE_NOLOOP | SAMPLE_NODUMP },
|
||||
{ "L1E", SAMPLE_NOLOOP },
|
||||
|
@ -13339,7 +13299,7 @@ static struct BurnSampleInfo Sfz3mixSampleDesc[] = {
|
|||
{ "R18", SAMPLE_NOLOOP },
|
||||
{ "R19", SAMPLE_NOLOOP },
|
||||
{ "R1A", SAMPLE_NOLOOP | SAMPLE_NODUMP },
|
||||
{ "R1B", SAMPLE_NOLOOP | SAMPLE_NODUMP },
|
||||
{ "R1B", SAMPLE_NOLOOP },
|
||||
{ "R1C", SAMPLE_NOLOOP },
|
||||
{ "R1D", SAMPLE_NOLOOP | SAMPLE_NODUMP },
|
||||
{ "R1E", SAMPLE_NOLOOP },
|
||||
|
@ -15240,7 +15200,7 @@ STD_ROM_FN(Hsf2df)
|
|||
|
||||
struct BurnDriver BurnDrvCpsHsf2df = {
|
||||
"hsf2df", "hsf2", NULL, NULL, "2023",
|
||||
"Hyper Street Fighter II: The Anniversary Edition (Difficulty Fix, Hack)\0", NULL, "hack", "CPS2",
|
||||
"Hyper Street Fighter II: The Anniversary Edition (Difficulty Fix, Hack)\0", NULL, "hack (bankbank)", "CPS2",
|
||||
NULL, NULL, NULL, NULL,
|
||||
BDF_GAME_WORKING | BDF_CLONE | BDF_HACK | BDF_HISCORE_SUPPORTED, 2, HARDWARE_CAPCOM_CPS2, GBF_VSFIGHT, FBF_SF,
|
||||
NULL, Hsf2dfRomInfo, Hsf2dfRomName, NULL, NULL, NULL, NULL, Cps2FightingInputInfo, NULL,
|
||||
|
@ -15298,10 +15258,99 @@ STD_ROM_FN(Sfa2ultra)
|
|||
|
||||
struct BurnDriver BurnDrvCpsSfa2ultra = {
|
||||
"sfa2ultra", "sfa2", NULL, NULL, "2023",
|
||||
"Street Fighter Alpha 2 Ultra (Beta)\0", NULL, "hack", "CPS2",
|
||||
"Street Fighter Alpha 2 Ultra (Beta)\0", NULL, "hack (bankbank)", "CPS2",
|
||||
NULL, NULL, NULL, NULL,
|
||||
BDF_GAME_WORKING | BDF_CLONE | BDF_HACK | BDF_HISCORE_SUPPORTED, 2, HARDWARE_CAPCOM_CPS2, GBF_VSFIGHT, FBF_SF,
|
||||
NULL, Sfa2ultraRomInfo, Sfa2ultraRomName, NULL, NULL, NULL, NULL, Cps2FightingInputInfo, NULL,
|
||||
Sfa2Init, DrvExit, Cps2Frame, CpsRedraw, CpsAreaScan,
|
||||
&CpsRecalcPal, 0x1000, 384, 224, 4, 3
|
||||
};
|
||||
|
||||
// X-Men Vs. Street Fighter (Coop, Hack)
|
||||
// Modified by bankbank
|
||||
// 202205
|
||||
|
||||
static struct BurnRomInfo XmvsfcphRomDesc[] = {
|
||||
{ "xmvsfcph.03f", 0x080000, 0xd0d03ddf, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "xvse.04f", 0x080000, 0xef015aef, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "xvs.05a", 0x080000, 0x7db6025d, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "xvs.06a", 0x080000, 0xe8e2c75c, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "xvs.07", 0x080000, 0x08f0abed, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "xvs.08", 0x080000, 0x81929675, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "xvs.09", 0x080000, 0x9641f36b, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
|
||||
{ "xvs.13m", 0x400000, 0xf6684efd, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.15m", 0x400000, 0x29109221, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.17m", 0x400000, 0x92db3474, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.19m", 0x400000, 0x3733473c, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.14m", 0x400000, 0xbcac2e41, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.16m", 0x400000, 0xea04a272, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.18m", 0x400000, 0xb0def86a, CPS2_GFX | BRF_GRA },
|
||||
{ "xvs.20m", 0x400000, 0x4b40ff9f, CPS2_GFX | BRF_GRA },
|
||||
|
||||
{ "xvs.01", 0x020000, 0x3999e93a, CPS2_PRG_Z80 | BRF_ESS | BRF_PRG },
|
||||
{ "xvs.02", 0x020000, 0x101bdee9, CPS2_PRG_Z80 | BRF_ESS | BRF_PRG },
|
||||
|
||||
{ "xvs.11m", 0x200000, 0x9cadcdbc, CPS2_QSND | BRF_SND },
|
||||
{ "xvs.12m", 0x200000, 0x7b11e460, CPS2_QSND | BRF_SND },
|
||||
|
||||
{ "xmvsf.key", 0x000014, 0xd5c07311, CPS2_ENCRYPTION_KEY },
|
||||
};
|
||||
|
||||
STD_ROM_PICK(Xmvsfcph)
|
||||
STD_ROM_FN(Xmvsfcph)
|
||||
|
||||
struct BurnDriver BurnDrvCpsXmvsfcph = {
|
||||
"xmvsfcph", "xmvsf", NULL, NULL, "2022",
|
||||
"X-Men Vs. Street Fighter (Coop, Hack)\0", NULL, "hack (bankbank)", "CPS2",
|
||||
NULL, NULL, NULL, NULL,
|
||||
BDF_GAME_WORKING | BDF_CLONE | BDF_HISCORE_SUPPORTED | BDF_HACK, 2, HARDWARE_CAPCOM_CPS2, GBF_VSFIGHT, FBF_SF,
|
||||
NULL, XmvsfcphRomInfo, XmvsfcphRomName, NULL, NULL, NULL, NULL, Cps2FightingInputInfo, NULL,
|
||||
Cps2Init, DrvExit, Cps2Frame, CpsRedraw, CpsAreaScan,
|
||||
&CpsRecalcPal, 0x1000, 384, 224, 4, 3
|
||||
};
|
||||
|
||||
// Marvel Super Heroes Vs. Street Fighter (Coop, Hack)
|
||||
// Modified by bankbank
|
||||
// 20240628
|
||||
|
||||
static struct BurnRomInfo MshvsfcphRomDesc[] = {
|
||||
{ "mshvsfcph.03f", 0x080000, 0x086f345a, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "mvse.04f", 0x080000, 0x6ef799f9, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "mvs.05a", 0x080000, 0x1a5de0cb, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "mvs.06a", 0x080000, 0x959f3030, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "mvs.07b", 0x080000, 0x7f915bdb, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "mvs.08a", 0x080000, 0xc2813884, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "mvs.09b", 0x080000, 0x3ba08818, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
{ "mvs.10b", 0x080000, 0xcf0dba98, CPS2_PRG_68K | BRF_ESS | BRF_PRG },
|
||||
|
||||
{ "mvs.13m", 0x400000, 0x29b05fd9, CPS2_GFX | BRF_GRA },
|
||||
{ "mvs.15m", 0x400000, 0xfaddccf1, CPS2_GFX | BRF_GRA },
|
||||
{ "mvs.17m", 0x400000, 0x97aaf4c7, CPS2_GFX | BRF_GRA },
|
||||
{ "mvs.19m", 0x400000, 0xcb70e915, CPS2_GFX | BRF_GRA },
|
||||
{ "mvs.14m", 0x400000, 0xb3b1972d, CPS2_GFX | BRF_GRA },
|
||||
{ "mvs.16m", 0x400000, 0x08aadb5d, CPS2_GFX | BRF_GRA },
|
||||
{ "mvs.18m", 0x400000, 0xc1228b35, CPS2_GFX | BRF_GRA },
|
||||
{ "mvs.20m", 0x400000, 0x366cc6c2, CPS2_GFX | BRF_GRA },
|
||||
|
||||
{ "mvs.01", 0x020000, 0x68252324, CPS2_PRG_Z80 | BRF_ESS | BRF_PRG },
|
||||
{ "mvs.02", 0x020000, 0xb34e773d, CPS2_PRG_Z80 | BRF_ESS | BRF_PRG },
|
||||
|
||||
{ "mvs.11m", 0x400000, 0x86219770, CPS2_QSND | BRF_SND },
|
||||
{ "mvs.12m", 0x400000, 0xf2fd7f68, CPS2_QSND | BRF_SND },
|
||||
|
||||
{ "mshvsf.key", 0x000014, 0x64660867, CPS2_ENCRYPTION_KEY },
|
||||
};
|
||||
|
||||
STD_ROM_PICK(Mshvsfcph)
|
||||
STD_ROM_FN(Mshvsfcph)
|
||||
|
||||
struct BurnDriver BurnDrvCpsMshvsfcph = {
|
||||
"mshvsfcph", "mshvsf", NULL, NULL, "2024",
|
||||
"Marvel Super Heroes Vs. Street Fighter (Coop, Hack)\0", NULL, "hack (bankbank)", "CPS2",
|
||||
NULL, NULL, NULL, NULL,
|
||||
BDF_GAME_WORKING | BDF_CLONE | BDF_HACK | BDF_HISCORE_SUPPORTED, 2, HARDWARE_CAPCOM_CPS2, GBF_VSFIGHT, FBF_SF,
|
||||
NULL, MshvsfcphRomInfo, MshvsfcphRomName, NULL, NULL, NULL, NULL, Cps2FightingInputInfo, NULL,
|
||||
Cps2Init, DrvExit, Cps2Frame, CpsRedraw, CpsAreaScan,
|
||||
&CpsRecalcPal, 0x1000, 384, 224, 4, 3
|
||||
};
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
// FB Alpha Jackal driver module
|
||||
// FB Neo Jackal driver module
|
||||
// Based on MAME driver by Kenneth Lin
|
||||
|
||||
#include "tiles_generic.h"
|
||||
|
@ -44,6 +44,7 @@ static INT32 layer_offset_x = 8;
|
|||
static INT32 layer_offset_y = 16;
|
||||
|
||||
static INT32 bootleg = 0;
|
||||
static INT32 jackalr = 0;
|
||||
|
||||
//static INT32 nRotate[2] = { 0, 0 };
|
||||
//static UINT32 nRotateTime[2] = { 0, 0 };
|
||||
|
@ -307,17 +308,17 @@ static void RotateReset() {
|
|||
}
|
||||
|
||||
static UINT32 RotationTimer(void) {
|
||||
return nCurrentFrame;
|
||||
return nCurrentFrame;
|
||||
}
|
||||
|
||||
static void RotateRight(INT32 *v) {
|
||||
(*v)++;
|
||||
if (*v > 7) *v = 0;
|
||||
(*v)++;
|
||||
if (*v > 7) *v = 0;
|
||||
}
|
||||
|
||||
static void RotateLeft(INT32 *v) {
|
||||
(*v)--;
|
||||
if (*v < 0) *v = 7;
|
||||
(*v)--;
|
||||
if (*v < 0) *v = 7;
|
||||
}
|
||||
|
||||
static UINT8 Joy2Rotate(UINT8 *joy) { // ugly code, but the effect is awesome. -dink
|
||||
|
@ -336,32 +337,32 @@ static UINT8 Joy2Rotate(UINT8 *joy) { // ugly code, but the effect is awesome. -
|
|||
}
|
||||
|
||||
static int dialRotation(INT32 playernum) {
|
||||
// p1 = 0, p2 = 1
|
||||
// p1 = 0, p2 = 1
|
||||
UINT8 player[2] = { 0, 0 };
|
||||
static UINT8 lastplayer[2][2] = { { 0, 0 }, { 0, 0 } };
|
||||
|
||||
if ((playernum != 0) && (playernum != 1)) {
|
||||
bprintf(PRINT_NORMAL, _T("Strange Rotation address => %06X\n"), playernum);
|
||||
return 0;
|
||||
}
|
||||
if (playernum == 0) {
|
||||
player[0] = DrvFakeInput[0]; player[1] = DrvFakeInput[1];
|
||||
}
|
||||
if (playernum == 1) {
|
||||
player[0] = DrvFakeInput[2]; player[1] = DrvFakeInput[3];
|
||||
}
|
||||
if ((playernum != 0) && (playernum != 1)) {
|
||||
bprintf(PRINT_NORMAL, _T("Strange Rotation address => %06X\n"), playernum);
|
||||
return 0;
|
||||
}
|
||||
if (playernum == 0) {
|
||||
player[0] = DrvFakeInput[0]; player[1] = DrvFakeInput[1];
|
||||
}
|
||||
if (playernum == 1) {
|
||||
player[0] = DrvFakeInput[2]; player[1] = DrvFakeInput[3];
|
||||
}
|
||||
|
||||
if (player[0] && (player[0] != lastplayer[playernum][0] || (RotationTimer() > nRotateTime[playernum]+0xf))) {
|
||||
if (player[0] && (player[0] != lastplayer[playernum][0] || (RotationTimer() > nRotateTime[playernum]+0xf))) {
|
||||
RotateLeft(&nRotate[playernum]);
|
||||
//bprintf(PRINT_NORMAL, _T("Player %d Rotate Left => %06X\n"), playernum+1, nRotate[playernum]);
|
||||
//bprintf(PRINT_NORMAL, _T("Player %d Rotate Left => %06X\n"), playernum+1, nRotate[playernum]);
|
||||
nRotateTime[playernum] = RotationTimer();
|
||||
nRotateTarget[playernum] = -1;
|
||||
}
|
||||
}
|
||||
|
||||
if (player[1] && (player[1] != lastplayer[playernum][1] || (RotationTimer() > nRotateTime[playernum]+0xf))) {
|
||||
RotateRight(&nRotate[playernum]);
|
||||
//bprintf(PRINT_NORMAL, _T("Player %d Rotate Right => %06X\n"), playernum+1, nRotate[playernum]);
|
||||
nRotateTime[playernum] = RotationTimer();
|
||||
RotateRight(&nRotate[playernum]);
|
||||
//bprintf(PRINT_NORMAL, _T("Player %d Rotate Right => %06X\n"), playernum+1, nRotate[playernum]);
|
||||
nRotateTime[playernum] = RotationTimer();
|
||||
nRotateTarget[playernum] = -1;
|
||||
}
|
||||
|
||||
|
@ -713,27 +714,27 @@ static void DrvPaletteInit()
|
|||
|
||||
static INT32 DrvInit()
|
||||
{
|
||||
AllMem = NULL;
|
||||
MemIndex();
|
||||
INT32 nLen = MemEnd - (UINT8 *)0;
|
||||
if ((AllMem = (UINT8 *)BurnMalloc(nLen)) == NULL) return 1;
|
||||
memset(AllMem, 0, nLen);
|
||||
MemIndex();
|
||||
BurnAllocMemIndex();
|
||||
|
||||
if (!bootleg) {
|
||||
// Jackal
|
||||
if (BurnLoadRom(DrvM6809ROM0 + 0x10000, 0, 1)) return 1;
|
||||
if (BurnLoadRom(DrvM6809ROM0 + 0x0c000, 1, 1)) return 1;
|
||||
|
||||
if (BurnLoadRom(DrvM6809ROM1 + 0x08000, 2, 1)) return 1;
|
||||
INT32 nIndex = 0;
|
||||
INT32 nLen = (jackalr) ? 0x20000 : 0x40000;
|
||||
INT32 nLoop = (jackalr) ? 4 : 2;
|
||||
|
||||
if (BurnLoadRom(DrvGfxROM2 + 0x00000, 3, 2)) return 1;
|
||||
if (BurnLoadRom(DrvGfxROM2 + 0x00001, 4, 2)) return 1;
|
||||
if (BurnLoadRom(DrvGfxROM2 + 0x40000, 5, 2)) return 1;
|
||||
if (BurnLoadRom(DrvGfxROM2 + 0x40001, 6, 2)) return 1;
|
||||
if (BurnLoadRom(DrvM6809ROM0 + 0x10000, nIndex++, 1)) return 1;
|
||||
if (BurnLoadRom(DrvM6809ROM0 + 0x0c000, nIndex++, 1)) return 1;
|
||||
|
||||
if (BurnLoadRom(DrvColPROM + 0x00000, 7, 1)) return 1;
|
||||
if (BurnLoadRom(DrvColPROM + 0x00100, 8, 1)) return 1;
|
||||
if (BurnLoadRom(DrvM6809ROM1 + 0x08000, nIndex++, 1)) return 1;
|
||||
|
||||
for (INT32 i = 0; i < nLoop; i++) {
|
||||
if (BurnLoadRom(DrvGfxROM2 + 0x00000 + i * nLen, nIndex++, 2)) return 1;
|
||||
if (BurnLoadRom(DrvGfxROM2 + 0x00001 + i * nLen, nIndex++, 2)) return 1;
|
||||
}
|
||||
|
||||
if (BurnLoadRom(DrvColPROM + 0x00000, nIndex++, 1)) return 1;
|
||||
if (BurnLoadRom(DrvColPROM + 0x00100, nIndex++, 1)) return 1;
|
||||
} else {
|
||||
// Bootleg
|
||||
if (BurnLoadRom(DrvM6809ROM0 + 0x10000, 0, 1)) return 1;
|
||||
|
@ -807,9 +808,10 @@ static INT32 DrvExit()
|
|||
|
||||
GenericTilesExit();
|
||||
|
||||
BurnFree(AllMem);
|
||||
BurnFreeMemIndex();
|
||||
|
||||
bootleg = 0;
|
||||
jackalr = 0;
|
||||
game_rotates = 1;
|
||||
|
||||
return 0;
|
||||
|
@ -1114,18 +1116,22 @@ STD_ROM_FN(jackal)
|
|||
// Jackal (World, Rotary Joystick)
|
||||
|
||||
static struct BurnRomInfo jackalrRomDesc[] = {
|
||||
{ "631_q02.15d", 0x10000, 0xed2a7d66, 0 | BRF_PRG | BRF_ESS }, // 0 - M6809 #0 Code
|
||||
{ "631_q03.16d", 0x04000, 0xb9d34836, 0 | BRF_PRG | BRF_ESS }, // 1
|
||||
{ "631_q02.15d", 0x10000, 0xed2a7d66, 0 | BRF_PRG | BRF_ESS }, // 0 - M6809 #0 Code
|
||||
{ "631_q03.16d", 0x04000, 0xb9d34836, 0 | BRF_PRG | BRF_ESS }, // 1
|
||||
|
||||
{ "631_q01.11d", 0x08000, 0x54aa2d29, 1 | BRF_PRG | BRF_ESS }, // 2 - M6809 #1 Code
|
||||
{ "631_q01.11d", 0x08000, 0x54aa2d29, 1 | BRF_PRG | BRF_ESS }, // 2 - M6809 #1 Code
|
||||
|
||||
{ "631t04.7h", 0x20000, 0x457f42f0, 2 | BRF_GRA }, // 3 - Graphics Tiles
|
||||
{ "631t05.8h", 0x20000, 0x732b3fc1, 2 | BRF_GRA }, // 4
|
||||
{ "631t06.12h", 0x20000, 0x2d10e56e, 2 | BRF_GRA }, // 5
|
||||
{ "631t07.13h", 0x20000, 0x4961c397, 2 | BRF_GRA }, // 6
|
||||
{ "631_q05.7h", 0x10000, 0xbcf5d0a8, 2 | BRF_GRA }, // 3 - Graphics Tiles
|
||||
{ "631_q06.8h", 0x10000, 0x4cb5df22, 2 | BRF_GRA }, // 4
|
||||
{ "631_q04.7h", 0x10000, 0xe1e9aa42, 2 | BRF_GRA }, // 5
|
||||
{ "631_q07.8h", 0x10000, 0xcc68c5b8, 2 | BRF_GRA }, // 6
|
||||
{ "631_q09.12h", 0x10000, 0x55ea6852, 2 | BRF_GRA }, // 7
|
||||
{ "631_q10.13h", 0x10000, 0xfe93e217, 2 | BRF_GRA }, // 8
|
||||
{ "631_q08.12h", 0x10000, 0xd2492b8b, 2 | BRF_GRA }, // 9
|
||||
{ "631_q11.13h", 0x10000, 0x563ae24c, 2 | BRF_GRA }, // 10
|
||||
|
||||
{ "631r08.9h", 0x00100, 0x7553a172, 3 | BRF_GRA }, // 7 - Color PROMs
|
||||
{ "631r09.14h", 0x00100, 0xa74dd86c, 3 | BRF_GRA }, // 7 - Color PROMs
|
||||
{ "631r08.9h", 0x00100, 0x7553a172, 3 | BRF_GRA }, // 11 - Color PROMs
|
||||
{ "631r09.14h", 0x00100, 0xa74dd86c, 3 | BRF_GRA }, // 12
|
||||
};
|
||||
|
||||
STD_ROM_PICK(jackalr)
|
||||
|
@ -1256,9 +1262,10 @@ INT32 DrvInitbl()
|
|||
return DrvInit();
|
||||
}
|
||||
|
||||
INT32 DrvInitRo()
|
||||
INT32 JackalrInit()
|
||||
{
|
||||
game_rotates = 1;
|
||||
jackalr = 1;
|
||||
|
||||
return DrvInit();
|
||||
}
|
||||
|
@ -1279,7 +1286,7 @@ struct BurnDriver BurnDrvJackalr = {
|
|||
NULL, NULL, NULL, NULL,
|
||||
BDF_GAME_WORKING | BDF_CLONE | BDF_ORIENTATION_VERTICAL | BDF_ORIENTATION_FLIPPED | BDF_HISCORE_SUPPORTED, 2, HARDWARE_PREFIX_KONAMI, GBF_RUNGUN, 0,
|
||||
NULL, jackalrRomInfo, jackalrRomName, NULL, NULL, NULL, NULL, DrvrotateInputInfo, DrvrotateDIPInfo,
|
||||
DrvInitRo, DrvExit, DrvFrame, DrvDraw, DrvScan, &DrvRecalc, 0x300,
|
||||
JackalrInit, DrvExit, DrvFrame, DrvDraw, DrvScan, &DrvRecalc, 0x300,
|
||||
224, 240, 3, 4
|
||||
};
|
||||
|
||||
|
|
|
@ -21566,15 +21566,15 @@ struct BurnDriver BurnDrvKof94rz = {
|
|||
0x1000, 304, 224, 4, 3
|
||||
};
|
||||
|
||||
// King of Fighters '94 (Team Edit Edition v1.4.0, Hack)
|
||||
// King of Fighters '94 (Team Edit Edition v1.4.1, Hack)
|
||||
// https://neorh.mattgreer.dev/
|
||||
|
||||
static struct BurnRomInfo kof94teRomDesc[] = {
|
||||
{ "055-p1te.p1", 0x200000, 0xc597d83c, 1 | BRF_ESS | BRF_PRG },
|
||||
{ "055-p1te.p1", 0x200000, 0x0fea9cd0, 1 | BRF_ESS | BRF_PRG },
|
||||
|
||||
{ "055-s1te.s1", 0x020000, 0xdcd024d2, 2 | BRF_GRA },
|
||||
|
||||
{ "055-c1te.c1", 0x200000, 0xab83690c, 3 | BRF_GRA },
|
||||
{ "055-c1te.c1", 0x200000, 0xe99676e7, 3 | BRF_GRA },
|
||||
{ "055-c2te.c2", 0x200000, 0x849bdfba, 3 | BRF_GRA },
|
||||
KOF94_SPR2
|
||||
KOF94_SPR3
|
||||
|
@ -21591,7 +21591,7 @@ STD_ROM_FN(kof94te)
|
|||
|
||||
struct BurnDriver BurnDrvKof94te = {
|
||||
"kof94te", "kof94", "neogeo", NULL, "2024",
|
||||
"The King of Fighters '94 (Team Edit Edition v1.4.0, Hack)\0", NULL, "hack (Matt Greer)", "Neo Geo MVS",
|
||||
"The King of Fighters '94 (Team Edit Edition v1.4.1, Hack)\0", NULL, "hack (Matt Greer)", "Neo Geo MVS",
|
||||
NULL, NULL, NULL, NULL,
|
||||
BDF_GAME_WORKING | BDF_CLONE | BDF_HACK, 2, HARDWARE_PREFIX_CARTRIDGE | HARDWARE_SNK_NEOGEO | HARDWARE_SNK_SWAPP, GBF_VSFIGHT, FBF_KOF,
|
||||
NULL, kof94teRomInfo, kof94teRomName, NULL, NULL, NULL, NULL, neogeoInputInfo, neogeoDIPInfo,
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
// FB Alpha Kaneko 16-bit driver module
|
||||
// FB Neo Kaneko 16-bit driver module
|
||||
// Based on MAME driver by Luca Elia
|
||||
|
||||
#include "tiles_generic.h"
|
||||
|
@ -1039,7 +1039,7 @@ static struct BurnRomInfo PackbangRomDesc[] = {
|
|||
{ "bbp0x3_u23.u23", 0x020000, 0x8f879c9d, BRF_ESS | BRF_PRG }, // 0 68000 Program Code /* labeled BBP0X3/U23 */
|
||||
{ "bbp1x3_u39.u39", 0x020000, 0x3a90ad84, BRF_ESS | BRF_PRG }, // 1 /* labeled BBP1X3/U39 */
|
||||
|
||||
{ "bb-u84-007__w22.u84", 0x080000, 0x97837aaa, BRF_GRA }, // 2 Sprites /* mask rom */
|
||||
{ "bb-u84-007__w22.u84", 0x080000, 0x97837aaa, BRF_GRA }, // 2 Sprites /* mask rom */
|
||||
{ "bbs0x1_u83.u83", 0x040000, 0x3d95b1e5, BRF_GRA }, // 3 /* labeled BBS0X1/U83 */
|
||||
|
||||
{ "bbb0x1_u77.u77", 0x080000, 0xb2ffd081, BRF_GRA }, // 4 Titles (scrambled) /* 1ST AND 2ND HALF IDENTICAL */
|
||||
|
@ -1062,7 +1062,7 @@ static struct BurnRomInfo PackbangpRomDesc[] = {
|
|||
{ "bbp0x3_527b.u23", 0x020000, 0x105e978a, BRF_ESS | BRF_PRG }, // 0 68000 Program Code /* hand written checksum on label - 527B */
|
||||
{ "bbp1x3_c5c8.u39", 0x020000, 0x465d36f5, BRF_ESS | BRF_PRG }, // 1 /* hand written checksum on label - C5C8 */
|
||||
|
||||
{ "bb.u84", 0x080000, 0x97837aaa, BRF_GRA }, // 2 Sprites
|
||||
{ "bb.u84", 0x080000, 0x97837aaa, BRF_GRA }, // 2 Sprites
|
||||
{ "pb_spr_ext_9_20_ver_ba63.u83", 0x040000, 0x666a1217, BRF_GRA }, // 3 /* hand written label plus checksum BA63 */
|
||||
|
||||
{ "bbb0x1.u77", 0x080000, 0xb2ffd081, BRF_GRA }, // 4 Titles (scrambled) /* 1ST AND 2ND HALF IDENTICAL */
|
||||
|
@ -1552,8 +1552,8 @@ STD_ROM_PICK(Gtmr2a)
|
|||
STD_ROM_FN(Gtmr2a)
|
||||
|
||||
static struct BurnRomInfo Gtmr2uRomDesc[] = {
|
||||
{ "m2p0a1.u8", 0x080000, 0x813e1d5e, BRF_ESS | BRF_PRG }, // 0 68000 Program Code
|
||||
{ "m2p1a1.u7", 0x080000, 0xbee63666, BRF_ESS | BRF_PRG }, // 1
|
||||
{ "m2p0a2.u8", 0x080000, 0x1a008ea4, BRF_ESS | BRF_PRG }, // 0 68000 Program Code
|
||||
{ "m2p1a2.u7", 0x080000, 0xbbf8b43e, BRF_ESS | BRF_PRG }, // 1
|
||||
|
||||
{ "m2d0x0.u31", 0x020000, 0x2e1a06ff, BRF_PRG | BRF_OPT }, // 2 MCU Code
|
||||
|
||||
|
@ -1577,6 +1577,32 @@ static struct BurnRomInfo Gtmr2uRomDesc[] = {
|
|||
STD_ROM_PICK(Gtmr2u)
|
||||
STD_ROM_FN(Gtmr2u)
|
||||
|
||||
static struct BurnRomInfo Gtmr2uaRomDesc[] = {
|
||||
{ "m2p0a1.u8", 0x080000, 0x813e1d5e, BRF_ESS | BRF_PRG }, // 0 68000 Program Code
|
||||
{ "m2p1a1.u7", 0x080000, 0xbee63666, BRF_ESS | BRF_PRG }, // 1
|
||||
|
||||
{ "m2d0x0.u31", 0x020000, 0x2e1a06ff, BRF_PRG | BRF_OPT }, // 2 MCU Code
|
||||
|
||||
{ "m2-200-0.u49", 0x400000, 0x93aafc53, BRF_GRA }, // 3 Sprites
|
||||
{ "m2-201-0.u50", 0x200000, 0x39b60a83, BRF_GRA }, // 4
|
||||
{ "m2-202-0.u51", 0x200000, 0xfd06b339, BRF_GRA }, // 5
|
||||
{ "m2s0a1.u32", 0x080000, 0x98977171, BRF_GRA }, // 6
|
||||
{ "m2s1a1.u33", 0x080000, 0xc69a732e, BRF_GRA }, // 7
|
||||
|
||||
{ "m2-300-0.u89", 0x200000, 0x4dc42fbb, BRF_GRA }, // 8 Tiles
|
||||
{ "m2-301-0.u90", 0x200000, 0xf4e894f2, BRF_GRA }, // 9
|
||||
{ "m2b0x0.u93", 0x020000, 0xe023d51b, BRF_GRA }, // 10
|
||||
{ "m2b1x0.u94", 0x020000, 0x03c48bdb, BRF_GRA }, // 11
|
||||
|
||||
{ "m2-100-0.u48", 0x100000, 0x5250fa45, BRF_SND }, // 12 Samples, plus room for expansion
|
||||
|
||||
{ "m2w1a1.u47", 0x080000, 0x15f25342, BRF_SND }, // 13 Samples
|
||||
};
|
||||
|
||||
|
||||
STD_ROM_PICK(Gtmr2ua)
|
||||
STD_ROM_FN(Gtmr2ua)
|
||||
|
||||
static struct BurnRomInfo MgcrystlRomDesc[] = {
|
||||
{ "mc100e02.u18", 0x020000, 0x246a1335, BRF_ESS | BRF_PRG }, // 0 68000 Program Code /* Labeled as MC100E/U18-02 */
|
||||
{ "mc101e02.u19", 0x040000, 0x708ea1dc, BRF_ESS | BRF_PRG }, // 1 /* Labeled as MC101E/U19-02 */
|
||||
|
@ -2186,7 +2212,7 @@ static INT16 calc_compute_x(void)
|
|||
else if ((hit.x1p >= hit.x2p) && (hit.x1p < (hit.x2p + hit.x2s))) // x1p inside x2
|
||||
x_coll = (hit.x2s - (hit.x1p - hit.x2p));
|
||||
else // normal/no overlap
|
||||
x_coll = ((hit.x1s + hit.x2s)/2) - abs((hit.x1p + hit.x1s/2) - (hit.x2p + hit.x2s/2));
|
||||
x_coll = ((hit.x1s + hit.x2s)/2) - abs((hit.x1p + hit.x1s/2) - (hit.x2p + hit.x2s/2));
|
||||
|
||||
return x_coll;
|
||||
}
|
||||
|
@ -6996,7 +7022,7 @@ static INT32 BerlwallFrameRender()
|
|||
Kaneko16Palette[i + 2048] = 0;
|
||||
}
|
||||
} else {
|
||||
for (i = 0; i < 32768; i++) {
|
||||
for (i = 0; i < 32768; i++) {
|
||||
INT32 r = (pal5bit(i >> 5) * nBrightness) / 100;
|
||||
INT32 g = (pal5bit(i >> 10) * nBrightness) / 100;
|
||||
INT32 b = (pal5bit(i >> 0) * nBrightness) / 100;
|
||||
|
@ -7977,7 +8003,7 @@ struct BurnDriver BurnDrvGtmr2a = {
|
|||
|
||||
struct BurnDriver BurnDrvGtmr2u = {
|
||||
"gtmr2u", "gtmr2", NULL, NULL, "1995",
|
||||
"Great 1000 Miles Rally 2 USA (95/05/18)\0", NULL, "Kaneko", "Kaneko16",
|
||||
"Great 1000 Miles Rally 2 USA (95/07/11)\0", NULL, "Kaneko", "Kaneko16",
|
||||
NULL, NULL, NULL, NULL,
|
||||
BDF_GAME_WORKING | BDF_CLONE | BDF_HISCORE_SUPPORTED, 2, HARDWARE_KANEKO16, GBF_RACING, 0,
|
||||
NULL, Gtmr2uRomInfo, Gtmr2uRomName, NULL, NULL, NULL, NULL, GtmrInputInfo, Gtmr2DIPInfo,
|
||||
|
@ -7985,6 +8011,16 @@ struct BurnDriver BurnDrvGtmr2u = {
|
|||
NULL, 0x10000, 320, 240, 4, 3
|
||||
};
|
||||
|
||||
struct BurnDriver BurnDrvGtmr2ua = {
|
||||
"gtmr2ua", "gtmr2", NULL, NULL, "1995",
|
||||
"Great 1000 Miles Rally 2 USA (95/05/18)\0", NULL, "Kaneko", "Kaneko16",
|
||||
NULL, NULL, NULL, NULL,
|
||||
BDF_GAME_WORKING | BDF_CLONE | BDF_HISCORE_SUPPORTED, 2, HARDWARE_KANEKO16, GBF_RACING, 0,
|
||||
NULL, Gtmr2uaRomInfo, Gtmr2uaRomName, NULL, NULL, NULL, NULL, GtmrInputInfo, Gtmr2DIPInfo,
|
||||
Gtmr2uInit, GtmrMachineExit, GtmrFrame, GtmrFrameRender, GtmrScan,
|
||||
NULL, 0x10000, 320, 240, 4, 3
|
||||
};
|
||||
|
||||
struct BurnDriver BurnDrvMgcrsytl = {
|
||||
"mgcrystl", NULL, NULL, NULL, "1991",
|
||||
"Magical Crystals (World, 92/01/10)\0", NULL, "Kaneko", "Kaneko16",
|
||||
|
|
|
@ -1180,7 +1180,6 @@ void IpsApplyPatches(UINT8* base, char* rom_name, UINT32 crc, bool readonly)
|
|||
|
||||
void IpsPatchInit()
|
||||
{
|
||||
bDoIpsPatch = true;
|
||||
GetIpsDrvDefine();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue