mirror of
https://github.com/holub/mame
synced 2025-06-09 22:33:00 +03:00
new working clone
------------------------------ Mobile Suit Gundam (bootleg) [ArcadeHacker, The Dumping Union]
This commit is contained in:
parent
5f93bb243f
commit
e67d4e2c15
@ -111,7 +111,7 @@ TODO:
|
|||||||
zombraid not aligned when flipped vertically or horizontally
|
zombraid not aligned when flipped vertically or horizontally
|
||||||
|
|
||||||
- bad sound in sokonuke?
|
- bad sound in sokonuke?
|
||||||
- in msgunda1, colors for the score display screw up after the second animation
|
- in msgundam1, colors for the score display screw up after the second animation
|
||||||
in attract mode. The end of the animation also has garbled sprites.
|
in attract mode. The end of the animation also has garbled sprites.
|
||||||
Note that the animation is not present in msgundam.
|
Note that the animation is not present in msgundam.
|
||||||
- Some games: battery backed portion of RAM (e.g. downtown, kiwame, zombraid)
|
- Some games: battery backed portion of RAM (e.g. downtown, kiwame, zombraid)
|
||||||
@ -2789,6 +2789,32 @@ void seta_state::msgundam_map(address_map &map)
|
|||||||
map(0xd00000, 0xd00007).rw("pit", FUNC(pit8254_device::read), FUNC(pit8254_device::write)).umask16(0x00ff);
|
map(0xd00000, 0xd00007).rw("pit", FUNC(pit8254_device::read), FUNC(pit8254_device::write)).umask16(0x00ff);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void seta_state::msgundamb_map(address_map &map)
|
||||||
|
{
|
||||||
|
map(0x000000, 0x07ffff).rom(); // ROM
|
||||||
|
map(0x100000, 0x1fffff).rom(); // ROM
|
||||||
|
map(0x200000, 0x20ffff).ram(); // RAM
|
||||||
|
map(0x400000, 0x400001).portr("P1"); // P1
|
||||||
|
map(0x400002, 0x400003).portr("P2"); // P2
|
||||||
|
map(0x400004, 0x400005).portr("COINS"); // Coins
|
||||||
|
map(0x400000, 0x400001).w(FUNC(seta_state::ipl1_ack_w)); // Lev 2 IRQ Ack
|
||||||
|
map(0x400004, 0x400005).w(FUNC(seta_state::ipl2_ack_w)); // Lev 4 IRQ Ack
|
||||||
|
map(0x500001, 0x500001).w(FUNC(seta_state::seta_coin_counter_w));
|
||||||
|
map(0x500003, 0x500003).w(FUNC(seta_state::seta_vregs_w)); // Video Registers
|
||||||
|
map(0x500004, 0x500005).nopw();
|
||||||
|
map(0x600000, 0x600003).r(FUNC(seta_state::seta_dsw_r)); // DSW
|
||||||
|
map(0x700400, 0x700fff).ram().share("paletteram1"); // Palette
|
||||||
|
map(0x800000, 0x803fff).ram().w(FUNC(seta_state::vram_w<0>)).share("vram_0"); // VRAM 0&1
|
||||||
|
map(0x880000, 0x883fff).ram().w(FUNC(seta_state::vram_w<1>)).share("vram_1"); // VRAM 2&3
|
||||||
|
map(0x900000, 0x900005).ram().share("vctrl_0"); // VRAM 0&1 Ctrl
|
||||||
|
map(0x980000, 0x980005).ram().share("vctrl_1"); // VRAM 2&3 Ctrl
|
||||||
|
map(0xa00000, 0xa005ff).ram().rw(m_seta001, FUNC(seta001_device::spriteylow_r16), FUNC(seta001_device::spriteylow_w16)); // Sprites Y
|
||||||
|
map(0xa00600, 0xa00607).ram().rw(m_seta001, FUNC(seta001_device::spritectrl_r16), FUNC(seta001_device::spritectrl_w16));
|
||||||
|
map(0xa80000, 0xa80001).ram(); // ? 0x4000
|
||||||
|
map(0xb00000, 0xb03fff).ram().rw(m_seta001, FUNC(seta001_device::spritecode_r16), FUNC(seta001_device::spritecode_w16)); // Sprites Code + X + Attr
|
||||||
|
map(0xc00000, 0xc03fff).rw(m_x1, FUNC(x1_010_device::word_r), FUNC(x1_010_device::word_w)); // Sound
|
||||||
|
map(0xd00000, 0xd00007).rw("pit", FUNC(pit8254_device::read), FUNC(pit8254_device::write)).umask16(0x00ff);
|
||||||
|
}
|
||||||
|
|
||||||
/***************************************************************************
|
/***************************************************************************
|
||||||
Oishii Puzzle
|
Oishii Puzzle
|
||||||
@ -5405,11 +5431,11 @@ static INPUT_PORTS_START( msgundam )
|
|||||||
PORT_SERVICE_DIPLOC( 0x8000, IP_ACTIVE_LOW, "SW1:8" )
|
PORT_SERVICE_DIPLOC( 0x8000, IP_ACTIVE_LOW, "SW1:8" )
|
||||||
INPUT_PORTS_END
|
INPUT_PORTS_END
|
||||||
|
|
||||||
static INPUT_PORTS_START( msgunda1 )
|
static INPUT_PORTS_START( msgundam1 )
|
||||||
PORT_INCLUDE(msgundam)
|
PORT_INCLUDE(msgundam)
|
||||||
|
|
||||||
PORT_MODIFY("COINS") // IN2 - Coins - $400004.w
|
PORT_MODIFY("COINS") // IN2 - Coins - $400004.w
|
||||||
/* this set seems to be a japan set, english mode doesn't work correctly */
|
/* this set seems to be a Japan set, English mode doesn't work correctly */
|
||||||
PORT_DIPNAME( 0x0080, 0x0000, DEF_STR( Language ) )
|
PORT_DIPNAME( 0x0080, 0x0000, DEF_STR( Language ) )
|
||||||
// PORT_DIPSETTING( 0x0080, DEF_STR( English ) )
|
// PORT_DIPSETTING( 0x0080, DEF_STR( English ) )
|
||||||
PORT_DIPSETTING( 0x0000, DEF_STR( Japanese ) )
|
PORT_DIPSETTING( 0x0000, DEF_STR( Japanese ) )
|
||||||
@ -9155,7 +9181,12 @@ void seta_state::msgundam(machine_config &config)
|
|||||||
m_x1->add_route(ALL_OUTPUTS, "mono", 1.0);
|
m_x1->add_route(ALL_OUTPUTS, "mono", 1.0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void seta_state::msgundamb(machine_config &config)
|
||||||
|
{
|
||||||
|
msgundam(config);
|
||||||
|
|
||||||
|
m_maincpu->set_addrmap(AS_PROGRAM, &seta_state::msgundamb_map);
|
||||||
|
}
|
||||||
|
|
||||||
/***************************************************************************
|
/***************************************************************************
|
||||||
Oishii Puzzle
|
Oishii Puzzle
|
||||||
@ -10789,6 +10820,33 @@ ROM_START( msgundam1 )
|
|||||||
ROM_LOAD( "fa001004.u26", 0x000000, 0x100000, CRC(b965f07c) SHA1(ff7827cc80655465ffbb732d55ba81f21f51a5ca) )
|
ROM_LOAD( "fa001004.u26", 0x000000, 0x100000, CRC(b965f07c) SHA1(ff7827cc80655465ffbb732d55ba81f21f51a5ca) )
|
||||||
ROM_END
|
ROM_END
|
||||||
|
|
||||||
|
ROM_START( msgundamb ) // 2 PCB stack, one has a 'Tecnoval - tecnologia valenciana del recreativo' sticker
|
||||||
|
ROM_REGION( 0x300000, "maincpu", 0 ) /* 68000 Code, on lower board */
|
||||||
|
ROM_LOAD16_BYTE( "d-4.bin", 0x000000, 0x040000, CRC(ca5bfa89) SHA1(108435cb65919b4b90be102e7ac2799501149fc8) ) // 27c020
|
||||||
|
ROM_LOAD16_BYTE( "d-2.bin", 0x000001, 0x040000, CRC(b4b86d1b) SHA1(d9b625cfdabcabed9308fccc29c66adfe566a996) ) // 27c020
|
||||||
|
ROM_LOAD16_BYTE( "7.bin", 0x100000, 0x100000, CRC(803f279c) SHA1(1095ac434ce553ed56d106556e7d23ccac1f0cd4) ) // 27c8001, 1ST AND 2ND HALF IDENTICAL
|
||||||
|
ROM_LOAD16_BYTE( "8.bin", 0x100001, 0x100000, CRC(a310fa93) SHA1(2ee1616699c95ed2b8c46d43de4cffece1b033ea) ) // 27c8001, 1ST AND 2ND HALF IDENTICAL
|
||||||
|
|
||||||
|
ROM_REGION( 0x400000, "gfx1", 0 ) /* Sprites, on top board, almost identical to the original but split */
|
||||||
|
ROM_LOAD16_BYTE( "3.bin", 0x000000, 0x100000, CRC(9f36d867) SHA1(01a15dcdcb1077d7c8678762f58ad705dc29e8c9) ) // 27c8001
|
||||||
|
ROM_LOAD16_BYTE( "2.bin", 0x000001, 0x100000, CRC(70d333d9) SHA1(9ef3b0e0567ceed082921a5c384cfcfeb154f048) ) // 27c8001
|
||||||
|
ROM_LOAD16_BYTE( "1.bin", 0x200000, 0x100000, CRC(2792692c) SHA1(ed99c589ed15f8c1a4e2ab435a379b35105ba503) ) // 27c8001
|
||||||
|
ROM_LOAD16_BYTE( "4.bin", 0x200001, 0x080000, CRC(eb551f1a) SHA1(e9d2fc31c3076164c5ee9722ea1b1e60b4f6d663) ) // mx27c4000
|
||||||
|
ROM_LOAD16_BYTE( "5.bin", 0x300001, 0x080000, CRC(e9aa57e8) SHA1(699c0132f4be81570f748e5ca2f88fc4fc6802bb) ) // mx27c4000
|
||||||
|
|
||||||
|
ROM_REGION( 0x200000, "gfx2", 0 ) /* Layer 1, on lower board */
|
||||||
|
ROM_LOAD16_BYTE( "6.bin", 0x000000, 0x100000, CRC(8fbb5478) SHA1(247fd080f0ee18282c4d8b918171cfeab4b40d23) ) // 27c8001, 1ST AND 2ND HALF IDENTICAL, fa001006.u23 [even] IDENTICAL
|
||||||
|
ROM_LOAD16_BYTE( "5.bin", 0x000001, 0x100000, BAD_DUMP CRC(9e10c071) SHA1(2ec1cee04433b30c908548642e7c19862151c8a2) ) // 27c8001, 1ST AND 2ND HALF IDENTICAL, fa001006.u23 [odd] 77.495193% - bad, causes GFX glitches
|
||||||
|
// ROM_LOAD16_BYTE( "5_handcrafted.bin", 0x000001, 0x100000, CRC(c83ae34a) SHA1(d7bf49843c443c5b7cb9187404a3518eaed577a6) ) // this was de-interleaved from the original, left here to easily verify an eventual redump
|
||||||
|
|
||||||
|
ROM_REGION( 0x080000, "gfx3", 0 ) /* Layer 2, on lower board, identical to the original but split */
|
||||||
|
ROM_LOAD16_BYTE( "d-8.bin", 0x000000, 0x040000, CRC(a03c8345) SHA1(d3c3f0045ebb3d82d82432c212db4a801cb53b60) ) // 27c020
|
||||||
|
ROM_LOAD16_BYTE( "d-9.bin", 0x000001, 0x040000, CRC(cfd47024) SHA1(ab4fbaf258d2694407dd6c896f45d69821ccc408) ) // 27c020
|
||||||
|
|
||||||
|
ROM_REGION( 0x100000, "x1snd", 0 ) /* Samples, on lower board */
|
||||||
|
ROM_LOAD( "4.bin", 0x000000, 0x100000, CRC(b965f07c) SHA1(ff7827cc80655465ffbb732d55ba81f21f51a5ca) ) // 27c8001, identical to the original
|
||||||
|
ROM_END
|
||||||
|
|
||||||
ROM_START( oisipuzl )
|
ROM_START( oisipuzl )
|
||||||
ROM_REGION( 0x180000, "maincpu", 0 ) /* 68000 Code */
|
ROM_REGION( 0x180000, "maincpu", 0 ) /* 68000 Code */
|
||||||
ROM_LOAD16_WORD_SWAP( "ss1u200.v10", 0x000000, 0x080000, CRC(f5e53baf) SHA1(057e8b35bc6f65634685b5d0cf38e12f2e62d72c) )
|
ROM_LOAD16_WORD_SWAP( "ss1u200.v10", 0x000000, 0x080000, CRC(f5e53baf) SHA1(057e8b35bc6f65634685b5d0cf38e12f2e62d72c) )
|
||||||
@ -12143,7 +12201,8 @@ GAME( 1993, madshark, 0, madshark, madshark, seta_state, empty_ini
|
|||||||
|
|
||||||
// end credits shows Allumer as developer.
|
// end credits shows Allumer as developer.
|
||||||
GAME( 1993, msgundam, 0, msgundam, msgundam, seta_state, empty_init, ROT0, "Banpresto / Allumer", "Mobile Suit Gundam", 0 )
|
GAME( 1993, msgundam, 0, msgundam, msgundam, seta_state, empty_init, ROT0, "Banpresto / Allumer", "Mobile Suit Gundam", 0 )
|
||||||
GAME( 1993, msgundam1, msgundam, msgundam, msgunda1, seta_state, empty_init, ROT0, "Banpresto / Allumer", "Mobile Suit Gundam (Japan)", 0 )
|
GAME( 1993, msgundam1, msgundam, msgundam, msgundam1, seta_state, empty_init, ROT0, "Banpresto / Allumer", "Mobile Suit Gundam (Japan)", 0 )
|
||||||
|
GAME( 1993, msgundamb, msgundam, msgundamb, msgundam, seta_state, empty_init, ROT0, "bootleg", "Mobile Suit Gundam (bootleg)", MACHINE_IMPERFECT_GRAPHICS ) // GFX glitches due to bad dump
|
||||||
|
|
||||||
GAME( 1993, oisipuzl, 0, oisipuzl, oisipuzl, seta_state, empty_init, ROT0, "Sunsoft / Atlus", "Oishii Puzzle Ha Irimasenka", 0 )
|
GAME( 1993, oisipuzl, 0, oisipuzl, oisipuzl, seta_state, empty_init, ROT0, "Sunsoft / Atlus", "Oishii Puzzle Ha Irimasenka", 0 )
|
||||||
GAME( 1993, triplfun, oisipuzl, triplfun, oisipuzl, seta_state, empty_init, ROT0, "bootleg", "Triple Fun", 0 )
|
GAME( 1993, triplfun, oisipuzl, triplfun, oisipuzl, seta_state, empty_init, ROT0, "bootleg", "Triple Fun", 0 )
|
||||||
|
@ -80,6 +80,7 @@ public:
|
|||||||
void blandiap(machine_config &config);
|
void blandiap(machine_config &config);
|
||||||
void wits(machine_config &config);
|
void wits(machine_config &config);
|
||||||
void msgundam(machine_config &config);
|
void msgundam(machine_config &config);
|
||||||
|
void msgundamb(machine_config &config);
|
||||||
void extdwnhl(machine_config &config);
|
void extdwnhl(machine_config &config);
|
||||||
void pairlove(machine_config &config);
|
void pairlove(machine_config &config);
|
||||||
void zingzip(machine_config &config);
|
void zingzip(machine_config &config);
|
||||||
@ -297,6 +298,7 @@ protected:
|
|||||||
void magspeed_map(address_map &map);
|
void magspeed_map(address_map &map);
|
||||||
void metafox_sub_map(address_map &map);
|
void metafox_sub_map(address_map &map);
|
||||||
void msgundam_map(address_map &map);
|
void msgundam_map(address_map &map);
|
||||||
|
void msgundamb_map(address_map &map);
|
||||||
void oisipuzl_map(address_map &map);
|
void oisipuzl_map(address_map &map);
|
||||||
void orbs_map(address_map &map);
|
void orbs_map(address_map &map);
|
||||||
void pairlove_map(address_map &map);
|
void pairlove_map(address_map &map);
|
||||||
|
@ -34831,6 +34831,7 @@ magspeed // (c) 1994 Allumer
|
|||||||
metafox // UP (c) 1989 + Jordan, Romstar or Taito license (DSW)
|
metafox // UP (c) 1989 + Jordan, Romstar or Taito license (DSW)
|
||||||
msgundam // (c) 1993 Banpresto
|
msgundam // (c) 1993 Banpresto
|
||||||
msgundam1 // (c) 1993 Banpresto
|
msgundam1 // (c) 1993 Banpresto
|
||||||
|
msgundamb // bootleg
|
||||||
neobattl // (c) 1992 Banpresto / Sotsu Agency. Sunrise
|
neobattl // (c) 1992 Banpresto / Sotsu Agency. Sunrise
|
||||||
oisipuzl // (c) 1993 SunSoft / Atlus
|
oisipuzl // (c) 1993 SunSoft / Atlus
|
||||||
orbs // (c) 1994 American Sammy
|
orbs // (c) 1994 American Sammy
|
||||||
|
Loading…
Reference in New Issue
Block a user