summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/hh_sm510.cpp
diff options
context:
space:
mode:
author algestam <henrik@algestam.se>2019-11-22 14:38:26 +0100
committer hap <happppp@users.noreply.github.com>2019-11-22 14:38:26 +0100
commit7e1a6c31f71c520d3a686cce3a714766652ce5ff (patch)
tree3b2b20a501107cbcc5442f783f3cf2a0b3ad22dd /src/mame/drivers/hh_sm510.cpp
parentaa2e0439f86c761bdb785a07e9f423c7f1bed6b8 (diff)
New working machine added (#5946)
* New working machine added ---------- Game & Watch: Mickey Mouse (panorama screen) [algestam, Mr Jiggles the Christmas Man] * hh_sm510: gnw_mmousep model name fix (nw)
Diffstat (limited to 'src/mame/drivers/hh_sm510.cpp')
-rw-r--r--src/mame/drivers/hh_sm510.cpp47
1 files changed, 37 insertions, 10 deletions
diff --git a/src/mame/drivers/hh_sm510.cpp b/src/mame/drivers/hh_sm510.cpp
index 1ca9310b6fd..2240c7b2698 100644
--- a/src/mame/drivers/hh_sm510.cpp
+++ b/src/mame/drivers/hh_sm510.cpp
@@ -29,8 +29,8 @@ TODO:
electronically. For the ones that weren't decapped, they were read by
playing back all melody data and reconstructing it to ROM. Visual(decap)
verification is wanted for: gnw_bfightn, gnw_bjack, gnw_bsweep, gnw_climbern,
- gnw_dkcirc, gnw_dkjrp, gnw_gcliff, gnw_mariotj, gnw_mbaway, gnw_sbuster,
- gnw_zelda
+ gnw_dkcirc, gnw_dkjrp, gnw_gcliff, gnw_mariotj, gnw_mbaway, gnw_mmousep,
+ gnw_sbuster, gnw_zelda
****************************************************************************
@@ -89,8 +89,8 @@ SM-91* p SM511? Snoopy (assume same ROM & LCD as tabletop version)
PG-92* p SM511? Popeye "
CJ-93 p SM511 Donkey Kong Jr. "
TB-94 p SM511 Mario's Bombs Away
-DC-95* p SM511? Mickey Mouse
-MK-96 p SM511 Donkey Kong Circus (same ROM as DC-95? LCD is different)
+DC-95 p SM511 Mickey Mouse
+MK-96 p SM511 Donkey Kong Circus (same ROM as DC-95, LCD is different)
DJ-101 nws SM510 Donkey Kong Jr.
ML-102 nws SM510 Mario's Cement Factory
NH-103 nws SM510 Manhole
@@ -2930,26 +2930,36 @@ ROM_END
/***************************************************************************
+ Nintendo Game & Watch: Mickey Mouse (model DC-95),
Nintendo Game & Watch: Donkey Kong Circus (model MK-96)
* PCB labels: DC-95M (main board), DC-95C (controller board)
- * Sharp SM511 label DC-95 541D (no decap)
+ * Sharp SM511
+ - label DC-95 284C (Mickey Mouse) (no decap)
+ - label DC-95 541D (Donkey Kong Circus) (no decap)
* inverted lcd screen with custom segments, 1-bit sound
+ This is the panorama version of Mickey Mouse. There's also a wide screen
+ version which is a different game.
+
+ DC-95 and MK-96 are the same game, it's assumed that the latter was for
+ regions where Nintendo wasn't able to license from Disney.
+
***************************************************************************/
-class gnw_dkcirc_state : public hh_sm510_state
+class gnw_mmousep_state : public hh_sm510_state
{
public:
- gnw_dkcirc_state(const machine_config &mconfig, device_type type, const char *tag) :
+ gnw_mmousep_state(const machine_config &mconfig, device_type type, const char *tag) :
hh_sm510_state(mconfig, type, tag)
{ }
+ void gnw_mmousep(machine_config &config);
void gnw_dkcirc(machine_config &config);
};
// config
-static INPUT_PORTS_START( gnw_dkcirc )
+static INPUT_PORTS_START( gnw_mmousep )
PORT_START("IN.0") // S1
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_CHANGED_CB(input_changed) PORT_16WAY
@@ -2976,13 +2986,29 @@ static INPUT_PORTS_START( gnw_dkcirc )
PORT_CONFSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
-void gnw_dkcirc_state::gnw_dkcirc(machine_config &config)
+void gnw_mmousep_state::gnw_mmousep(machine_config &config)
+{
+ sm511_common(config, 1920, 1122);
+}
+
+void gnw_mmousep_state::gnw_dkcirc(machine_config &config)
{
sm511_common(config, 1920, 1107);
}
// roms
+ROM_START( gnw_mmousep )
+ ROM_REGION( 0x1000, "maincpu", 0 )
+ ROM_LOAD( "dc-95.program", 0x0000, 0x1000, CRC(39dd864a) SHA1(25c67dac7320fe00990989cd42438461950a68ec) )
+
+ ROM_REGION( 0x100, "maincpu:melody", 0 )
+ ROM_LOAD( "dc-95.melody", 0x000, 0x100, BAD_DUMP CRC(6ccde8e3) SHA1(4e704a1d61126465b14e3889b4a0179c5568b90b) ) // decap needed for verification
+
+ ROM_REGION( 275609, "screen", 0)
+ ROM_LOAD( "gnw_mmousep.svg", 0, 275609, CRC(bac13689) SHA1(3ddcb4416bc5b8615b2854434ef78acac204a583) )
+ROM_END
+
ROM_START( gnw_dkcirc )
ROM_REGION( 0x1000, "maincpu", 0 )
ROM_LOAD( "mk-96.program", 0x0000, 0x1000, CRC(39dd864a) SHA1(25c67dac7320fe00990989cd42438461950a68ec) )
@@ -8804,7 +8830,8 @@ CONS( 1991, gnw_mariotj, 0, 0, gnw_mariotj, gnw_mariotj, gnw_mariotj_st
// Nintendo G&W: table top / panorama screen
CONS( 1983, gnw_dkjrp, 0, 0, gnw_dkjrp, gnw_dkjrp, gnw_dkjrp_state, empty_init, "Nintendo", "Game & Watch: Donkey Kong Jr. (panorama screen)", MACHINE_SUPPORTS_SAVE )
CONS( 1983, gnw_mbaway, 0, 0, gnw_mbaway, gnw_mbaway, gnw_mbaway_state, empty_init, "Nintendo", "Game & Watch: Mario's Bombs Away", MACHINE_SUPPORTS_SAVE )
-CONS( 1984, gnw_dkcirc, 0, 0, gnw_dkcirc, gnw_dkcirc, gnw_dkcirc_state, empty_init, "Nintendo", "Game & Watch: Donkey Kong Circus", MACHINE_SUPPORTS_SAVE )
+CONS( 1984, gnw_mmousep, 0, 0, gnw_mmousep, gnw_mmousep, gnw_mmousep_state, empty_init, "Nintendo", "Game & Watch: Mickey Mouse (panorama screen)", MACHINE_SUPPORTS_SAVE )
+CONS( 1984, gnw_dkcirc, gnw_mmousep,0, gnw_dkcirc, gnw_mmousep, gnw_mmousep_state, empty_init, "Nintendo", "Game & Watch: Donkey Kong Circus", MACHINE_SUPPORTS_SAVE )
// Nintendo G&W: super color
CONS( 1984, gnw_ssparky, 0, 0, gnw_ssparky, gnw_ssparky, gnw_ssparky_state, empty_init, "Nintendo", "Game & Watch: Spitball Sparky", MACHINE_SUPPORTS_SAVE )