Aller au contenu

Rom Metal Slug 5


J_A_C_K

Messages recommandés

mais on peut donner le site sur lequel la rom se trouve ?

Surement pas ! :unsure:;) Y'a des règles à suivre, lis les :class::unsure:

Effectivement la ROM est dispo, mais bon a la prochaine demande, regardez ce qui vous attend dans le sticky "Pas de demandes de Dumps récents" ;)

Lien vers le commentaire
Partager sur d’autres sites

Oui, elle commence seulement a être disponible sur quelques sites... Le dump n'est pas opérationnel à 100%. Les sons et le texte sont corects, mais les graphismes sont brouillés. Dans deux ou trois jours (si pas aujourd'hui soir), la rom devrait être jouable. ;)

Lien vers le commentaire
Partager sur d’autres sites

Effectivement, j'ai testé sous Jmame32+, et on a le son nickel, bruitages et tout, les textes mais bon les graphismes sont affreux !!! Des carrés qui se balladent dans tous les sens ! ;) Même avec des fix graphiques ça change rien, d'après ce que j'ai pu lire la -c4 est défectueuse...

Espérons que ton optimisme se vérifie Fernandel :class:

Lien vers le commentaire
Partager sur d’autres sites

Normalement, la saga aurait du s'arreter après le 3 (on voit notre personnage balancer son flingue a l'eau comme degouté de se bastonner...)

Mais on a eu droit au 4 et encore au 5 donc ca m'etonnerait qu'ils laissent une licence aussi porteuse que Metal Slug inutilisée... A quand Metal Slug 6?

Lien vers le commentaire
Partager sur d’autres sites

Non, les textes, musiques et bruitages sont parfaits, mais apparemment la -p1 est erronnée et n'arrive pas à gérer les graphismes correctement, d'après ce que j'ai pu lire sur pas mal de forums étrangers.

Il faut donc attendre la release de la -p1. :lol:

Lien vers le commentaire
Partager sur d’autres sites

Les rumeurs vont bon train sur le net concernant mslug5...

1) Le dump serait imparfait et il faudrait attendre des re-dumps de certaines parties. :)

2) Le dump serait parfait et mslug5 possèderait un nouveau système de cryptage et il faudrait attendre une mise à jour des émulateurs actuels. ;)

Je pencherai pour la deuxème version. Il circule depuis peu une version de MAME pesonnalisée permettant de faire fonctionner mslug5nd. Pour ma part, je l'ai essayé, le graphisme est correct mais chez moi le son crachote un peu. Le jeu est tout à fait jouable. Ce qui prouve bien que le dump est correct. ;)

Wait & See.

PS : Pour ceux qui voudraient cette version de MAME, je leur conseille de se promener sur les sites d'émulations espagnols les plus connus.

Lien vers le commentaire
Partager sur d’autres sites

Invité AppleSeed

bon marche nickel chez moi avec le mame special mslug5nd

hop vla les crc qui vt avec:

268_c1.rom 969c0d62

268_c2.rom c69ae867

268_c3.rom d7beaeaf

268_c4.rom e1b1131b

268_c5.rom 2fa1a5ad

268_c6.rom 6de89589

268_c7.rom 97bd0c0a

268_c8.rom c0d5bc0a

268_v1.rom c3540e0d

268_v2.rom 077bd2f4

268_v3.rom 39b14567

268_v4.rom 969ff3b2

268_s1.rom 64952683

268_m1.rom 6fa01c9a

268_p1.rom 3f1cf3d2

pour la manette matte ds le fichier mame.ini ou ms5mame.ini a la ligne "joystick" et faut mettre à 1

sinon julios si sa tinteresse g recup un fichier qui file les drv mais il sort une erreur lors de la compil car une variable na pas ete defini snif... et vu que jy connais que jy connais en prog emul XD...

Lien vers le commentaire
Partager sur d’autres sites

Salut tous,

depuis hier soir j'essaie de décrypter la rom de mslug5 dans Mame, kkun a le source du driver utilisé? J'ai la version pour jouer, mais je développe ma propre version de Mame32FX modifiée pour utiliser les roms non officielles...

J'en suis là:

ROM_START( mslug5n ) /* Encrypted GFX */

ROM_REGION( 0x800000, REGION_CPU1, 0 )

ROM_LOAD16_WORD_SWAP( "268-p1.bin", 0x000000, 0x800000, CRC(3f1cf3d2) SHA1(2c85eb5acdede4816675b91f8989c9e13c1573f8) )

NEO_SFIX_128K( "268-s1.bin", CRC(64952683) SHA1(88ec728c2fe18a11fdd218bed5d73bb3affe2ec1) )

NEO_BIOS_SOUND_128K( "268-m1.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", 0x800000, 0x400000, CRC(077bd2f4) SHA1(1699959d17f8c7113cebdb9da2e1cd18ce48486c) )

ROM_LOAD( "268-v3.bin", 0x800000, 0x400000, CRC(39b14567) SHA1(1658612a93ba30130f9260bc41d3f18f6b90c1e7) )

ROM_LOAD( "268-v4.bin", 0x800000, 0x400000, CRC(969ff3b2) SHA1(50feceb741a1c08b000b077a33151ab1352eb798) )

NO_DELTAT_REGION

ROM_REGION( 0x4000000, REGION_GFX3, 0 )

ROM_LOAD16_BYTE( "268-c1.bin", 0x0000000, 0x800000, CRC(969c0d62) SHA1(de3c5cfa980cca2fab0416ac0d292948b5d4c9c3) ) /* Plane 0,1 */

ROM_LOAD16_BYTE( "268-c2.bin", 0x0000001, 0x800000, CRC(c69ae867) SHA1(3198ee5c7c2c7563b49ebd9f7ba95d9b0b303f6c) ) /* Plane 2,3 */

ROM_LOAD16_BYTE( "268-c3.bin", 0x1000000, 0x800000, CRC(d7beaeaf) SHA1(99443ea4c1bab45f1977a390eb7e1a0163915110) ) /* Plane 0,1 */

ROM_LOAD16_BYTE( "268-c4.bin", 0x1000001, 0x800000, CRC(e1b1131b) SHA1(68a36d336582069e79ad481638d92f57c4cd6523) ) /* Plane 2,3 */

ROM_LOAD16_BYTE( "268-c5.bin", 0x2000000, 0x800000, CRC(2fa1a5ad) SHA1(4ae15d29ba979601598eddf8905072fe1d9e0a98) ) /* Plane 0,1 */

ROM_LOAD16_BYTE( "268-c6.bin", 0x2000001, 0x800000, CRC(6de89589) SHA1(86a6c036bf51af516fea83a30874026ec1586a83) ) /* Plane 2,3 */

ROM_LOAD16_BYTE( "268-c7.bin", 0x3000000, 0x800000, CRC(97bd0c0a) SHA1(30f3280fe527098ecf46541cc645a59b366105ea) ) /* Plane 0,1 */

ROM_LOAD16_BYTE( "268-c8.bin", 0x3000001, 0x800000, CRC(c0d5bc20) SHA1(b5d0d81d5cc624538b0651c568295e578a1330d1) ) /* Plane 2,3 */

ROM_END

Si quelqu'un sait, merci d'avance!

Lien vers le commentaire
Partager sur d’autres sites

Si ça peut te consoler, j'en suis au même point ;)

Mais apparemment le système de décryptage de la -p1 va bientôt être publié et pourra être rajouté à ce driver ! ;)

En fait, la modif' à rajouter sera je pense plus bas que les drivers de jeux dans neogeo.c, dans la partie DRIVER_INIT :)

Lien vers le commentaire
Partager sur d’autres sites

Oui tu as raison, j'ai pas préciser mais c'est le DRIVER_INIT qui me manque...ça a de fortes chances de ressembler à ce qui existe déjà certaines roms, mais les clés ne sont pas les mêmes ... ;)

Au début je me suis dit que le dump était pas bon, mais en fait si...

Enfin c'est la seule rom qui me pose problème, les autres fonctionnent nickel! ;)

Si je pouvais demander à l'auteur du MAME modifié juste le source qui me manque, ça serait le pied...enfin je vais prendre mon mal en patience :) ou alors cherche encore éhhé ;)

Lien vers le commentaire
Partager sur d’autres sites

Invité AppleSeed

bon peut pas te mail car sui pa register donc mode boeuf: :)

\machine\neogeo.c

/* thanks to razoola */

static WRITE16_HANDLER ( cthd2003_bankswitch_w )

{

  int bankaddress;

  static int cthd2003_banks[8]=

  {

1,0,1,0,1,0,3,2,

  };

  if (offset == 0)

  {

bankaddress = 0x100000 + cthd2003_banks[data&7]*0x100000;

neogeo_set_cpu1_second_bank(bankaddress);

  }

}

static WRITE16_HANDLER ( mslug5_bankswitch_w )

{

  int bankaddress;

  //unsigned int offset=(svc_r8(0x2ffff2)<<16)|(svc_r8(0x2ffff3)<<8)|(svc_r8(0x2ffff0)<<0);

  offset=0x40A0;

  *((unsigned char *) (SVCRAM+((0x2ffff0-0x2fe000)^1)))&=0xfe;

  *((unsigned char *) (SVCRAM+((0x2ffff1-0x2fe000)^1)))=0xa0;

  *((unsigned char *) (SVCRAM+((0x2ffff2-0x2fe000)^1)))&=0x7f;

  bankaddress=offset;

  neogeo_set_cpu1_second_bank(bankaddress);

}

static void neogeo_custom_memory(void)

{

/* Individual games can go here... */

/* kludges */

....

if (!strcmp(Machine->gamedrv->name,"mslug3"))

{

  /* special ROM banking handler */

  install_mem_write16_handler(0, 0x2fffe4, 0x2fffe5, mslug3_bankswitch_w);

  /* additional protection */

  install_mem_read16_handler(0, 0x2fe446, 0x2fe447, prot_9a37_r);

}

if (!strcmp(Machine->gamedrv->name,"mslug5"))

{

  /* special ROM banking handler */

  /* 2fe000-2fffe0 */

  data16_t *mem16 = (data16_t *)memory_region(REGION_CPU1);

  install_mem_write16_handler(0, 0x2fe000, 0x2fffe0, mslug5_bankswitch_w);

  //These perform some palette calculations

  //Unpack palette word to RGB dword

  //on writes to e0/e1

  unsigned char b1=mem16[0x2fffe0];

  unsigned char b2=mem16[0x2fffe1];

  mem16[0x2fffe3]=(((b2>>0)&0xf)<<1)|((b1>>4)&1);

  mem16[0x2fffe2]=(((b2>>4)&0xf)<<1)|((b1>>5)&1);

  mem16[0x2fffe5]=(((b1>>0)&0xf)<<1)|((b1>>6)&1);

  mem16[0x2fffe4]=(b1>>7);

  //pack RGB dword to palette word

  //on writes to e8/e9/ea/eb

  b1=mem16[0x2fffe8];

  b2=mem16[0x2fffe9];

  unsigned char b3=mem16[0x2fffea];

  unsigned char b4=mem16[0x2fffeb];

  mem16[0x2fffed]=(b2>>1)|((b1>>1)<<4);

  mem16[0x2fffec]=(b4>>1)|((b2&1)<<4)|((b1&1)<<5)|((b4&1)<<6)|((b3&1)<<7);

}

drivers\neogeo.c

static MEMORY_WRITE16_START( neogeo_writemem )

{ 0x000000, 0x0fffff, MWA16_ROM }, /* ghost pilots writes to ROM */

{ 0x100000, 0x10ffff, MWA16_BANK1 }, // WORK RAM

/* { 0x200000, 0x200fff, whp copies ROM data here. Why? Is there RAM in the banked ROM space? */

/* trally writes to 200000-200003 as well, probably looking for a serial link */

/* both games write to 0000fe before writing to 200000. The two things could be related. */

/* sidkicks reads and writes to several addresses in this range, using this for copy */

/* protection. Custom parts instead of the banked ROMs? */

{ 0x2fe000, 0x2fffe0, SVCRAM },    /* 2fe000-2fffe0 8kb (almost) of extra RAM*/

{ 0x2ffff0, 0x2fffff, neo_bankswitch_w }, /* NOTE THIS CHANGE TO END AT FF !!! */

...

static MEMORY_WRITE16_START( neogeo_writemem )

{ 0x2fe000, 0x2fffe0, SVCRAM },  /* 2fe000-2fffe0 8kb (almost) of extra RAM*/

DRIVER_INIT ( mslug5 )

{

neogeo_V_fix();

neogeo_fix_bank_type = 1;

kof2000_neogeo_gfx_decrypt(0x19);

init_neogeo();

}

includes\neogeo.h

WRITE16_HANDLER( neogeo_sram16_lock_w );

WRITE16_HANDLER( neogeo_sram16_unlock_w );

READ16_HANDLER( neogeo_sram16_r );

WRITE16_HANDLER( neogeo_sram16_w );

WRITE16_HANDLER( SVCRAM );

....

/src/include/neogeo.h

WRITE16_HANDLER( neogeo_sram16_lock_w );

WRITE16_HANDLER( neogeo_sram16_unlock_w );

READ16_HANDLER( neogeo_sram16_r );

WRITE16_HANDLER( neogeo_sram16_w );

WRITE16_HANDLER( SVCRAM );

/src/machine/neogeo.c

static WRITE16_HANDLER ( mslug5_bankswitch_w )

{

  int bankaddress;

  //unsigned int offset=(svc_r8(0x2ffff2)<<16)|(svc_r8(0x2ffff3)<<8)|(svc_r8(0x2ffff0)<<0);

  offset=0x40A0;

//  *((unsigned char *) (SVCRAM+((0x2ffff0-0x2fe000)^1)))&=0xfe;

//  *((unsigned char *) (SVCRAM+((0x2ffff1-0x2fe000)^1)))=0xa0;

//  *((unsigned char *) (SVCRAM+((0x2ffff2-0x2fe000)^1)))&=0x7f;

  bankaddress=offset;

  neogeo_set_cpu1_second_bank(bankaddress);

}

static READ16_HANDLER( prot_9a37_r )

{

return 0x9a37;

}

..........

static void neogeo_custom_memory(void)

{

sram_locked          = 0;

sram_protection_hack = 0;

prot_data            = 0;

/* Individual games can go here... */

/* kludges */

if (!strcmp(Machine->gamedrv->name,"mslug3")  ||

  !strcmp(Machine->gamedrv->name,"mslug3n") ||

  !strcmp(Machine->gamedrv->name,"mslug3d"))

{

  /* the game hangs after a while without this patch */

  data16_t *mem16 = (data16_t *)memory_region(REGION_CPU1);

  mem16[0x0288e >> 1] = 0x4e71;

  mem16[0x02896 >> 1] = 0x4e71;

}

if (!strcmp(Machine->gamedrv->name,"mslug5nd"))

{

  /* special ROM banking handler */

  /* 2fe000-2fffe0 */

  data16_t *mem16 = (data16_t *)memory_region(REGION_CPU1);

  install_mem_write16_handler(0, 0x2fe000, 0x2fffe0, mslug5_bankswitch_w);

  //These perform some palette calculations

  //Unpack palette word to RGB dword

  //on writes to e0/e1

  unsigned char b1=mem16[0x2fffe0];

  unsigned char b2=mem16[0x2fffe1];

  mem16[0x2fffe3]=(((b2>>0)&0xf)<<1)|((b1>>4)&1);

  mem16[0x2fffe2]=(((b2>>4)&0xf)<<1)|((b1>>5)&1);

  mem16[0x2fffe5]=(((b1>>0)&0xf)<<1)|((b1>>6)&1);

  mem16[0x2fffe4]=(b1>>7);

  //pack RGB dword to palette word

  //on writes to e8/e9/ea/eb

  b1=mem16[0x2fffe8];

  b2=mem16[0x2fffe9];

  unsigned char b3=mem16[0x2fffea];

  unsigned char b4=mem16[0x2fffeb];

  mem16[0x2fffed]=(b2>>1)|((b1>>1)<<4);

  mem16[0x2fffec]=(b4>>1)|((b2&1)<<4)|((b1&1)<<5)|((b4&1)<<6)|((b3&1)<<7);

}

/src/drivers/neogeo.c

ROM_START( mslug5nd )

  ROM_REGION( 0x800000, REGION_CPU1, 0 )

  ROM_LOAD16_WORD_SWAP( "ms5_p1.bin",  0x000000, 0x400000, CRC(d0466792) )

ROM_LOAD16_WORD_SWAP( "ms5_p2.bin",  0x400000, 0x400000, CRC(fbf6b61e) )

  NEO_SFIX_128K( "ms5_s1.rom", CRC(ec8504d5) )

  NEO_BIOS_SOUND_128K( "ms5_m1.rom", CRC(6fa01c9a) )

  ROM_REGION( 0x1000000, REGION_SOUND1, ROMREGION_SOUNDONLY )

  ROM_LOAD( "ms5_v1.rom", 0x000000, 0x400000, CRC(c3540e0d) )

  ROM_LOAD( "ms5_v2.rom", 0x400000, 0x400000, CRC(077bd2f4) )

  ROM_LOAD( "ms5_v3.rom", 0x800000, 0x400000, CRC(39b14567) )

  ROM_LOAD( "ms5_v4.rom", 0xc00000, 0x400000, CRC(969ff3b2) )

  NO_DELTAT_REGION

  ROM_REGION( 0x4000000, REGION_GFX3, 0 )

  ROM_LOAD16_BYTE( "ms5_c1.rom", 0x0000000, 0x800000, CRC(969c0d62) )

  ROM_LOAD16_BYTE( "ms5_c2.rom", 0x0000001, 0x800000, CRC(c69ae867) )

  ROM_LOAD16_BYTE( "ms5_c3.rom", 0x1000000, 0x800000, CRC(d7beaeaf) )

  ROM_LOAD16_BYTE( "ms5_c4.rom", 0x1000001, 0x800000, CRC(e1b1131b) )

  ROM_LOAD16_BYTE( "ms5_c5.rom", 0x2000000, 0x800000, CRC(2fa1a5ad) )

  ROM_LOAD16_BYTE( "ms5_c6.rom", 0x2000001, 0x800000, CRC(6de89589) )

  ROM_LOAD16_BYTE( "ms5_c7.rom", 0x2000000, 0x800000, CRC(97bd0c0a) )

  ROM_LOAD16_BYTE( "ms5_c8.rom", 0x2000001, 0x800000, CRC(c0d5bc20) )

ROM_END

DRIVER_INIT ( mslug5nd )

{

neogeo_fix_bank_type = 1;

init_neogeo();

}

GAMEB( 2003, mslug5nd, neogeo, neogeo,  neogeo, neogeo,  mslug5nd, ROT0, "playmore", "metal slug 5 - Super Vehicle-001/V" )

attention tous nest pas util dapres moi comme par exemple pour mslug5 (non mslug5nd)

le pb lors de la compilation est ce truc la: { 0x2fe000, 0x2fffe0, SVCRAM }

le SVCRAM est indefini... je me suis dis que sa pourrais ce resoudre en l'ajoutant dans le fichier memory.h. mais y capte que dalle en prog emu. good luck!!!

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

Chargement
×
×
  • Créer...

Information importante

By using this site, you agree to our Conditions d’utilisation.