Welcome!

Final Burn Neo => FBN Development => Topic started by: lxd_bruce on August 05, 2007, 03:15:31 AM

Title: one question about cps1/2 program
Post by: lxd_bruce on August 05, 2007, 03:15:31 AM
NeoGeo system uses "Neo68KROM" to represent NeoGeo program.

How about CPS1/2 system?

"CpsRom" or "CpsCode" ?
 :confused:
Title: Re: one question about cps1/2 program
Post by: Barry Harris on August 05, 2007, 04:17:59 AM
Both.

CpsCode contains the decrpyted OpCodes and is used via FETCH. On CPS-1 CpsRom and CpsCode are the same - but with CPS-2 they are different.
Title: Re: one question about cps1/2 program
Post by: lxd_bruce on August 05, 2007, 06:58:35 AM
thx :smilie:

however, I have another question.

I wanna patch a game to make a new driver. The game is sfzj (Street Fighter Zero (Japan 950727)).

The patch is a Boss hack by Yumeji.

the hack should be patched on these two roms: sfzj.03c & sfz.06.

the former is encrypted while the latter isn't.

here is my driver. It doesn't work. I don't know why.


Code: [Select]
// Street Fighter Zero (Japan 950727 / boss)

static struct BurnRomInfo sfzjbRomDesc[] = {
{ "sfzj.03c",     0x080000, 0xf5444120, 1 | BRF_ESS | BRF_PRG }, // 68k program
{ "sfz.04b",      0x080000, 0x8b73b0e5, 1 | BRF_ESS | BRF_PRG },
{ "sfz.05a",      0x080000, 0x0810544d, 1 | BRF_ESS | BRF_PRG },
{ "sfz.06",       0x080000, 0x806e8f38, 1 | BRF_ESS | BRF_PRG },

{ "sfz.14m",      0x200000, 0x90fefdb3, 3 | BRF_GRA },
{ "sfz.16m",      0x200000, 0x5354c948, 3 | BRF_GRA },
{ "sfz.18m",      0x200000, 0x41a1e790, 3 | BRF_GRA },
{ "sfz.20m",      0x200000, 0xa549df98, 3 | BRF_GRA },

{ "sfz.01",       0x020000, 0xffffec7d, 4 | BRF_ESS | BRF_PRG }, // z80 program
{ "sfz.02",       0x020000, 0x45f46a08, 4 | BRF_ESS | BRF_PRG },

{ "sfz.11m",      0x200000, 0xc4b093cd, 5 | BRF_SND },
{ "sfz.12m",      0x200000, 0x8bdbc4b4, 5 | BRF_SND },
};

STD_ROM_PICK(sfzjb) STD_ROM_FN(sfzjb)

void sfzjb_patch()
{
        unsigned char *mem8 = CpsCode;
        mem8[0x18E10] = 0xE0;
        mem8[0x18E11] = 0xC2;
        mem8[0x18E12] = 0x09;
        mem8[0x19036] = 0x17;
        mem8[0x19460] = 0x17;
        mem8[0x1961E] = 0x17;
        mem8[0x1965C] = 0x0B;
        mem8[0x197E6] = 0xB0;
        mem8[0x197F4] = 0x30;
        mem8[0x19888] = 0xB0;
        mem8[0x198A8] = 0x17;
        mem8[0x198BA] = 0x30;
        mem8[0x19DC6] = 0x25;
        mem8[0x19DC7] = 0x67;
        mem8[0x19DC8] = 0xD5;
        mem8[0x19DC9] = 0x40;
        mem8[0x19DCC] = 0xE4;
        mem8[0x19DCD] = 0x60;
        mem8[0x19DCE] = 0x8E;
        mem8[0x19DCF] = 0xBD;
        mem8[0x19DD2] = 0x48;
        mem8[0x19DD3] = 0x7D;
        mem8[0x19DD4] = 0x55;
        mem8[0x19DD5] = 0x9F;
        mem8[0x19DE4] = 0x22;
        mem8[0x19DE5] = 0x0C;
        mem8[0x19DE6] = 0x7A;
        mem8[0x19DE7] = 0x99;
        mem8[0x19DEA] = 0xB6;
        mem8[0x19DEB] = 0x08;
        mem8[0x19DEC] = 0x0D;
        mem8[0x19DED] = 0xC1;
        mem8[0x19DF0] = 0xCD;
        mem8[0x19DF1] = 0x1F;
        mem8[0x19DF2] = 0x38;
        mem8[0x19DF3] = 0x0B;
        mem8[0x19E5C] = 0x6F;
        mem8[0x19E5D] = 0xE4;
        mem8[0x19E5E] = 0x53;
        mem8[0x19E5F] = 0xCD;
        mem8[0x19E62] = 0xBF;
        mem8[0x19E63] = 0xF8;
        mem8[0x19E64] = 0x68;
        mem8[0x19E65] = 0x85;
        mem8[0x19E66] = 0x4A;
        mem8[0x19E67] = 0xE5;
        mem8[0x19E68] = 0x53;
        mem8[0x19E69] = 0x7B;
        mem8[0x19E6A] = 0x67;
        mem8[0x19E6B] = 0xD7;
        mem8[0x19E82] = 0x3C;
        mem8[0x19E83] = 0x49;
        mem8[0x19E84] = 0xAB;
        mem8[0x19E85] = 0x04;
        mem8[0x19E86] = 0x54;
        mem8[0x19E87] = 0xCE;
        mem8[0x19E88] = 0x5F;
        mem8[0x19E89] = 0xE4;
        mem8[0x19E8A] = 0xD2;
        mem8[0x19E8B] = 0xBD;
        mem8[0x19E8C] = 0x72;
        mem8[0x19E8D] = 0xA6;
        mem8[0x19E8E] = 0x32;
        mem8[0x19E8F] = 0x8A;
        mem8[0x3CC84] = 0x50;
        mem8[0x3CC94] = 0xA0;
        mem8[0x3CCD0] = 0x04;
        mem8[0x3CCE0] = 0xA0;
        mem8[0x3CDE2] = 0x2A;
        mem8[0x3CDE3] = 0x7D;
        mem8[0x3CDEE] = 0xB6;
        mem8[0x3CDEF] = 0xE2;
        mem8[0x3CDFA] = 0xB2;
        mem8[0x3CDFB] = 0xB2;

        unsigned char *mem8a = CpsRom;
        mem8a[0x1DAA40] = 0x4B;
        mem8a[0x1DAA41] = 0x13;
        mem8a[0x1DAA42] = 0x02;
        mem8a[0x1DAA44] = 0x4F;
        mem8a[0x1DAA45] = 0x13;
        mem8a[0x1DAA46] = 0x02;
        mem8a[0x1DAA48] = 0x53;
        mem8a[0x1DAA49] = 0x13;
        mem8a[0x1DAA4A] = 0x09;
        mem8a[0x1DAA4C] = 0x57;
        mem8a[0x1DAA4D] = 0x13;
        mem8a[0x1DAA4E] = 0x09;
        mem8a[0x1DAA80] = 0x4C;
        mem8a[0x1DAA84] = 0x50;
        mem8a[0x1DAA88] = 0x54;
        mem8a[0x1DAA8C] = 0x58;
        mem8a[0x1DAAC0] = 0x4D;
        mem8a[0x1DAAC2] = 0x06;
        mem8a[0x1DAAC4] = 0x51;
        mem8a[0x1DAAC6] = 0x06;
        mem8a[0x1DAAC8] = 0x55;
        mem8a[0x1DAACA] = 0x0A;
        mem8a[0x1DAACC] = 0x59;
        mem8a[0x1DAACE] = 0x0A;
        mem8a[0x1DAAD0] = 0xF6;
        mem8a[0x1DAAD1] = 0x17;
        mem8a[0x1DAAD2] = 0x04;
        mem8a[0x1DAAD4] = 0xFC;
        mem8a[0x1DAAD5] = 0x17;
        mem8a[0x1DAAD6] = 0x04;
        mem8a[0x1DAB00] = 0x4E;
        mem8a[0x1DAB04] = 0x52;
        mem8a[0x1DAB08] = 0x56;
        mem8a[0x1DAB0C] = 0x5A;
        mem8a[0x1DAB10] = 0xF7;
        mem8a[0x1DAB11] = 0x17;
        mem8a[0x1DAB12] = 0x04;
        mem8a[0x1DAB14] = 0xFD;
        mem8a[0x1DAB15] = 0x17;
        mem8a[0x1DAB16] = 0x04;
        mem8a[0x1DAB40] = 0x5B;
        mem8a[0x1DAB42] = 0x0B;
        mem8a[0x1DAB44] = 0x5D;
        mem8a[0x1DAB46] = 0x0B;
        mem8a[0x1DAB48] = 0x86;
        mem8a[0x1DAB4A] = 0x0D;
        mem8a[0x1DAB4C] = 0x88;
        mem8a[0x1DAB4E] = 0x0D;
        mem8a[0x1DAB50] = 0x67;
        mem8a[0x1DAB51] = 0x1D;
        mem8a[0x1DAB52] = 0x1A;
        mem8a[0x1DAB54] = 0x69;
        mem8a[0x1DAB55] = 0x1D;
        mem8a[0x1DAB56] = 0x1A;
        mem8a[0x1DAB80] = 0x5C;
        mem8a[0x1DAB82] = 0x0B;
        mem8a[0x1DAB84] = 0x5E;
        mem8a[0x1DAB86] = 0x0B;
        mem8a[0x1DAB88] = 0x87;
        mem8a[0x1DAB8A] = 0x0D;
        mem8a[0x1DAB8C] = 0x89;
        mem8a[0x1DAB8E] = 0x0D;
        mem8a[0x1DAB90] = 0x68;
        mem8a[0x1DAB91] = 0x1D;
        mem8a[0x1DAB92] = 0x1A;
        mem8a[0x1DAB94] = 0x6A;
        mem8a[0x1DAB95] = 0x1D;
        mem8a[0x1DAB96] = 0x1A;
        mem8a[0x1DABC0] = 0x76;
        mem8a[0x1DABC4] = 0x7A;
        mem8a[0x1DABC8] = 0x7E;
        mem8a[0x1DABCC] = 0x82;
        mem8a[0x1DABD0] = 0xF8;
        mem8a[0x1DABD1] = 0x17;
        mem8a[0x1DABD2] = 0x0C;
        mem8a[0x1DABD4] = 0xFE;
        mem8a[0x1DABD5] = 0x17;
        mem8a[0x1DABD6] = 0x0C;
        mem8a[0x1DAC00] = 0x77;
        mem8a[0x1DAC02] = 0x05;
        mem8a[0x1DAC04] = 0x7B;
        mem8a[0x1DAC06] = 0x05;
        mem8a[0x1DAC08] = 0x7F;
        mem8a[0x1DAC0A] = 0x08;
        mem8a[0x1DAC0C] = 0x83;
        mem8a[0x1DAC0E] = 0x08;
        mem8a[0x1DAC10] = 0xF9;
        mem8a[0x1DAC11] = 0x17;
        mem8a[0x1DAC12] = 0x0C;
        mem8a[0x1DAC14] = 0xFF;
        mem8a[0x1DAC15] = 0x17;
        mem8a[0x1DAC16] = 0x0C;
        mem8a[0x1DAC40] = 0x78;
        mem8a[0x1DAC44] = 0x7C;
        mem8a[0x1DAC48] = 0x80;
        mem8a[0x1DAC4C] = 0x84;
        mem8a[0x1DAC80] = 0x79;
        mem8a[0x1DAC81] = 0x13;
        mem8a[0x1DAC82] = 0x03;
        mem8a[0x1DAC84] = 0x7D;
        mem8a[0x1DAC85] = 0x13;
        mem8a[0x1DAC86] = 0x03;
        mem8a[0x1DAC88] = 0x81;
        mem8a[0x1DAC89] = 0x13;
        mem8a[0x1DAC8A] = 0x07;
        mem8a[0x1DAC8C] = 0x85;
        mem8a[0x1DAC8D] = 0x13;
        mem8a[0x1DAC8E] = 0x07;

}

int sfzjbInit()
{
pCpsInitCallback = sfzjb_patch;

return CpsInit();
}

struct BurnDriver BurnDrvCpssfzjb = {
"sfzjb", "sfa", NULL, "2006",
"Street Fighter Zero (Japan 950727 / Boss enabled by Yumeji)\0", NULL, "hack", "CPS2",
NULL, NULL, NULL, NULL,
BDF_GAME_WORKING | BDF_CLONE,2,HARDWARE_CAPCOM_CPS2,
NULL, sfzjbRomInfo, sfzjbRomName, DrvInputInfo, NULL,
sfzjbInit, CpsExit,Cps2Frame,CpsRedraw,CpsAreaScan,
&CpsRecalcPal,384,224,4,3
};


PS:     the following is got by comparing the decrypted rom of the original "sfzj.03c" and that of the patched "sfzj.03c"
 
Code: [Select]
        unsigned char *mem8 = CpsCode;
        mem8[0x18E10] = 0xE0;
        mem8[0x18E11] = 0xC2;
        mem8[0x18E12] = 0x09;
        mem8[0x19036] = 0x17;
        mem8[0x19460] = 0x17;
        mem8[0x1961E] = 0x17;
        mem8[0x1965C] = 0x0B;
        mem8[0x197E6] = 0xB0;
        mem8[0x197F4] = 0x30;
        mem8[0x19888] = 0xB0;
        mem8[0x198A8] = 0x17;
        mem8[0x198BA] = 0x30;
        mem8[0x19DC6] = 0x25;
        mem8[0x19DC7] = 0x67;
        mem8[0x19DC8] = 0xD5;
        mem8[0x19DC9] = 0x40;
        mem8[0x19DCC] = 0xE4;
        mem8[0x19DCD] = 0x60;
        mem8[0x19DCE] = 0x8E;
        mem8[0x19DCF] = 0xBD;
        mem8[0x19DD2] = 0x48;
        mem8[0x19DD3] = 0x7D;
        mem8[0x19DD4] = 0x55;
        mem8[0x19DD5] = 0x9F;
        mem8[0x19DE4] = 0x22;
        mem8[0x19DE5] = 0x0C;
        mem8[0x19DE6] = 0x7A;
        mem8[0x19DE7] = 0x99;
        mem8[0x19DEA] = 0xB6;
        mem8[0x19DEB] = 0x08;
        mem8[0x19DEC] = 0x0D;
        mem8[0x19DED] = 0xC1;
        mem8[0x19DF0] = 0xCD;
        mem8[0x19DF1] = 0x1F;
        mem8[0x19DF2] = 0x38;
        mem8[0x19DF3] = 0x0B;
        mem8[0x19E5C] = 0x6F;
        mem8[0x19E5D] = 0xE4;
        mem8[0x19E5E] = 0x53;
        mem8[0x19E5F] = 0xCD;
        mem8[0x19E62] = 0xBF;
        mem8[0x19E63] = 0xF8;
        mem8[0x19E64] = 0x68;
        mem8[0x19E65] = 0x85;
        mem8[0x19E66] = 0x4A;
        mem8[0x19E67] = 0xE5;
        mem8[0x19E68] = 0x53;
        mem8[0x19E69] = 0x7B;
        mem8[0x19E6A] = 0x67;
        mem8[0x19E6B] = 0xD7;
        mem8[0x19E82] = 0x3C;
        mem8[0x19E83] = 0x49;
        mem8[0x19E84] = 0xAB;
        mem8[0x19E85] = 0x04;
        mem8[0x19E86] = 0x54;
        mem8[0x19E87] = 0xCE;
        mem8[0x19E88] = 0x5F;
        mem8[0x19E89] = 0xE4;
        mem8[0x19E8A] = 0xD2;
        mem8[0x19E8B] = 0xBD;
        mem8[0x19E8C] = 0x72;
        mem8[0x19E8D] = 0xA6;
        mem8[0x19E8E] = 0x32;
        mem8[0x19E8F] = 0x8A;
        mem8[0x3CC84] = 0x50;
        mem8[0x3CC94] = 0xA0;
        mem8[0x3CCD0] = 0x04;
        mem8[0x3CCE0] = 0xA0;
        mem8[0x3CDE2] = 0x2A;
        mem8[0x3CDE3] = 0x7D;
        mem8[0x3CDEE] = 0xB6;
        mem8[0x3CDEF] = 0xE2;
        mem8[0x3CDFA] = 0xB2;
        mem8[0x3CDFB] = 0xB2;

Anyone can help?  :confused:
Title: Re: one question about cps1/2 program
Post by: iq_132 on August 05, 2007, 07:40:43 AM
The Boss-hacked program roms are encrypted?  What you will need to do is use that boss-hacked program, dump the decrypted code -> CpsCode Then compare the dumped code from the boss hack to the dumped code from the original.
If you don't mind posting patches for this sfzj hack and that vamp hack also, I'm sure I can come up with something for you. ;)
Title: Re: one question about cps1/2 program
Post by: lxd_bruce on August 05, 2007, 07:54:12 AM
Of course not. :biggrin:

Here are the patches :biggrin:

Thanks in advance. :wink:
Title: Re: one question about cps1/2 program
Post by: iq_132 on August 05, 2007, 10:30:47 AM
Try this for sfzjb
Code: [Select]

void sfzjb_patch()
{
CpsCode[0x18E10] = 0xE0;
CpsCode[0x18E11] = 0xC2;
CpsCode[0x18E12] = 0x09;
CpsCode[0x19036] = 0x17;
CpsCode[0x19460] = 0x17;
CpsCode[0x1961E] = 0x17;
CpsCode[0x1965C] = 0x0B;
CpsCode[0x197E6] = 0xB0;
CpsCode[0x197F4] = 0x30;
CpsCode[0x19888] = 0xB0;
CpsCode[0x198A8] = 0x17;
CpsCode[0x198BA] = 0x30;
CpsCode[0x19DC6] = 0x25;
CpsCode[0x19DC7] = 0x67;
CpsCode[0x19DC8] = 0xD5;
CpsCode[0x19DC9] = 0x40;
CpsCode[0x19DCC] = 0xE4;
CpsCode[0x19DCD] = 0x60;
CpsCode[0x19DCE] = 0x8E;
CpsCode[0x19DCF] = 0xBD;
CpsCode[0x19DD2] = 0x48;
CpsCode[0x19DD3] = 0x7D;
CpsCode[0x19DD4] = 0x55;
CpsCode[0x19DD5] = 0x9F;
CpsCode[0x19DE4] = 0x22;
CpsCode[0x19DE5] = 0x0C;
CpsCode[0x19DE6] = 0x7A;
CpsCode[0x19DE7] = 0x99;
CpsCode[0x19DEA] = 0xB6;
CpsCode[0x19DEB] = 0x08;
CpsCode[0x19DEC] = 0x0D;
CpsCode[0x19DED] = 0xC1;
CpsCode[0x19DF0] = 0xCD;
CpsCode[0x19DF1] = 0x1F;
CpsCode[0x19DF2] = 0x38;
CpsCode[0x19DF3] = 0x0B;
CpsCode[0x19E5C] = 0x6F;
CpsCode[0x19E5D] = 0xE4;
CpsCode[0x19E5E] = 0x53;
CpsCode[0x19E5F] = 0xCD;
CpsCode[0x19E62] = 0xBF;
CpsCode[0x19E63] = 0xF8;
CpsCode[0x19E64] = 0x68;
CpsCode[0x19E65] = 0x85;
CpsCode[0x19E66] = 0x4A;
CpsCode[0x19E67] = 0xE5;
CpsCode[0x19E68] = 0x53;
CpsCode[0x19E69] = 0x7B;
CpsCode[0x19E6A] = 0x67;
CpsCode[0x19E6B] = 0xD7;
CpsCode[0x19E82] = 0x3C;
CpsCode[0x19E83] = 0x49;
CpsCode[0x19E84] = 0xAB;
CpsCode[0x19E85] = 0x04;
CpsCode[0x19E86] = 0x54;
CpsCode[0x19E87] = 0xCE;
CpsCode[0x19E88] = 0x5F;
CpsCode[0x19E89] = 0xE4;
CpsCode[0x19E8A] = 0xD2;
CpsCode[0x19E8B] = 0xBD;
CpsCode[0x19E8C] = 0x72;
CpsCode[0x19E8D] = 0xA6;
CpsCode[0x19E8E] = 0x32;
CpsCode[0x19E8F] = 0x8A;
CpsCode[0x3CC84] = 0x50;
CpsCode[0x3CC94] = 0xA0;
CpsCode[0x3CCD0] = 0x04;
CpsCode[0x3CCE0] = 0xA0;
CpsCode[0x3CDE2] = 0x2A;
CpsCode[0x3CDE3] = 0x7D;
CpsCode[0x3CDEE] = 0xB6;
CpsCode[0x3CDEF] = 0xE2;
CpsCode[0x3CDFA] = 0xB2;
CpsCode[0x3CDFB] = 0xB2;

CpsRom[0x18E10] = 0x6C;
CpsRom[0x18E11] = 0xB3;
CpsRom[0x18E12] = 0xA1;
CpsRom[0x18E13] = 0x68;
CpsRom[0x19036] = 0xA9;
CpsRom[0x19037] = 0x75;
CpsRom[0x19460] = 0xF4;
CpsRom[0x19461] = 0x55;
CpsRom[0x1961E] = 0xFB;
CpsRom[0x1961F] = 0xB3;
CpsRom[0x1965C] = 0xDC;
CpsRom[0x1965D] = 0xB3;
CpsRom[0x197E6] = 0xA1;
CpsRom[0x197E7] = 0xCB;
CpsRom[0x197F4] = 0x87;
CpsRom[0x197F5] = 0x02;
CpsRom[0x19888] = 0x3C;
CpsRom[0x19889] = 0x37;
CpsRom[0x198A8] = 0xFF;
CpsRom[0x198A9] = 0x92;
CpsRom[0x198BA] = 0x3A;
CpsRom[0x198BB] = 0xB6;
CpsRom[0x19DC6] = 0x09;
CpsRom[0x19DC8] = 0x01;
CpsRom[0x19DC9] = 0x03;
CpsRom[0x19DCC] = 0x0B;
CpsRom[0x19DCE] = 0x05;
CpsRom[0x19DCF] = 0x06;
CpsRom[0x19DD2] = 0x0C;
CpsRom[0x19DD3] = 0x02;
CpsRom[0x19DD4] = 0xFF;
CpsRom[0x19DD5] = 0x0A;
CpsRom[0x19DE4] = 0x09;
CpsRom[0x19DE6] = 0x01;
CpsRom[0x19DE7] = 0x03;
CpsRom[0x19DEA] = 0x0B;
CpsRom[0x19DEC] = 0x05;
CpsRom[0x19DED] = 0x06;
CpsRom[0x19DF0] = 0x0C;
CpsRom[0x19DF1] = 0x02;
CpsRom[0x19DF2] = 0x00;
CpsRom[0x19DF3] = 0x0A;
CpsRom[0x19E5C] = 0x09;
CpsRom[0x19E5E] = 0x01;
CpsRom[0x19E5F] = 0x03;
CpsRom[0x19E62] = 0x0B;
CpsRom[0x19E64] = 0x05;
CpsRom[0x19E65] = 0x06;
CpsRom[0x19E66] = 0xFF;
CpsRom[0x19E68] = 0x0C;
CpsRom[0x19E69] = 0x02;
CpsRom[0x19E6A] = 0xFF;
CpsRom[0x19E82] = 0x0B;
CpsRom[0x19E84] = 0x0A;
CpsRom[0x19E85] = 0x14;
CpsRom[0x19E86] = 0x11;
CpsRom[0x19E89] = 0x10;
CpsRom[0x19E8A] = 0x09;
CpsRom[0x19E8C] = 0x0F;
CpsRom[0x19E8F] = 0x15;
CpsRom[0x3CC84] = 0x83;
CpsRom[0x3CC85] = 0xDE;
CpsRom[0x3CC94] = 0x3D;
CpsRom[0x3CC95] = 0xC2;
CpsRom[0x3CCD0] = 0x52;
CpsRom[0x3CCD1] = 0x4F;
CpsRom[0x3CCE0] = 0xC8;
CpsRom[0x3CCE1] = 0x57;
CpsRom[0x3CDE3] = 0xE0;
CpsRom[0x3CDEE] = 0xE0;
CpsRom[0x3CDEF] = 0xE0;
CpsRom[0x3CDFA] = 0xC0;
CpsRom[0x3CDFB] = 0xE0;

        CpsRom[0x1DAA40] = 0x4B;
        CpsRom[0x1DAA41] = 0x13;
        CpsRom[0x1DAA42] = 0x02;
        CpsRom[0x1DAA44] = 0x4F;
        CpsRom[0x1DAA45] = 0x13;
        CpsRom[0x1DAA46] = 0x02;
        CpsRom[0x1DAA48] = 0x53;
        CpsRom[0x1DAA49] = 0x13;
        CpsRom[0x1DAA4A] = 0x09;
        CpsRom[0x1DAA4C] = 0x57;
        CpsRom[0x1DAA4D] = 0x13;
        CpsRom[0x1DAA4E] = 0x09;
        CpsRom[0x1DAA80] = 0x4C;
        CpsRom[0x1DAA84] = 0x50;
        CpsRom[0x1DAA88] = 0x54;
        CpsRom[0x1DAA8C] = 0x58;
        CpsRom[0x1DAAC0] = 0x4D;
        CpsRom[0x1DAAC2] = 0x06;
        CpsRom[0x1DAAC4] = 0x51;
        CpsRom[0x1DAAC6] = 0x06;
        CpsRom[0x1DAAC8] = 0x55;
        CpsRom[0x1DAACA] = 0x0A;
        CpsRom[0x1DAACC] = 0x59;
        CpsRom[0x1DAACE] = 0x0A;
        CpsRom[0x1DAAD0] = 0xF6;
        CpsRom[0x1DAAD1] = 0x17;
        CpsRom[0x1DAAD2] = 0x04;
        CpsRom[0x1DAAD4] = 0xFC;
        CpsRom[0x1DAAD5] = 0x17;
        CpsRom[0x1DAAD6] = 0x04;
        CpsRom[0x1DAB00] = 0x4E;
        CpsRom[0x1DAB04] = 0x52;
        CpsRom[0x1DAB08] = 0x56;
        CpsRom[0x1DAB0C] = 0x5A;
        CpsRom[0x1DAB10] = 0xF7;
        CpsRom[0x1DAB11] = 0x17;
        CpsRom[0x1DAB12] = 0x04;
        CpsRom[0x1DAB14] = 0xFD;
        CpsRom[0x1DAB15] = 0x17;
        CpsRom[0x1DAB16] = 0x04;
        CpsRom[0x1DAB40] = 0x5B;
        CpsRom[0x1DAB42] = 0x0B;
        CpsRom[0x1DAB44] = 0x5D;
        CpsRom[0x1DAB46] = 0x0B;
        CpsRom[0x1DAB48] = 0x86;
        CpsRom[0x1DAB4A] = 0x0D;
        CpsRom[0x1DAB4C] = 0x88;
        CpsRom[0x1DAB4E] = 0x0D;
        CpsRom[0x1DAB50] = 0x67;
        CpsRom[0x1DAB51] = 0x1D;
        CpsRom[0x1DAB52] = 0x1A;
        CpsRom[0x1DAB54] = 0x69;
        CpsRom[0x1DAB55] = 0x1D;
        CpsRom[0x1DAB56] = 0x1A;
        CpsRom[0x1DAB80] = 0x5C;
        CpsRom[0x1DAB82] = 0x0B;
        CpsRom[0x1DAB84] = 0x5E;
        CpsRom[0x1DAB86] = 0x0B;
        CpsRom[0x1DAB88] = 0x87;
        CpsRom[0x1DAB8A] = 0x0D;
        CpsRom[0x1DAB8C] = 0x89;
        CpsRom[0x1DAB8E] = 0x0D;
        CpsRom[0x1DAB90] = 0x68;
        CpsRom[0x1DAB91] = 0x1D;
        CpsRom[0x1DAB92] = 0x1A;
        CpsRom[0x1DAB94] = 0x6A;
        CpsRom[0x1DAB95] = 0x1D;
        CpsRom[0x1DAB96] = 0x1A;
        CpsRom[0x1DABC0] = 0x76;
        CpsRom[0x1DABC4] = 0x7A;
        CpsRom[0x1DABC8] = 0x7E;
        CpsRom[0x1DABCC] = 0x82;
        CpsRom[0x1DABD0] = 0xF8;
        CpsRom[0x1DABD1] = 0x17;
        CpsRom[0x1DABD2] = 0x0C;
        CpsRom[0x1DABD4] = 0xFE;
        CpsRom[0x1DABD5] = 0x17;
        CpsRom[0x1DABD6] = 0x0C;
        CpsRom[0x1DAC00] = 0x77;
        CpsRom[0x1DAC02] = 0x05;
        CpsRom[0x1DAC04] = 0x7B;
        CpsRom[0x1DAC06] = 0x05;
        CpsRom[0x1DAC08] = 0x7F;
        CpsRom[0x1DAC0A] = 0x08;
        CpsRom[0x1DAC0C] = 0x83;
        CpsRom[0x1DAC0E] = 0x08;
        CpsRom[0x1DAC10] = 0xF9;
        CpsRom[0x1DAC11] = 0x17;
        CpsRom[0x1DAC12] = 0x0C;
        CpsRom[0x1DAC14] = 0xFF;
        CpsRom[0x1DAC15] = 0x17;
        CpsRom[0x1DAC16] = 0x0C;
        CpsRom[0x1DAC40] = 0x78;
        CpsRom[0x1DAC44] = 0x7C;
        CpsRom[0x1DAC48] = 0x80;
        CpsRom[0x1DAC4C] = 0x84;
        CpsRom[0x1DAC80] = 0x79;
        CpsRom[0x1DAC81] = 0x13;
        CpsRom[0x1DAC82] = 0x03;
        CpsRom[0x1DAC84] = 0x7D;
        CpsRom[0x1DAC85] = 0x13;
        CpsRom[0x1DAC86] = 0x03;
        CpsRom[0x1DAC88] = 0x81;
        CpsRom[0x1DAC89] = 0x13;
        CpsRom[0x1DAC8A] = 0x07;
        CpsRom[0x1DAC8C] = 0x85;
        CpsRom[0x1DAC8D] = 0x13;
        CpsRom[0x1DAC8E] = 0x07;
}
Title: Re: one question about cps1/2 program
Post by: lxd_bruce on August 05, 2007, 10:55:09 AM
Great! It works now. :biggrin:

Now I understand how to patch a game to make a hacked CPS2 driver.
 :cool:
I really appreciate your help. :wink:

Title: Re: one question about cps1/2 program
Post by: iq_132 on August 05, 2007, 11:03:34 AM
No problem :)