Tidy some CPS-1 custom gfx load routines (avoid loading files unnecessarily!)
This commit is contained in:
parent
e80f5c0413
commit
d96a270d27
|
@ -176,9 +176,9 @@ static INT32 CpsLoadOnePang(UINT8 *Tile,INT32 nNum,INT32 nWord,INT32 nShift)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static INT32 CpsLoadOneHack160(UINT8 *Tile, INT32 nNum, INT32 nWord, INT32 nOffset)
|
static INT32 CpsLoadOneHack160(UINT8 *Tile, INT32 nNum, INT32 nWord, INT32 nType)
|
||||||
{
|
{
|
||||||
INT32 i = 0;
|
INT32 i = 0, j = 0;
|
||||||
UINT8 *Rom1 = NULL, *Rom2 = NULL;
|
UINT8 *Rom1 = NULL, *Rom2 = NULL;
|
||||||
INT32 nRomLen1 = 0, nRomLen2 = 0;
|
INT32 nRomLen1 = 0, nRomLen2 = 0;
|
||||||
UINT8 *pt = NULL, *pr = NULL;
|
UINT8 *pt = NULL, *pr = NULL;
|
||||||
|
@ -192,7 +192,14 @@ static INT32 CpsLoadOneHack160(UINT8 *Tile, INT32 nNum, INT32 nWord, INT32 nOffs
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0, pt = Tile, pr = Rom1 + (0x80000 * nOffset); i < 0x80000; pt += 8) {
|
INT32 TileOffset[4] = { 0x000000, 0x000004, 0x200000, 0x200004 };
|
||||||
|
if (nType == 1) {
|
||||||
|
TileOffset[1] = 0x200000;
|
||||||
|
TileOffset[2] = 0x000004;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (j = 0; j < 4; j++) {
|
||||||
|
for (i = 0, pt = Tile + TileOffset[j], pr = Rom1 + (0x80000 * j); i < 0x80000; pt += 8) {
|
||||||
UINT32 Pix; // Eight pixels
|
UINT32 Pix; // Eight pixels
|
||||||
UINT8 b;
|
UINT8 b;
|
||||||
b = *pr++; i++; Pix = SepTable[b];
|
b = *pr++; i++; Pix = SepTable[b];
|
||||||
|
@ -204,7 +211,7 @@ static INT32 CpsLoadOneHack160(UINT8 *Tile, INT32 nNum, INT32 nWord, INT32 nOffs
|
||||||
*((UINT32 *)pt) |= Pix;
|
*((UINT32 *)pt) |= Pix;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0, pt = Tile, pr = Rom2 + (0x80000 * nOffset); i < 0x80000; pt += 8) {
|
for (i = 0, pt = Tile + TileOffset[j], pr = Rom2 + (0x80000 * j); i < 0x80000; pt += 8) {
|
||||||
UINT32 Pix; // Eight pixels
|
UINT32 Pix; // Eight pixels
|
||||||
UINT8 b;
|
UINT8 b;
|
||||||
b = *pr++; i++; Pix = SepTable[b];
|
b = *pr++; i++; Pix = SepTable[b];
|
||||||
|
@ -215,6 +222,7 @@ static INT32 CpsLoadOneHack160(UINT8 *Tile, INT32 nNum, INT32 nWord, INT32 nOffs
|
||||||
Pix <<= 2;
|
Pix <<= 2;
|
||||||
*((UINT32 *)pt) |= Pix;
|
*((UINT32 *)pt) |= Pix;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
BurnFree(Rom2);
|
BurnFree(Rom2);
|
||||||
BurnFree(Rom1);
|
BurnFree(Rom1);
|
||||||
|
@ -555,19 +563,9 @@ INT32 CpsLoadTilesPang(UINT8* Tile, INT32 nStart)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
INT32 CpsLoadTilesHack160(UINT8* Tile, INT32 nStart)
|
static INT32 CpsLoadTilesBootleg(UINT8 *Tile, INT32 nStart)
|
||||||
{
|
{
|
||||||
CpsLoadOneHack160(Tile + 0 + 0x000000, nStart, 1, 0);
|
CpsLoadOneBootleg(Tile, nStart + 0, 0, 0);
|
||||||
CpsLoadOneHack160(Tile + 4 + 0x000000, nStart, 1, 1);
|
|
||||||
CpsLoadOneHack160(Tile + 0 + 0x200000, nStart, 1, 2);
|
|
||||||
CpsLoadOneHack160(Tile + 4 + 0x200000, nStart, 1, 3);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
INT32 CpsLoadTilesBootleg(UINT8 *Tile, INT32 nStart)
|
|
||||||
{
|
|
||||||
CpsLoadOneBootleg(Tile, nStart, 0, 0);
|
|
||||||
CpsLoadOneBootleg(Tile, nStart + 1, 0, 1);
|
CpsLoadOneBootleg(Tile, nStart + 1, 0, 1);
|
||||||
CpsLoadOneBootleg(Tile, nStart + 2, 0, 2);
|
CpsLoadOneBootleg(Tile, nStart + 2, 0, 2);
|
||||||
CpsLoadOneBootleg(Tile, nStart + 3, 0, 3);
|
CpsLoadOneBootleg(Tile, nStart + 3, 0, 3);
|
||||||
|
@ -575,26 +573,6 @@ INT32 CpsLoadTilesBootleg(UINT8 *Tile, INT32 nStart)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
INT32 CpsLoadTilesCaptcomb(UINT8 *Tile, INT32 nStart)
|
|
||||||
{
|
|
||||||
CpsLoadOneBootlegType2(Tile, nStart, 0, 0);
|
|
||||||
CpsLoadOneBootlegType2(Tile, nStart + 1, 0, 1);
|
|
||||||
CpsLoadOneBootlegType2(Tile, nStart + 2, 0, 2);
|
|
||||||
CpsLoadOneBootlegType2(Tile, nStart + 3, 0, 3);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
INT32 CpsLoadTilesPunipic2(UINT8 *Tile, INT32 nStart)
|
|
||||||
{
|
|
||||||
CpsLoadOneHack160(Tile + 0 + 0x000000, nStart, 1, 0);
|
|
||||||
CpsLoadOneHack160(Tile + 0 + 0x200000, nStart, 1, 1);
|
|
||||||
CpsLoadOneHack160(Tile + 4 + 0x000000, nStart, 1, 2);
|
|
||||||
CpsLoadOneHack160(Tile + 4 + 0x200000, nStart, 1, 3);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
INT32 CpsLoadTilesSf2ebbl(UINT8 *Tile, INT32 nStart)
|
INT32 CpsLoadTilesSf2ebbl(UINT8 *Tile, INT32 nStart)
|
||||||
{
|
{
|
||||||
CpsLoadOneSf2ebbl(Tile, nStart + 0, 0, 0);
|
CpsLoadOneSf2ebbl(Tile, nStart + 0, 0, 0);
|
||||||
|
@ -605,6 +583,30 @@ INT32 CpsLoadTilesSf2ebbl(UINT8 *Tile, INT32 nStart)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static INT32 CpsLoadTilesBootlegType3(UINT8 *Tile, INT32 nStart)
|
||||||
|
{
|
||||||
|
CpsLoadOneBootlegType3(Tile, nStart + 0, 0, 0);
|
||||||
|
CpsLoadOneBootlegType3(Tile, nStart + 1, 0, 1);
|
||||||
|
CpsLoadOneBootlegType3(Tile, nStart + 2, 0, 2);
|
||||||
|
CpsLoadOneBootlegType3(Tile, nStart + 3, 0, 3);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
INT32 CpsLoadTilesHack160(INT32 nStart)
|
||||||
|
{
|
||||||
|
CpsLoadOneHack160(CpsGfx, nStart, 1, 0);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
INT32 CpsLoadTilesHack160Alt(INT32 nStart)
|
||||||
|
{
|
||||||
|
CpsLoadOneHack160(CpsGfx, nStart, 1, 1);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
INT32 CpsLoadTilesSf2koryu(INT32 nStart)
|
INT32 CpsLoadTilesSf2koryu(INT32 nStart)
|
||||||
{
|
{
|
||||||
CpsLoadOneSf2koryu(CpsGfx + 0x000000, nStart + 0, 1, 0);
|
CpsLoadOneSf2koryu(CpsGfx + 0x000000, nStart + 0, 1, 0);
|
||||||
|
@ -619,18 +621,9 @@ INT32 CpsLoadTilesSf2koryu(INT32 nStart)
|
||||||
|
|
||||||
INT32 CpsLoadTilesSf2mdt(INT32 nStart)
|
INT32 CpsLoadTilesSf2mdt(INT32 nStart)
|
||||||
{
|
{
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x000000, nStart + 0, 0, 0);
|
CpsLoadTilesBootlegType3(CpsGfx + 0x000000, nStart + 0);
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x000000, nStart + 1, 0, 1);
|
CpsLoadTilesBootlegType3(CpsGfx + 0x200000, nStart + 4);
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x000000, nStart + 2, 0, 2);
|
CpsLoadTilesBootlegType3(CpsGfx + 0x400000, nStart + 8);
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x000000, nStart + 3, 0, 3);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x200000, nStart + 4, 0, 0);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x200000, nStart + 5, 0, 1);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x200000, nStart + 6, 0, 2);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x200000, nStart + 7, 0, 3);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x400000, nStart + 8, 0, 0);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x400000, nStart + 9, 0, 1);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x400000, nStart + 10, 0, 2);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x400000, nStart + 11, 0, 3);
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -649,32 +642,42 @@ INT32 CpsLoadTilesSf2mdta(INT32 nStart)
|
||||||
|
|
||||||
INT32 CpsLoadTilesFcrash(INT32 nStart)
|
INT32 CpsLoadTilesFcrash(INT32 nStart)
|
||||||
{
|
{
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x000000, nStart + 0, 0, 0);
|
CpsLoadTilesBootlegType3(CpsGfx + 0x000000, nStart + 0);
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x000000, nStart + 1, 0, 1);
|
CpsLoadTilesBootlegType3(CpsGfx + 0x080000, nStart + 4);
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x000000, nStart + 2, 0, 2);
|
CpsLoadTilesBootlegType3(CpsGfx + 0x100000, nStart + 8);
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x000000, nStart + 3, 0, 3);
|
CpsLoadTilesBootlegType3(CpsGfx + 0x180000, nStart + 12);
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x080000, nStart + 4, 0, 0);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x080000, nStart + 5, 0, 1);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x080000, nStart + 6, 0, 2);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x080000, nStart + 7, 0, 3);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x100000, nStart + 8, 0, 0);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x100000, nStart + 9, 0, 1);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x100000, nStart + 10, 0, 2);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x100000, nStart + 11, 0, 3);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x180000, nStart + 12, 0, 0);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x180000, nStart + 13, 0, 1);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x180000, nStart + 14, 0, 2);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x180000, nStart + 15, 0, 3);
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
INT32 CpsLoadTilesCawingbl(INT32 nStart)
|
INT32 CpsLoadTilesCawingbl(INT32 nStart)
|
||||||
{
|
{
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x000000, nStart + 0, 0, 0);
|
CpsLoadTilesBootlegType3(CpsGfx + 0x000000, nStart + 0);
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x000000, nStart + 1, 0, 1);
|
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x000000, nStart + 2, 0, 2);
|
return 0;
|
||||||
CpsLoadOneBootlegType3(CpsGfx + 0x000000, nStart + 3, 0, 3);
|
}
|
||||||
|
|
||||||
|
INT32 CpsLoadTilesCaptcommb(INT32 nStart)
|
||||||
|
{
|
||||||
|
CpsLoadOneBootlegType2(CpsGfx + 0x000000, nStart + 0, 0, 0);
|
||||||
|
CpsLoadOneBootlegType2(CpsGfx + 0x000000, nStart + 1, 0, 1);
|
||||||
|
CpsLoadOneBootlegType2(CpsGfx + 0x000000, nStart + 2, 0, 2);
|
||||||
|
CpsLoadOneBootlegType2(CpsGfx + 0x000000, nStart + 3, 0, 3);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
INT32 CpsLoadTilesDinopic(INT32 nStart)
|
||||||
|
{
|
||||||
|
CpsLoadTilesBootleg(CpsGfx + 0x000000, nStart + 0);
|
||||||
|
CpsLoadTilesBootleg(CpsGfx + 0x200000, nStart + 4);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
INT32 CpsLoadTilesKodb(INT32 nStart)
|
||||||
|
{
|
||||||
|
CpsLoadTilesByte(CpsGfx, nStart);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,16 +37,17 @@ INT32 CpsLoadTilesByte(UINT8 *Tile,INT32 nStart);
|
||||||
INT32 CpsLoadTilesForgottn(INT32 nStart);
|
INT32 CpsLoadTilesForgottn(INT32 nStart);
|
||||||
INT32 CpsLoadTilesForgottnu(INT32 nStart);
|
INT32 CpsLoadTilesForgottnu(INT32 nStart);
|
||||||
INT32 CpsLoadTilesPang(UINT8 *Tile,INT32 nStart);
|
INT32 CpsLoadTilesPang(UINT8 *Tile,INT32 nStart);
|
||||||
INT32 CpsLoadTilesHack160(UINT8 *Tile,INT32 nStart);
|
|
||||||
INT32 CpsLoadTilesBootleg(UINT8 *Tile, INT32 nStart);
|
|
||||||
INT32 CpsLoadTilesCaptcomb(UINT8 *Tile, INT32 nStart);
|
|
||||||
INT32 CpsLoadTilesPunipic2(UINT8 *Tile, INT32 nStart);
|
|
||||||
INT32 CpsLoadTilesSf2ebbl(UINT8 *Tile, INT32 nStart);
|
INT32 CpsLoadTilesSf2ebbl(UINT8 *Tile, INT32 nStart);
|
||||||
|
INT32 CpsLoadTilesHack160(INT32 nStart);
|
||||||
|
INT32 CpsLoadTilesHack160Alt(INT32 nStart);
|
||||||
INT32 CpsLoadTilesSf2koryu(INT32 nStart);
|
INT32 CpsLoadTilesSf2koryu(INT32 nStart);
|
||||||
INT32 CpsLoadTilesSf2mdt(INT32 nStart);
|
INT32 CpsLoadTilesSf2mdt(INT32 nStart);
|
||||||
INT32 CpsLoadTilesSf2mdta(INT32 nStart);
|
INT32 CpsLoadTilesSf2mdta(INT32 nStart);
|
||||||
INT32 CpsLoadTilesFcrash(INT32 nStart);
|
INT32 CpsLoadTilesFcrash(INT32 nStart);
|
||||||
INT32 CpsLoadTilesCawingbl(INT32 nStart);
|
INT32 CpsLoadTilesCawingbl(INT32 nStart);
|
||||||
|
INT32 CpsLoadTilesCaptcommb(INT32 nStart);
|
||||||
|
INT32 CpsLoadTilesDinopic(INT32 nStart);
|
||||||
|
INT32 CpsLoadTilesKodb(INT32 nStart);
|
||||||
INT32 CpsLoadStars(UINT8 *pStar, INT32 nStart);
|
INT32 CpsLoadStars(UINT8 *pStar, INT32 nStart);
|
||||||
INT32 CpsLoadStarsByte(UINT8 *pStar, INT32 nStart);
|
INT32 CpsLoadStarsByte(UINT8 *pStar, INT32 nStart);
|
||||||
INT32 CpsLoadStarsForgottnAlt(UINT8 *pStar, INT32 nStart);
|
INT32 CpsLoadStarsForgottnAlt(UINT8 *pStar, INT32 nStart);
|
||||||
|
|
|
@ -10812,20 +10812,14 @@ static INT32 TwelveMhzInit()
|
||||||
|
|
||||||
static INT32 CaptcommbInit()
|
static INT32 CaptcommbInit()
|
||||||
{
|
{
|
||||||
INT32 nRet = 0;
|
|
||||||
|
|
||||||
CpsLayer1XOffs = -8;
|
CpsLayer1XOffs = -8;
|
||||||
CpsLayer2XOffs = -11;
|
CpsLayer2XOffs = -11;
|
||||||
CpsLayer3XOffs = -12;
|
CpsLayer3XOffs = -12;
|
||||||
CpsDrawSpritesInReverse = 1;
|
CpsDrawSpritesInReverse = 1;
|
||||||
Cps1DetectEndSpriteList8000 = 1;
|
Cps1DetectEndSpriteList8000 = 1;
|
||||||
|
Cps1GfxLoadCallbackFunction = CpsLoadTilesCaptcommb;
|
||||||
|
|
||||||
nRet = DrvInit();
|
return DrvInit();
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesCaptcomb(CpsGfx, 4);
|
|
||||||
|
|
||||||
return nRet;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static INT32 Captcommb2Init()
|
static INT32 Captcommb2Init()
|
||||||
|
@ -11011,15 +11005,12 @@ static INT32 DinopicInit()
|
||||||
INT32 nRet = 0;
|
INT32 nRet = 0;
|
||||||
|
|
||||||
Cps1DisablePSnd = 1;
|
Cps1DisablePSnd = 1;
|
||||||
|
Cps1GfxLoadCallbackFunction = CpsLoadTilesDinopic;
|
||||||
Cps1ObjGetCallbackFunction = DinopicObjGet;
|
Cps1ObjGetCallbackFunction = DinopicObjGet;
|
||||||
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
||||||
|
|
||||||
nRet = TwelveMhzInit();
|
nRet = TwelveMhzInit();
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesBootleg(CpsGfx + 0x000000, 4);
|
|
||||||
CpsLoadTilesBootleg(CpsGfx + 0x200000, 8);
|
|
||||||
|
|
||||||
CpsBootlegSpriteRam = (UINT8*)BurnMalloc(0x2000);
|
CpsBootlegSpriteRam = (UINT8*)BurnMalloc(0x2000);
|
||||||
|
|
||||||
SekOpen(0);
|
SekOpen(0);
|
||||||
|
@ -11066,17 +11057,11 @@ static void DinotCallback()
|
||||||
|
|
||||||
static INT32 DinotInit()
|
static INT32 DinotInit()
|
||||||
{
|
{
|
||||||
INT32 nRet = 0;
|
|
||||||
|
|
||||||
Cps1QsHack = 1;
|
Cps1QsHack = 1;
|
||||||
AmendProgRomCallback = DinotCallback;
|
AmendProgRomCallback = DinotCallback;
|
||||||
|
Cps1GfxLoadCallbackFunction = CpsLoadTilesHack160;
|
||||||
|
|
||||||
nRet = TwelveMhzInit();
|
return TwelveMhzInit();
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesHack160(CpsGfx, 2);
|
|
||||||
|
|
||||||
return nRet;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static INT32 DinotpicInit()
|
static INT32 DinotpicInit()
|
||||||
|
@ -11084,14 +11069,12 @@ static INT32 DinotpicInit()
|
||||||
INT32 nRet = 0;
|
INT32 nRet = 0;
|
||||||
|
|
||||||
Cps1DisablePSnd = 1;
|
Cps1DisablePSnd = 1;
|
||||||
|
Cps1GfxLoadCallbackFunction = CpsLoadTilesHack160;
|
||||||
Cps1ObjGetCallbackFunction = DinopicObjGet;
|
Cps1ObjGetCallbackFunction = DinopicObjGet;
|
||||||
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
||||||
|
|
||||||
nRet = TwelveMhzInit();
|
nRet = TwelveMhzInit();
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesHack160(CpsGfx, 2);
|
|
||||||
|
|
||||||
CpsBootlegSpriteRam = (UINT8*)BurnMalloc(0x2000);
|
CpsBootlegSpriteRam = (UINT8*)BurnMalloc(0x2000);
|
||||||
|
|
||||||
SekOpen(0);
|
SekOpen(0);
|
||||||
|
@ -11593,14 +11576,12 @@ static INT32 KodbInit()
|
||||||
INT32 nRet = 0;
|
INT32 nRet = 0;
|
||||||
|
|
||||||
Kodb = 1;
|
Kodb = 1;
|
||||||
|
Cps1GfxLoadCallbackFunction = CpsLoadTilesKodb;
|
||||||
Cps1ObjGetCallbackFunction = KodbObjGet;
|
Cps1ObjGetCallbackFunction = KodbObjGet;
|
||||||
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
||||||
|
|
||||||
nRet = DrvInit();
|
nRet = DrvInit();
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesByte(CpsGfx, 2);
|
|
||||||
|
|
||||||
SekOpen(0);
|
SekOpen(0);
|
||||||
SekMapHandler(1, 0x980000, 0x99ffff, SM_WRITE);
|
SekMapHandler(1, 0x980000, 0x99ffff, SM_WRITE);
|
||||||
SekSetWriteWordHandler(1, Kodb98WriteWord);
|
SekSetWriteWordHandler(1, Kodb98WriteWord);
|
||||||
|
@ -11758,16 +11739,12 @@ static INT32 PunipicInit()
|
||||||
Cps1DisablePSnd = 1;
|
Cps1DisablePSnd = 1;
|
||||||
bCpsUpdatePalEveryFrame = 1;
|
bCpsUpdatePalEveryFrame = 1;
|
||||||
Cps1OverrideLayers = 1;
|
Cps1OverrideLayers = 1;
|
||||||
|
Cps1GfxLoadCallbackFunction = CpsLoadTilesDinopic;
|
||||||
Cps1ObjGetCallbackFunction = DinopicObjGet;
|
Cps1ObjGetCallbackFunction = DinopicObjGet;
|
||||||
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
||||||
|
|
||||||
INT32 nRet = TwelveMhzInit();
|
INT32 nRet = TwelveMhzInit();
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesBootleg(CpsGfx + 0x000000, 4);
|
|
||||||
CpsLoadTilesBootleg(CpsGfx + 0x200000, 8);
|
|
||||||
|
|
||||||
CpsBootlegSpriteRam = (UINT8*)BurnMalloc(0x4000);
|
CpsBootlegSpriteRam = (UINT8*)BurnMalloc(0x4000);
|
||||||
|
|
||||||
SekOpen(0);
|
SekOpen(0);
|
||||||
|
@ -11786,15 +11763,12 @@ static INT32 Punipic2Init()
|
||||||
Cps1DisablePSnd = 1;
|
Cps1DisablePSnd = 1;
|
||||||
bCpsUpdatePalEveryFrame = 1;
|
bCpsUpdatePalEveryFrame = 1;
|
||||||
Cps1OverrideLayers = 1;
|
Cps1OverrideLayers = 1;
|
||||||
|
Cps1GfxLoadCallbackFunction = CpsLoadTilesHack160Alt;
|
||||||
Cps1ObjGetCallbackFunction = DinopicObjGet;
|
Cps1ObjGetCallbackFunction = DinopicObjGet;
|
||||||
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
||||||
|
|
||||||
INT32 nRet = TwelveMhzInit();
|
INT32 nRet = TwelveMhzInit();
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesPunipic2(CpsGfx, 4);
|
|
||||||
|
|
||||||
CpsBootlegSpriteRam = (UINT8*)BurnMalloc(0x4000);
|
CpsBootlegSpriteRam = (UINT8*)BurnMalloc(0x4000);
|
||||||
|
|
||||||
SekOpen(0);
|
SekOpen(0);
|
||||||
|
@ -11813,15 +11787,12 @@ static INT32 Punipic3Init()
|
||||||
Cps1DisablePSnd = 1;
|
Cps1DisablePSnd = 1;
|
||||||
bCpsUpdatePalEveryFrame = 1;
|
bCpsUpdatePalEveryFrame = 1;
|
||||||
Cps1OverrideLayers = 1;
|
Cps1OverrideLayers = 1;
|
||||||
|
Cps1GfxLoadCallbackFunction = CpsLoadTilesHack160;
|
||||||
Cps1ObjGetCallbackFunction = DinopicObjGet;
|
Cps1ObjGetCallbackFunction = DinopicObjGet;
|
||||||
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
||||||
|
|
||||||
INT32 nRet = TwelveMhzInit();
|
INT32 nRet = TwelveMhzInit();
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesHack160(CpsGfx, 4);
|
|
||||||
|
|
||||||
CpsBootlegSpriteRam = (UINT8*)BurnMalloc(0x4000);
|
CpsBootlegSpriteRam = (UINT8*)BurnMalloc(0x4000);
|
||||||
|
|
||||||
SekOpen(0);
|
SekOpen(0);
|
||||||
|
@ -11846,6 +11817,7 @@ static INT32 Sf2ebblInit()
|
||||||
{
|
{
|
||||||
INT32 nRet = DrvInit();
|
INT32 nRet = DrvInit();
|
||||||
|
|
||||||
|
// load bootleg tiles over original tiles
|
||||||
memset(CpsGfx + 0x400000, 0, 0x80000);
|
memset(CpsGfx + 0x400000, 0, 0x80000);
|
||||||
CpsLoadTilesSf2ebbl(CpsGfx + 0x400000, 19);
|
CpsLoadTilesSf2ebbl(CpsGfx + 0x400000, 19);
|
||||||
|
|
||||||
|
@ -12705,48 +12677,13 @@ static INT32 WofhInit()
|
||||||
CpsLayer1XOffs = 0xffc0;
|
CpsLayer1XOffs = 0xffc0;
|
||||||
CpsLayer2XOffs = 0xffc0;
|
CpsLayer2XOffs = 0xffc0;
|
||||||
CpsLayer3XOffs = 0xffc0;
|
CpsLayer3XOffs = 0xffc0;
|
||||||
|
Cps1GfxLoadCallbackFunction = CpsLoadTilesHack160;
|
||||||
AmendProgRomCallback = WofhCallback;
|
AmendProgRomCallback = WofhCallback;
|
||||||
Cps1ObjGetCallbackFunction = WofhObjGet;
|
Cps1ObjGetCallbackFunction = WofhObjGet;
|
||||||
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
||||||
|
|
||||||
nRet = TwelveMhzInit();
|
nRet = TwelveMhzInit();
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesHack160(CpsGfx, 1);
|
|
||||||
|
|
||||||
SekOpen(0);
|
|
||||||
SekMapHandler(3, 0x880000, 0x89ffff, SM_READ | SM_WRITE);
|
|
||||||
SekSetReadByteHandler(3, WofhInputReadByte);
|
|
||||||
SekSetReadWordHandler(3, WofhInputReadWord);
|
|
||||||
SekSetWriteByteHandler(3, WofhInputWriteByte);
|
|
||||||
SekSetWriteWordHandler(3, WofhInputWriteWord);
|
|
||||||
SekMapHandler(4, 0x135000, 0x135fff, SM_READ);
|
|
||||||
SekSetReadByteHandler(4, Wofh135ReadByte);
|
|
||||||
SekSetReadWordHandler(4, Wofh135ReadWord);
|
|
||||||
SekClose();
|
|
||||||
|
|
||||||
return nRet;
|
|
||||||
}
|
|
||||||
|
|
||||||
static INT32 WofhaInit()
|
|
||||||
{
|
|
||||||
INT32 nRet = 0;
|
|
||||||
|
|
||||||
bCpsUpdatePalEveryFrame = 1;
|
|
||||||
CpsLayer1XOffs = 0xffc0;
|
|
||||||
CpsLayer2XOffs = 0xffc0;
|
|
||||||
CpsLayer3XOffs = 0xffc0;
|
|
||||||
|
|
||||||
AmendProgRomCallback = WofhCallback;
|
|
||||||
Cps1ObjGetCallbackFunction = WofhObjGet;
|
|
||||||
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
|
||||||
|
|
||||||
nRet = TwelveMhzInit();
|
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesHack160(CpsGfx, 2);
|
|
||||||
|
|
||||||
SekOpen(0);
|
SekOpen(0);
|
||||||
SekMapHandler(3, 0x880000, 0x89ffff, SM_READ | SM_WRITE);
|
SekMapHandler(3, 0x880000, 0x89ffff, SM_READ | SM_WRITE);
|
||||||
SekSetReadByteHandler(3, WofhInputReadByte);
|
SekSetReadByteHandler(3, WofhInputReadByte);
|
||||||
|
@ -12788,16 +12725,13 @@ static INT32 SgyxzInit()
|
||||||
CpsLayer1XOffs = 0xffc0;
|
CpsLayer1XOffs = 0xffc0;
|
||||||
CpsLayer2XOffs = 0xffc0;
|
CpsLayer2XOffs = 0xffc0;
|
||||||
CpsLayer3XOffs = 0xffc0;
|
CpsLayer3XOffs = 0xffc0;
|
||||||
|
Cps1GfxLoadCallbackFunction = CpsLoadTilesHack160;
|
||||||
AmendProgRomCallback = SgyxzCallback;
|
AmendProgRomCallback = SgyxzCallback;
|
||||||
Cps1ObjGetCallbackFunction = WofhObjGet;
|
Cps1ObjGetCallbackFunction = WofhObjGet;
|
||||||
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
||||||
|
|
||||||
nRet = TwelveMhzInit();
|
nRet = TwelveMhzInit();
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesHack160(CpsGfx, 2);
|
|
||||||
|
|
||||||
SekOpen(0);
|
SekOpen(0);
|
||||||
SekMapHandler(3, 0x880000, 0x89ffff, SM_READ | SM_WRITE);
|
SekMapHandler(3, 0x880000, 0x89ffff, SM_READ | SM_WRITE);
|
||||||
SekSetReadByteHandler(3, WofhInputReadByte);
|
SekSetReadByteHandler(3, WofhInputReadByte);
|
||||||
|
@ -12934,15 +12868,12 @@ static INT32 Wof3jsaInit()
|
||||||
CpsLayer1XOffs = 0xffc0;
|
CpsLayer1XOffs = 0xffc0;
|
||||||
CpsLayer2XOffs = 0xffc0;
|
CpsLayer2XOffs = 0xffc0;
|
||||||
CpsLayer3XOffs = 0xffc0;
|
CpsLayer3XOffs = 0xffc0;
|
||||||
|
Cps1GfxLoadCallbackFunction = CpsLoadTilesHack160;
|
||||||
Cps1ObjGetCallbackFunction = WofhObjGet;
|
Cps1ObjGetCallbackFunction = WofhObjGet;
|
||||||
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
||||||
|
|
||||||
INT32 nRet = TwelveMhzInit();
|
INT32 nRet = TwelveMhzInit();
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesHack160(CpsGfx, 2);
|
|
||||||
|
|
||||||
SekOpen(0);
|
SekOpen(0);
|
||||||
SekMapHandler(3, 0x880000, 0x89ffff, SM_READ | SM_WRITE);
|
SekMapHandler(3, 0x880000, 0x89ffff, SM_READ | SM_WRITE);
|
||||||
SekSetReadByteHandler(3, Wof3jsaInputReadByte);
|
SekSetReadByteHandler(3, Wof3jsaInputReadByte);
|
||||||
|
@ -13044,41 +12975,12 @@ static INT32 Wof3sjInit()
|
||||||
CpsLayer1XOffs = 0xffc0;
|
CpsLayer1XOffs = 0xffc0;
|
||||||
CpsLayer2XOffs = 0xffc0;
|
CpsLayer2XOffs = 0xffc0;
|
||||||
CpsLayer3XOffs = 0xffc0;
|
CpsLayer3XOffs = 0xffc0;
|
||||||
|
Cps1GfxLoadCallbackFunction = CpsLoadTilesHack160;
|
||||||
Cps1ObjGetCallbackFunction = WofhObjGet;
|
Cps1ObjGetCallbackFunction = WofhObjGet;
|
||||||
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
||||||
|
|
||||||
INT32 nRet = TwelveMhzInit();
|
INT32 nRet = TwelveMhzInit();
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesHack160(CpsGfx, 2);
|
|
||||||
|
|
||||||
SekOpen(0);
|
|
||||||
SekMapHandler(3, 0x880000, 0x89ffff, SM_READ | SM_WRITE);
|
|
||||||
SekSetReadByteHandler(3, Wof3sjInputReadByte);
|
|
||||||
SekSetReadWordHandler(3, Wof3sjInputReadWord);
|
|
||||||
SekSetWriteByteHandler(3, Wof3sjInputWriteByte);
|
|
||||||
SekSetWriteWordHandler(3, Wof3sjInputWriteWord);
|
|
||||||
SekClose();
|
|
||||||
|
|
||||||
return nRet;
|
|
||||||
}
|
|
||||||
|
|
||||||
static INT32 Wof3sjaInit()
|
|
||||||
{
|
|
||||||
bCpsUpdatePalEveryFrame = 1;
|
|
||||||
CpsLayer1XOffs = 0xffc0;
|
|
||||||
CpsLayer2XOffs = 0xffc0;
|
|
||||||
CpsLayer3XOffs = 0xffc0;
|
|
||||||
|
|
||||||
Cps1ObjGetCallbackFunction = WofhObjGet;
|
|
||||||
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
|
||||||
|
|
||||||
INT32 nRet = TwelveMhzInit();
|
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesHack160(CpsGfx, 1);
|
|
||||||
|
|
||||||
SekOpen(0);
|
SekOpen(0);
|
||||||
SekMapHandler(3, 0x880000, 0x89ffff, SM_READ | SM_WRITE);
|
SekMapHandler(3, 0x880000, 0x89ffff, SM_READ | SM_WRITE);
|
||||||
SekSetReadByteHandler(3, Wof3sjInputReadByte);
|
SekSetReadByteHandler(3, Wof3sjInputReadByte);
|
||||||
|
@ -13246,15 +13148,12 @@ static INT32 WofbInit()
|
||||||
CpsLayer1XOffs = 0xffc0;
|
CpsLayer1XOffs = 0xffc0;
|
||||||
CpsLayer2XOffs = 0xffc0;
|
CpsLayer2XOffs = 0xffc0;
|
||||||
CpsLayer3XOffs = 0xffc0;
|
CpsLayer3XOffs = 0xffc0;
|
||||||
|
Cps1GfxLoadCallbackFunction = CpsLoadTilesDinopic;
|
||||||
Cps1ObjGetCallbackFunction = DinopicObjGet;
|
Cps1ObjGetCallbackFunction = DinopicObjGet;
|
||||||
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
Cps1ObjDrawCallbackFunction = FcrashObjDraw;
|
||||||
|
|
||||||
INT32 nRet = TwelveMhzInit();
|
INT32 nRet = TwelveMhzInit();
|
||||||
|
|
||||||
memset(CpsGfx, 0, nCpsGfxLen);
|
|
||||||
CpsLoadTilesBootleg(CpsGfx + 0x000000, 4);
|
|
||||||
CpsLoadTilesBootleg(CpsGfx + 0x200000, 8);
|
|
||||||
|
|
||||||
CpsBootlegSpriteRam = (UINT8*)BurnMalloc(0x4000);
|
CpsBootlegSpriteRam = (UINT8*)BurnMalloc(0x4000);
|
||||||
|
|
||||||
SekOpen(0);
|
SekOpen(0);
|
||||||
|
@ -15335,7 +15234,7 @@ struct BurnDriver BurnDrvCpsWofha = {
|
||||||
L"\u4E09\u56FD\u5FD7II: \u4E09\u56FD\u82F1\u96C4\u4F20\0Sangokushi II: Sanguo YingXiongZhuan (Chinese bootleg set 2, 921005 Asia)\0", NULL, NULL, NULL,
|
L"\u4E09\u56FD\u5FD7II: \u4E09\u56FD\u82F1\u96C4\u4F20\0Sangokushi II: Sanguo YingXiongZhuan (Chinese bootleg set 2, 921005 Asia)\0", NULL, NULL, NULL,
|
||||||
BDF_GAME_WORKING | BDF_CLONE | BDF_BOOTLEG, 3, HARDWARE_CAPCOM_CPS1, GBF_SCRFIGHT, 0,
|
BDF_GAME_WORKING | BDF_CLONE | BDF_BOOTLEG, 3, HARDWARE_CAPCOM_CPS1, GBF_SCRFIGHT, 0,
|
||||||
NULL, WofhaRomInfo, WofhaRomName, NULL, NULL, WofhfhInputInfo, WofhDIPInfo,
|
NULL, WofhaRomInfo, WofhaRomName, NULL, NULL, WofhfhInputInfo, WofhDIPInfo,
|
||||||
WofhaInit, DrvExit, Cps1Frame, CpsRedraw, CpsAreaScan,
|
WofhInit, DrvExit, Cps1Frame, CpsRedraw, CpsAreaScan,
|
||||||
&CpsRecalcPal, 0x1000, 384, 224, 4, 3
|
&CpsRecalcPal, 0x1000, 384, 224, 4, 3
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -15385,7 +15284,7 @@ struct BurnDriver BurnDrvCpsWof3sja = {
|
||||||
L"\u4E09\u56FD\u5FD7II: \u4E09\u5723\u5251\0Sangokushi II: San Sheng Jian (Chinese bootleg set 2, 921005 Asia)\0", NULL, NULL, NULL,
|
L"\u4E09\u56FD\u5FD7II: \u4E09\u5723\u5251\0Sangokushi II: San Sheng Jian (Chinese bootleg set 2, 921005 Asia)\0", NULL, NULL, NULL,
|
||||||
BDF_GAME_WORKING | BDF_CLONE | BDF_BOOTLEG, 3, HARDWARE_CAPCOM_CPS1, GBF_SCRFIGHT, 0,
|
BDF_GAME_WORKING | BDF_CLONE | BDF_BOOTLEG, 3, HARDWARE_CAPCOM_CPS1, GBF_SCRFIGHT, 0,
|
||||||
NULL, Wof3sjaRomInfo, Wof3sjaRomName, NULL, NULL, WofhfhInputInfo, WofhfhDIPInfo,
|
NULL, Wof3sjaRomInfo, Wof3sjaRomName, NULL, NULL, WofhfhInputInfo, WofhfhDIPInfo,
|
||||||
Wof3sjaInit, DrvExit, Cps1Frame, CpsRedraw, CpsAreaScan,
|
Wof3sjInit, DrvExit, Cps1Frame, CpsRedraw, CpsAreaScan,
|
||||||
&CpsRecalcPal, 0x1000, 384, 224, 4, 3
|
&CpsRecalcPal, 0x1000, 384, 224, 4, 3
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue