Jump to content

Adding games


Robert

Recommended Posts

Never say die!

 

ms5plus: Found a very embarrasing mistake, once this was fixed the game started, with corrupt graphics. Since the graphics roms were the same as mslug5, I added the kof2000_neogeo line. Now the graphics were fixed, but the flashing PLUS was gone. Hmmm.

 

Decided to investigate neocrypt.c and made a modification which fixed the problem. This mod allows a s1 rom to overrule the inbuilt text on any game of this type in the future. It also unlocked the s1 rom in samsho5, although I couldn't say what difference if any as I'm not that familiar with the game.

 

The final code for ms5plus:

ROM_START( ms5plus )
ROM_REGION( 0x800000, REGION_CPU1, 0 )
ROM_LOAD16_WORD_SWAP( "268-p1p.bin", 0x000000, 0x100000, CRC(106b276f) )
ROM_LOAD16_WORD_SWAP( "268-p2p.bin", 0x100000, 0x200000, CRC(d6a458e8) )
ROM_LOAD16_WORD_SWAP( "268-p3p.bin", 0x300000, 0x200000, CRC(439ec031) )

NEO_SFIX_128K( "268-s1p.bin", CRC(21e04432) )

NEO_BIOS_SOUND_256K( "268-m1d.bin", CRC(6866d696) SHA1(3638b072e44277a6bffea5a78a915a14c6afcba0) )

ROM_REGION( 0x1000000, REGION_SOUND1, 0 )
ROM_LOAD( "268-v1d.bin", 0x000000, 0x800000, CRC(14848c5c) )
ROM_LOAD( "268-v2d.bin", 0x800000, 0x800000, CRC(696cce3b) )

ROM_REGION( 0x4000000, REGION_GFX3, 0 )
ROM_LOAD16_BYTE( "268-c1.bin", 0x0000000, 0x800000, CRC(27d59de8) SHA1(0447a675d885721cedc079788cf41ae3f797834b) )
ROM_LOAD16_BYTE( "268-c2.bin", 0x0000001, 0x800000, CRC(e600dee1) SHA1(e55e5a25616c4daf09692d1b53a92d6f31e842ac) )
ROM_LOAD16_BYTE( "268-c3.bin", 0x1000000, 0x800000, CRC(b650f098) SHA1(4cd729153bd5b2054fbe10c96d2bb370084d1d24) )
ROM_LOAD16_BYTE( "268-c4.bin", 0x1000001, 0x800000, CRC(10499589) SHA1(24542a3b70080e5a61fdab04ab314450a1d821ef) )
ROM_LOAD16_BYTE( "268-c5.bin", 0x2000000, 0x800000, CRC(19352405) SHA1(5ee255403739c11a65608dcff0984480f067d824) )
ROM_LOAD16_BYTE( "268-c6.bin", 0x2000001, 0x800000, CRC(b1531523) SHA1(786f342dbb7fea50139d6421e5b82e551772bf0a) )
ROM_LOAD16_BYTE( "268-c7.bin", 0x3000000, 0x800000, CRC(fe2c1338) SHA1(de9d257574881dd1684956f60011a20c1dd5a0d9) )
ROM_LOAD16_BYTE( "268-c8.bin", 0x3000001, 0x800000, CRC(ecce3141) SHA1(103247b57f8ea5746dd1cf92dda95a6dc9268c78) )
ROM_END

//-------------------------------------------------------ms5plus
DRIVER_INIT ( ms5plus )
{
kof2000_neogeo_gfx_decrypt(0x19);
sx_decrypt(1);
neogeo_fix_bank_type = 1; 
init_neogeo(); 
}

 

 

Yep its known

 

This is what I use in the normal mame build in neocrypt.c

Which means nothing needs to added to the driver_int in drivers\neogeo.c

 

/* the S data comes from the end fo the C data */
{
/* Start X-or */
 if (strcmp(Machine->gamedrv->name,"ms4plus"))
 if (strcmp(Machine->gamedrv->name,"ms5plus"))
 if (strcmp(Machine->gamedrv->name,"kf2k2pls"))
 {
/* End X-or */
 int i;
 int tx_size = memory_region_length(REGION_GFX1);
 UINT8 *src = memory_region(REGION_GFX3)+rom_size-tx_size;
 UINT8 *dst = memory_region(REGION_GFX1);

 for (i = 0;i < tx_size;i++)
	 dst[i] = src[(i & ~0x1f) + ((i & 7) << 2) + ((~i & 8) >> 2) + ((i & 0x10) >> 4)];
}
}
}

 

If you look at mame plus source you see they have a code as well that allows the same thing. Which is also in neocrypt.c

Link to comment
Share on other sites

  • Replies 70
  • Created
  • Last Reply

Top Posters In This Topic

Forget what I said about samsho5, I wasn't even using that code. Now removed.

 

I used a similar idea to you, but it's not game-dependent.

	/* the S data comes from the end fo the C data */
{
int i;
int tx_size = memory_region_length(REGION_GFX1);
UINT8 *src = memory_region(REGION_GFX3)+rom_size-tx_size;
UINT8 *dst = memory_region(REGION_GFX1);
//-----------------modified by robbbert --------------------- only do this if there is no s1 rom present----------
if (dst[0] == 0)
 {
	 for (i = 0;i < tx_size;i++)
   dst[i] = src[(i & ~0x1f) + ((i & 7) << 2) + ((~i & 8) >> 2) + ((i & 0x10) >> 4)];
 }
}

I only added the line beginning with "if" - which means it will work for any game in this circumstance.

Link to comment
Share on other sites

Well, this business of adding games has settled into a routine. Here is the list of what I've added:

 

bangbedp (Bang Bead prototype)

mslug4nd (Metal Slug 4 decrypted)

mslug5 (Metal Slug 5)

ms5plus (Metal Slug 5 plus)

mslug5nd (Metal Slug 5 decrypted)

matrimbl (Matrimelee bootleg)

pnyaa (Pochi & Nyaa)

pnyaad (Pochi & Nyaa decrypted)

samsho5 (Samurai Shodown 5)

samsh5bl (Samurai Shodown 5 bootleg)

samsh5sp (Samurai Shodown 5 Special)

svcchaos (SVC Chaos)

svchaosa (SVC Chaos alternate)

svcboot (SVC Chaos bootleg)

svcplus (SVC Chaos plus)

svcplusa (SVC Chaos plus alternate)

svcsplus (SVC Chaos Super Plus)

kof96evo (KOF 96 Evolution hack)

kof96ep (KOF 96 Boss hack)

kof96ru (KOF 96 another boss hack)

kof2003 (KOF 2003)

kof2003b (KOF 2003 bootleg)

kof2003d (KOF 2003 decrypted)

kof2k4ex (KOF 2k4 EX plus)

kof2k3up (KOF 2k4 "ultra" plus)

kof2k4se (KOF 2k4 Special Edition)

kf2k4spe (KOF 2k4 Special Edition alternate)

kof2k2mp (KOF 2002 Magic Plus)

cthd2003 (Crouching Tiger Hidden Dragon 2003)

ct2k3sp (Crouching Tiger Hidden Dragon 2003 Special)

kof2k1rp (KOF 2001 Remix Pro hack)

kf2k2pls (KOF 2002 Plus decrypted)

kof2k2sr (KOF 2002 Super)

kof2k4mp (KOF 2k4 Magic Plus)

kof10th (KOF 10th Anniversary)

kof10thu (KOF 10th Unique)

kf10thud (KOF 10th Unique decrypted)

kf10thep (KOF 10th Extra Plus)

kog (King of Gladiator)

beast (Shadow of the Beast preview)

columnsn (Neogeo Columns)

diggerma (Diggerman)

neonopon (Neo No Panepon v2)

neopong (Neopong v1.1)

npong10 (Neopong v1.0)

syscheck (System Check)

frogfest (Frog Feast)

ltor (Jonas Indiana and the Lost Temple of Ra)

chaos (Demo by Chaos group)

 

49 games. They all work except for:

 

bangbedp, mslug4nd, mslug5nd - don't have the roms to test with

kof10th, kog - slight graphics problems, no fix available

neopong - crashes my computer when Start pressed

 

All thats left to do is automate the decrypt routines, so they examine the data and apply the proper decryption accordingly. I probably won't publish these because of the mameplus fiasco.

 

Lastly, I've been handed a whole pile of "phoenixed" CPS-2 roms. When (or more likely if) anything happens will be the subject of another thread.

 

Thanks to James and IQ_132 for their invaluable assistance ;)

 

Now this subject is over and I'm closing this thread.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.

×
×
  • Create New...