Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Mr.X

Metal Slug 5 (mslug5.zip/ms5.zip) News

Recommended Posts

Well, finally I got my MAME32 to support mslug5 and mslug5nd! :-D

 

P.S. the mame driver code posted by O-Fear is incomplete!

Edited by deltaquad

Share this post


Link to post
Share on other sites
Well, finally I got my MAME32 to support mslug5 and mslug5nd!  :-D

 

P.S. the mame driver code posted by O-Fear is incomplete!

what do you mean by that ?

Share this post


Link to post
Share on other sites

I mean that just before this line:

 

static WRITE16_HANDLER( mslug5_calc_bankoffset_w )

 

There's need to be this line:

 

int ms5_bank_offset = 0;

 

In the O-Fear post this line wasn't there so the driver does not function. :(

It is probably due to a cut&paste mistake. :-D-_-

Edited by deltaquad

Share this post


Link to post
Share on other sites
I mean that just before this line:

 

static WRITE16_HANDLER( mslug5_calc_bankoffset_w )

 

There's need to be this line:

 

int ms5_bank_offset = 0;

 

In the O-Fear post this line wasn't there so the driver does not function.  :(

It is probably due to a cut&paste mistake.  :-D  -_-

no mine never needed that

Share this post


Link to post
Share on other sites

As I can see from your pm, you have a slightly different but equivalent line:

 

int ms5_bank_offset;

 

Probably you got it from another source. -_-:-D

Share this post


Link to post
Share on other sites
As I can see from your pm, you have a slightly different but equivalent line:

 

int ms5_bank_offset;

 

Probably you got it from another source.  -_-  :-D

it works tho

 

i never used the mslug5 driver

 

so what is the diffence betwwen the mslug5nd and mslug5 driver can you show me

 

?

Share this post


Link to post
Share on other sites
Someone in the neogeo thread section posted the mame version by itself for download. I was thankful because I didn't want to have to download the entire rom zip again just to get the mame part.  Looks like it does work fine. I've already enabled blood and set the video to display 640x480 with scanlines. Looks fine.

 

BTW James, what was all that talk about this rom set being a "FAKE FAKE FAKE"? Turns out it was "REAL REAL REAL".

cause some of the older rom sets were fake

Share this post


Link to post
Share on other sites

i wish Gamcop was here as i need to upload my mame32 which plays svc svcplus samsho5 mslug5

Share this post


Link to post
Share on other sites

ahh james thats exactly what I need:)

 

maybe gamecop is sleeping.........or saving some children from buying another Army Men game

Share this post


Link to post
Share on other sites
it works tho

 

i never used the mslug5 driver

 

so what is the diffence betwwen the mslug5nd and mslug5 driver can you show me

 

?

 

I don't have the mslug5.zip romset, so I played only mslug5nd.zip romset for the moment.

Anyway here is the complete code, surely you know better than me how to read it! :-D

 

ROM_START( mslug5 )
   ROM_REGION( 0x800000, REGION_CPU1, 0 )
   ROM_LOAD16_WORD_SWAP( "268-p1.bin", 0x000000, 0x800000, CRC(3F1CF3D2) SHA1(2C85EB5ACDEDE4816675B91F8989C9E13C1573F8) )

   ROM_REGION( 0x20000, REGION_GFX1, 0 )
   ROM_FILL(                 0x000000, 0x20000, 0 )
   ROM_REGION( 0x20000, REGION_GFX2, 0 )
   ROM_LOAD( "sfix.sfx",  0x000000, 0x20000, CRC(354029fc) SHA1(4ae4bf23b4c2acff875775d4cbff5583893ce2a1) )

   NEO_BIOS_SOUND_128K( "268-m1d.bin", CRC(6FA01C9A) SHA1(3DAB7593BFCCE318D22EC3DF672EE3B4AB73DCF5) )

   ROM_REGION( 0x1000000, REGION_SOUND1, ROMREGION_SOUNDONLY )
   ROM_LOAD( "268-v1.bin", 0x000000, 0x400000, CRC(C3540E0D) SHA1(BF7CA3ABE291B28A4CFAEF791F0C556CC98AD8D8) )
   ROM_LOAD( "268-v2.bin", 0x400000, 0x400000, CRC(077BD2F4) SHA1(1699959D17F8C7113CEBDB9DA2E1CD18CE48486C) )
   ROM_LOAD( "268-v3.bin", 0x800000, 0x400000, CRC(39B14567) SHA1(1658612A93BA30130F9260BC41D3F18F6B90C1E7) )
   ROM_LOAD( "268-v4.bin", 0xc00000, 0x400000, CRC(969FF3B2) SHA1(50FECEB741A1C08B000B077A33151AB1352EB798) )

   NO_DELTAT_REGION

   ROM_REGION( 0x4000000, REGION_GFX3, 0 )
   ROM_LOAD16_BYTE( "268-c1.bin", 0x0000000, 0x800000, CRC(27d59de8) SHA1(DE3C5CFA980CCA2FAB0416AC0D292948B5D4C9C3) ) /* Plane 0,1 */
   ROM_LOAD16_BYTE( "268-c2.bin", 0x0000001, 0x800000, CRC(e600dee1) SHA1(3198EE5C7C2C7563B49EBD9F7BA95D9B0B303F6C) ) /* Plane 2,3 */
   ROM_LOAD16_BYTE( "268-c3.bin", 0x1000000, 0x800000, CRC(b650f098) SHA1(99443EA4C1BAB45F1977A390EB7E1A0163915110) ) /* Plane 0,1 */
   ROM_LOAD16_BYTE( "268-c4.bin", 0x1000001, 0x800000, CRC(10499589) SHA1(68A36D336582069E79AD481638D92F57C4CD6523) ) /* Plane 2,3 */
   ROM_LOAD16_BYTE( "268-c5.bin", 0x2000000, 0x800000, CRC(19352405) SHA1(4AE15D29BA979601598EDDF8905072FE1D9E0A98) ) /* Plane 0,1 */
   ROM_LOAD16_BYTE( "268-c6.bin", 0x2000001, 0x800000, CRC(bbec8745) SHA1(86A6C036BF51AF516FEA83A30874026EC1586A83) ) /* Plane 2,3 */
   ROM_LOAD16_BYTE( "268-c7.bin", 0x3000000, 0x800000, CRC(fe2c1338) SHA1(30F3280FE527098ECF46541CC645A59B366105EA) ) /* Plane 0,1 */
   ROM_LOAD16_BYTE( "268-c8.bin", 0x3000001, 0x800000, CRC(ecce3141) SHA1(B5D0D81D5CC624538B0651C568295E578A1330D1) ) /* Plane 2,3 */
ROM_END

ROM_START( mslug5nd )
   ROM_REGION( 0x800000, REGION_CPU1, 0 )
   ROM_LOAD16_WORD_SWAP( "268-p1.bin", 0x000000, 0x800000, CRC(3F1CF3D2) SHA1(2C85EB5ACDEDE4816675B91F8989C9E13C1573F8) )

   ROM_REGION( 0x20000, REGION_GFX1, 0 )
   ROM_FILL(                 0x000000, 0x20000, 0 )
   ROM_REGION( 0x20000, REGION_GFX2, 0 )
   ROM_LOAD( "sfix.sfx",  0x000000, 0x20000, CRC(354029fc) SHA1(4ae4bf23b4c2acff875775d4cbff5583893ce2a1) )

   NEO_BIOS_SOUND_128K( "268-m1d.bin", CRC(6FA01C9A) SHA1(3DAB7593BFCCE318D22EC3DF672EE3B4AB73DCF5) )

   ROM_REGION( 0x1000000, REGION_SOUND1, ROMREGION_SOUNDONLY )
   ROM_LOAD( "268-v1.bin", 0x000000, 0x400000, CRC(C3540E0D) SHA1(BF7CA3ABE291B28A4CFAEF791F0C556CC98AD8D8) )
   ROM_LOAD( "268-v2.bin", 0x400000, 0x400000, CRC(077BD2F4) SHA1(1699959D17F8C7113CEBDB9DA2E1CD18CE48486C) )
   ROM_LOAD( "268-v3.bin", 0x800000, 0x400000, CRC(39B14567) SHA1(1658612A93BA30130F9260BC41D3F18F6B90C1E7) )
   ROM_LOAD( "268-v4.bin", 0xc00000, 0x400000, CRC(969FF3B2) SHA1(50FECEB741A1C08B000B077A33151AB1352EB798) )

   NO_DELTAT_REGION

   ROM_REGION( 0x4000000, REGION_GFX3, 0 )
   ROM_LOAD16_BYTE( "268-c1d.bin", 0x0000000, 0x800000, CRC(969C0D62) SHA1(DE3C5CFA980CCA2FAB0416AC0D292948B5D4C9C3) ) /* Plane 0,1 */
   ROM_LOAD16_BYTE( "268-c2d.bin", 0x0000001, 0x800000, CRC(C69AE867) SHA1(3198EE5C7C2C7563B49EBD9F7BA95D9B0B303F6C) ) /* Plane 2,3 */
   ROM_LOAD16_BYTE( "268-c3d.bin", 0x1000000, 0x800000, CRC(D7BEAEAF) SHA1(99443EA4C1BAB45F1977A390EB7E1A0163915110) ) /* Plane 0,1 */
   ROM_LOAD16_BYTE( "268-c4d.bin", 0x1000001, 0x800000, CRC(E1B1131B) SHA1(68A36D336582069E79AD481638D92F57C4CD6523) ) /* Plane 2,3 */
   ROM_LOAD16_BYTE( "268-c5d.bin", 0x2000000, 0x800000, CRC(2FA1A5AD) SHA1(4AE15D29BA979601598EDDF8905072FE1D9E0A98) ) /* Plane 0,1 */
   ROM_LOAD16_BYTE( "268-c6d.bin", 0x2000001, 0x800000, CRC(6DE89589) SHA1(86A6C036BF51AF516FEA83A30874026EC1586A83) ) /* Plane 2,3 */
   ROM_LOAD16_BYTE( "268-c7d.bin", 0x3000000, 0x800000, CRC(97BD0C0A) SHA1(30F3280FE527098ECF46541CC645A59B366105EA) ) /* Plane 0,1 */
   ROM_LOAD16_BYTE( "268-c8d.bin", 0x3000001, 0x800000, CRC(C0D5BC20) SHA1(B5D0D81D5CC624538B0651C568295E578A1330D1) ) /* Plane 2,3 */
ROM_END

 

int ms5_bank_offset = 0;

static WRITE16_HANDLER( mslug5_calc_bankoffset_w )
{
   ms5_bank_offset = (data>>12)%0x03;
}

static WRITE16_HANDLER( mslug5_bankswitch_w )
{
   neogeo_set_cpu1_second_bank( (neogeo_ram16[0x10/2] + ms5_bank_offset) << 20 );
}

DRIVER_INIT( mslug5 )
{
   neogeo_fix_bank_type = 1;
   kof2000_neogeo_gfx_decrypt(0x19);

   install_mem_write16_handler(0, 0x2ffff0, 0x2ffff1, mslug5_bankswitch_w);
   install_mem_write16_handler(0, 0x2ffff2, 0x2ffff3, mslug5_calc_bankoffset_w);

   init_neogeo();
}

DRIVER_INIT( mslug5nd )
{
   /* the S data comes from the end of the C data */
   {
       int i;
       int tx_size = memory_region_length(REGION_GFX1);
       int rom_size = memory_region_length(REGION_GFX3);
       
       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)];
   }
   
   install_mem_write16_handler(0, 0x2ffff0, 0x2ffff1, mslug5_bankswitch_w);
   install_mem_write16_handler(0, 0x2ffff2, 0x2ffff3, mslug5_calc_bankoffset_w);

   init_neogeo();
}

Edited by deltaquad

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

×
×
  • Create New...