summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author ajrhacker <ajrhacker@users.noreply.github.com>2019-11-04 17:01:30 -0500
committer GitHub <noreply@github.com>2019-11-04 17:01:30 -0500
commit0866132e8021f44834723dbb090d7b620abdafa9 (patch)
tree19d6414012634a8b8b09a6e4f478cba1e4a4edfa
parent2cf61b2e4c72a80eb688d1b6ffcacfdeaf55bf26 (diff)
parentca71777f60b6819475e41793c30438490e6d08ca (diff)
Merge pull request #5853 from algestam/gnw_mariotj
New working machine added
-rw-r--r--src/mame/drivers/hh_sm510.cpp70
-rw-r--r--src/mame/mame.lst1
2 files changed, 69 insertions, 2 deletions
diff --git a/src/mame/drivers/hh_sm510.cpp b/src/mame/drivers/hh_sm510.cpp
index f6d540434fa..b5e1250c2b8 100644
--- a/src/mame/drivers/hh_sm510.cpp
+++ b/src/mame/drivers/hh_sm510.cpp
@@ -29,7 +29,7 @@ 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_dkjrp, gnw_gcliff, gnw_mbaway, gnw_sbuster, gnw_zelda
+ gnw_dkjrp, gnw_gcliff, gnw_mariotj, gnw_mbaway, gnw_sbuster, gnw_zelda
****************************************************************************
@@ -97,7 +97,7 @@ TF-104 nws SM510 Tropical Fish
YM-105 nws SM511 Super Mario Bros.
DR-106 nws SM511 Climber
BF-107 nws SM511 Balloon Fight
-MJ-108* nws SM511? Mario The Juggler
+MJ-108 nws SM511 Mario The Juggler
BU-201 sc SM510 Spitball Sparky
UD-202* sc SM510? Crab Grab
BX-301 mvs SM511 Boxing (aka Punch Out)
@@ -3491,6 +3491,71 @@ ROM_END
/***************************************************************************
+ Nintendo Game & Watch: Mario The Juggler (model MB-108)
+ * PCB label MB-108
+ * Sharp SM511 label MB-108 9209B (no decap)
+ * lcd screen with custom segments, 1-bit sound
+
+***************************************************************************/
+
+class gnw_mariotj_state : public hh_sm510_state
+{
+public:
+ gnw_mariotj_state(const machine_config &mconfig, device_type type, const char *tag) :
+ hh_sm510_state(mconfig, type, tag)
+ { }
+
+ void gnw_mariotj(machine_config &config);
+};
+
+// config
+
+static INPUT_PORTS_START( gnw_mariotj )
+ PORT_START("IN.0") // S1
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_CHANGED_CB(input_changed) PORT_16WAY
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED )
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_CHANGED_CB(input_changed) PORT_16WAY
+
+ PORT_START("IN.1") // S2
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SELECT ) PORT_CHANGED_CB(input_changed) PORT_NAME("Time")
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_CHANGED_CB(input_changed) PORT_NAME("Game B")
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_START1 ) PORT_CHANGED_CB(input_changed) PORT_NAME("Game A")
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_SERVICE2 ) PORT_CHANGED_CB(input_changed) PORT_NAME("Alarm")
+
+ PORT_START("ACL")
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SERVICE1 ) PORT_CHANGED_CB(acl_button) PORT_NAME("ACL")
+
+ PORT_START("B")
+ PORT_CONFNAME( 0x01, 0x01, "Infinite Lives (Cheat)") // factory test, unpopulated on PCB
+ PORT_CONFSETTING( 0x01, DEF_STR( Off ) )
+ PORT_CONFSETTING( 0x00, DEF_STR( On ) )
+INPUT_PORTS_END
+
+void gnw_mariotj_state::gnw_mariotj(machine_config &config)
+{
+ sm511_common(config, 1630, 1080);
+}
+
+// roms
+
+ROM_START( gnw_mariotj )
+ ROM_REGION( 0x1000, "maincpu", 0 )
+ ROM_LOAD( "mb-108.program", 0x0000, 0x1000, CRC(f7118bb4) SHA1(c3117fd009e4686a149f85fb65786ddffc091eeb) )
+
+ ROM_REGION( 0x100, "maincpu:melody", 0 )
+ ROM_LOAD( "mb-108.melody", 0x000, 0x100, BAD_DUMP CRC(d8cc1f74) SHA1(4bbb470ef01777b0c1dbd7b84dc560da6d3b87e7) ) // decap needed for verification
+
+ ROM_REGION( 210391, "screen", 0)
+ ROM_LOAD( "gnw_mariotj.svg", 0, 210391, CRC(8f1e6118) SHA1(4ecad443142330470384659af1e8dd59bca519e4) )
+ROM_END
+
+
+
+
+
+/***************************************************************************
+
Nintendo Game & Watch: Spitball Sparky (model BU-201)
* PCB label BU-201
* Sharp SM510 label BU-201 542A (no decap)
@@ -8663,6 +8728,7 @@ CONS( 1986, gnw_climber, 0, 0, gnw_climber, gnw_climber, gnw_climber_st
CONS( 1988, gnw_climbern,gnw_climber,0, gnw_climbern,gnw_climber, gnw_climber_state, empty_init, "Nintendo", "Game & Watch: Climber (new wide screen)", MACHINE_SUPPORTS_SAVE )
CONS( 1986, gnw_bfight, 0, 0, gnw_bfight, gnw_bfight, gnw_bfight_state, empty_init, "Nintendo", "Game & Watch: Balloon Fight (crystal screen)", MACHINE_SUPPORTS_SAVE )
CONS( 1988, gnw_bfightn, gnw_bfight, 0, gnw_bfightn, gnw_bfight, gnw_bfight_state, empty_init, "Nintendo", "Game & Watch: Balloon Fight (new wide screen)", MACHINE_SUPPORTS_SAVE )
+CONS( 1991, gnw_mariotj, 0, 0, gnw_mariotj, gnw_mariotj, gnw_mariotj_state, empty_init, "Nintendo", "Game & Watch: Mario The Juggler", MACHINE_SUPPORTS_SAVE )
// 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 )
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 39f9febc708..d0c5476eda6 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -15493,6 +15493,7 @@ gnw_manhole // Nintendo
gnw_manholeg // Nintendo
gnw_mario // Nintendo
gnw_mariocm // Nintendo
+gnw_mariotj // Nintendo
gnw_mbaway // Nintendo
gnw_mmouse // Nintendo
gnw_mickdon // Nintendo