Author Topic: one question about cps1/2 program  (Read 6604 times)

Offline lxd_bruce

  • Jr. Member
  • **
  • Posts: 75
  • Karma: +1/-0
one question about cps1/2 program
« 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:
« Last Edit: August 05, 2007, 03:16:49 AM by lxd_bruce »

Offline Barry Harris

  • dontbeabarry
  • *
  • Posts: 1785
  • Karma: +0/-65535
  • I'm Barry Harris and I like to f*** people over
Re: one question about cps1/2 program
« Reply #1 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.
Account of Barry Harris; the traitor.
Send me an e-mail at barry@fbalpha.com letting me know how big of a piece of sh** I am.

Offline lxd_bruce

  • Jr. Member
  • **
  • Posts: 75
  • Karma: +1/-0
Re: one question about cps1/2 program
« Reply #2 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:
« Last Edit: August 05, 2007, 07:07:33 AM by lxd_bruce »

Offline iq_132

  • Administrator
  • *****
  • Posts: 3724
  • Karma: +411/-0
  • Definitely not Dink!
    • NeoSource
Re: one question about cps1/2 program
« Reply #3 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. ;)


Offline lxd_bruce

  • Jr. Member
  • **
  • Posts: 75
  • Karma: +1/-0
Re: one question about cps1/2 program
« Reply #4 on: August 05, 2007, 07:54:12 AM »
Of course not. :biggrin:

Here are the patches :biggrin:

Thanks in advance. :wink:
« Last Edit: August 05, 2007, 07:59:34 AM by lxd_bruce »

Offline iq_132

  • Administrator
  • *****
  • Posts: 3724
  • Karma: +411/-0
  • Definitely not Dink!
    • NeoSource
Re: one question about cps1/2 program
« Reply #5 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;
}


Offline lxd_bruce

  • Jr. Member
  • **
  • Posts: 75
  • Karma: +1/-0
Re: one question about cps1/2 program
« Reply #6 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:


Offline iq_132

  • Administrator
  • *****
  • Posts: 3724
  • Karma: +411/-0
  • Definitely not Dink!
    • NeoSource
Re: one question about cps1/2 program
« Reply #7 on: August 05, 2007, 11:03:34 AM »
No problem :)