Jump to content

MAMEoX v0.84.b1 SE


roofus

Recommended Posts

thx to james help i got the problem fixed but now i ran into a weird prob; the game was added fine but mame ox won't list it :P the rom set matches the driver perfectly so i don't know what i did wrong

 

EDIT: ok i had to get delete the save for it to see the new drivers; will post if all works well :lol:

 

UPDATE: it works, not perfect looking but it works; only real bad thing is that you gotta wait a while

Edited by Prican25
Link to comment
Share on other sites

  • Replies 37
  • Created
  • Last Reply

Top Posters In This Topic

has anyone been able to change bios for neogeo games in mame ox?

Normally, in src/drivers/neogeo.c :

 

 

After SYSTEM_BIOS_START( neogeo ) :

 

SYSTEM_BIOS_ADD( 7, "uni-bios.13","Unibios MVS (Hack, Ver. 1.3)" )

 

 

After #define NEOGEO_BIOS \ :

 

ROM_LOAD16_WORD_SWAP_BIOS( 7, "uni-bios.13", 0x00000, 0x020000, CRC(b24b44a0) SHA1(eca8851d30557b97c309a0d9f4a9d20e5b14af4e) ) /* Universe Bios v1.3 (hack) */ \

Link to comment
Share on other sites

ok got a new prob and this time its for samsho5's extra info fo machine's neogeo.c:

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

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

{

  /* patch out loop to fix text layers in AES mode */

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

  mem16[0xE7EC2/2] = 0x7CCC;

  mem16[0xE7EC4/2] = 0x1DC7;

  mem16[0xE7ECA/2] = 0x2DB0;

  mem16[0xE7ECE/2] = 0x4C90;

  mem16[0xE7ED2/2] = 0x4C60;

  mem16[0xE7ED6/2] = 0x6B30;

  mem16[0xE7EE2/2] = 0x7CCC;

  mem16[0xE7EE4/2] = 0x1BCE;

  mem16[0xE7EEA/2] = 0x549D;

  mem16[0xE7EEE/2] = 0x117D;

  mem16[0xE7EF2/2] = 0x204C;

  mem16[0xE7EF6/2] = 0x302C;

  mem16[0xE7E02/2] = 0x7CCC;

  mem16[0xE7E04/2] = 0x45B1;

  mem16[0xE7E06/2] = 0x14A0;

  mem16[0xE7E08/2] = 0x2290;

  mem16[0xE7E0A/2] = 0x4390;

  mem16[0xE7E0C/2] = 0x2280;

  mem16[0xE7E0E/2] = 0x2170;

  mem16[0xE7E12/2] = 0x0060;

  mem16[0xE7E16/2] = 0x0050;

  mem16[0xE7E18/2] = 0x0040;

  mem16[0xE7E1C/2] = 0x0020;

}

 

once again its a syntax error with 'if' B)

Link to comment
Share on other sites

ok, once again got help by James (thx man) and have added samsho5/samsh5nd (based on dev) and so far in tests, the encrypted version didn't load at all for me with vmm but the decrypted one loaded up just fine with vmm at 1024.

 

i also added sengoku 3 using the driver info roofus gladly shared (thx for that) and tried it but it too didn't load.

 

also with the help of James (thx once again :P ) i added mslug5 plus and as we speak its compiling so i'll post later how well that plays.

Link to comment
Share on other sites

Well, my Mameox doesn't load at all. I give it alot of time. Just says "loading. PLease wait..."

Did I install it wrong? I just threw it onto my xbox, and created a roms directory in the main folder.

 

Please let me know, I'm looking forward to using this thing.

Link to comment
Share on other sites

ok, my latest error deals with adding mslug5, mslug5nd and mslug5p; it tells me: error LNK2001: unresolved external symbol _install_mem_read16_handler and error LNK2001: unresolved external symbol _install_mem_write16_handler

 

both of those are in machine/neogeo for mslug5 but i'm lost on what i can do

 

plz post if you can help

 

also i'm still having a hard time finding a proper driver for the kof 2004 ex hack so if you can post that driver i'll be glad to add it

Link to comment
Share on other sites

ok, my latest error deals with adding mslug5, mslug5nd and mslug5p; it tells me: error LNK2001: unresolved external symbol _install_mem_read16_handler and error LNK2001: unresolved external symbol _install_mem_write16_handler

 

both of those are in machine/neogeo for mslug5 but i'm lost on what i can do

 

plz post if you can help

 

also i'm still having a hard time finding a proper driver for the kof 2004 ex hack so if you can post that driver i'll be glad to add it

About kf2k3pls, tell me if U want to use kof2003 as parent & the recent decrypted EX Hero P1.

 

 

ms5plus driver I use :

 

in Machine\neogeo.c

 

static READ16_HANDLER( mslug5_prot_r )

{

logerror("PC %06x: access protected\n",activecpu_get_pc());

return 0xa0;

}

 

static WRITE16_HANDLER ( ms5plus_bankswitch_w )

{

unsigned char *RAM = memory_region(REGION_CPU1);

int bankaddress;

logerror("offset: %06x PC %06x: set banking %04x\n",offset,activecpu_get_pc(),data);

if ((offset == 0)&&(data == 0xa0))

{

bankaddress=0xa0;

cpu_setbank(4,&RAM[bankaddress]);

//neogeo_set_cpu1_second_bank(bankaddress);

logerror("offset: %06x PC %06x: set banking %04x\n\n",offset,activecpu_get_pc(),bankaddress);

}

else if(offset == 2)

{ data=data>>4;

//data=data&7;

bankaddress=data*0x100000;

cpu_setbank(4,&RAM[bankaddress]);

//neogeo_set_cpu1_second_bank(bankaddress);

logerror("offset: %06x PC %06x: set banking %04x\n\n",offset,activecpu_get_pc(),bankaddress);

}

}

 

after static void neogeo_custom_memory(void)

{

sram_locked = 0;

sram_protection_hack = 0;

prot_data = 0;

 

 

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

 

/* kludges */

 

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

{

// special ROM banking handler

install_mem_write16_handler(0, 0x2ffff0, 0x2fffff, ms5plus_bankswitch_w);

 

// additional protection

install_mem_read16_handler(0, 0x2ffff0, 0x2fffff, mslug5_prot_r);

}

 

 

 

in src\Drivers.c

 

DRIVER( ms5plus ) /* 0268 © 2003 Mega Enterprise / Playmore Corporation */

 

Drivers\neogeo.c

 

ROM_START( ms5plus )

ROM_REGION( 0x500000, REGION_CPU1, 0 )

ROM_LOAD16_WORD_SWAP( "268-p1p.bin", 0x000000, 0x100000, CRC(106b276f) SHA1(0e840df95f3813145e5043573483c7610d2d3e68) )

ROM_LOAD16_WORD_SWAP( "268-p2p.bin", 0x100000, 0x200000, CRC(d6a458e8) SHA1(c0a8bdae06d62859fb6734766ccc190eb2a809a4) )

ROM_LOAD16_WORD_SWAP( "268-p3p.bin", 0x300000, 0x200000, CRC(439ec031) SHA1(f0ad8f9be7d26bc504593c1321bd23c286a221f0) )

 

ROM_REGION( 0x20000, REGION_GFX1, 0 )

ROM_LOAD("268-s1p.bin", 0x000000, 0x20000, CRC(21e04432) SHA1(10057a2aa487087f7143d1d69fdad978a6bef0f7) )

ROM_REGION( 0x20000, REGION_GFX2, 0 )

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

 

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

 

ROM_REGION( 0x1000000, REGION_SOUND1, ROMREGION_SOUNDONLY )

ROM_LOAD( "268-v1d.bin", 0x000000, 0x800000, CRC(14848c5c) SHA1(8f67daa54738f8b217cce1f1d0a7872fd06d91b6) )

ROM_LOAD( "268-v2d.bin", 0x800000, 0x800000, CRC(696cce3b) SHA1(538d4a25befa4ffd25a48df97380469c13980f7a) )

 

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(899FB2AF) SHA1(a06a424c813c1b4f922c5404405779f605c90a06) ) /* 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

 

 

 

DRIVER_INIT( ms5plus )

{

UINT8 *dst = malloc(0x20000);

UINT8 *roms1 = (memory_region(REGION_GFX1));

int j;

if ( dst )

{

memcpy(dst,roms1,0x20000);

// descrambling the S1 by dorriga

for (j=0;j<0x20000; j+=0x000010)

{

memcpy( roms1+j, dst+j+0x000008,:|;

memcpy( roms1+j+0x000008, dst+j,:D;

 

}

}

free( dst );

neogeo_fix_bank_type = 1;

 

init_neogeo();

}

 

 

 

 

GAMEB( 2003, ms5plus, mslug5, neogeo, neogeo, neogeo, ms5plus, ROT0, "Mega Enterprise / Playmore Corporation", "Metal Slug 5 Plus (bootleg)" )

Edited by Mr.X
Link to comment
Share on other sites

I'm finally back, my desktop is no longer broken (so the FTP server is back up).

 

A minor note: in MAMEoX, you will need to change those nstall_mem_write16_handler's to memory_install_write16_handler, with the second parameter ADDRESS_SPACE_PROGRAM, and 0 as the 5th and 6th parameters. So, for this line:

install_mem_write16_handler(0, 0x2ffff0, 0x2fffff, mslug5p_bankswitch_w);

You will need to change it to this line:

memory_install_write16_handler(0, ADDRESS_SPACE_PROGRAM, 0x2ffff0, 0x2fffff, 0, 0, mslug5p_bankswitch_w);

 

Oh, and I'll be putting up a new build if anyone is interested. Supports a few more romsets for which I found drivers for (including that mslug5p one Mr.X posted).

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...