summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author hap <happppp@users.noreply.github.com>2021-03-16 21:54:29 +0100
committer hap <happppp@users.noreply.github.com>2021-03-16 21:55:04 +0100
commit6dc9c022ea017932131f539aaaed83ead9150245 (patch)
treebf363adfd4907f12c6d13c52d09548def8a92461
parent6ea142efb8e3ab1bc854dc45e66010a9ba8e774b (diff)
New working machines
-------------------- Dunk 'n Sunk [hap, Sean Riddle]
-rw-r--r--src/mame/drivers/hh_amis2k.cpp10
-rw-r--r--src/mame/drivers/hh_cop400.cpp26
-rw-r--r--src/mame/drivers/hh_cops1.cpp9
-rw-r--r--src/mame/drivers/hh_hmcs40.cpp67
-rw-r--r--src/mame/drivers/hh_melps4.cpp5
-rw-r--r--src/mame/drivers/hh_pic16.cpp288
-rw-r--r--src/mame/drivers/hh_pps41.cpp138
-rw-r--r--src/mame/drivers/hh_sm510.cpp14
-rw-r--r--src/mame/drivers/hh_tms1k.cpp148
-rw-r--r--src/mame/drivers/hh_ucom4.cpp76
-rw-r--r--src/mame/layout/drdunk.lay (renamed from src/mame/layout/tbaskb.lay)25
-rw-r--r--src/mame/layout/dunksunk.lay128
-rw-r--r--src/mame/layout/hccbaskb.lay27
-rw-r--r--src/mame/mame.lst3
14 files changed, 652 insertions, 312 deletions
diff --git a/src/mame/drivers/hh_amis2k.cpp b/src/mame/drivers/hh_amis2k.cpp
index 5f5ec64bf5e..a3886c0a330 100644
--- a/src/mame/drivers/hh_amis2k.cpp
+++ b/src/mame/drivers/hh_amis2k.cpp
@@ -3,12 +3,12 @@
// thanks-to:Sean Riddle
/***************************************************************************
- AMI S2000 series handhelds or other simple devices.
+AMI S2000 series handhelds or other simple devices.
- TODO:
- - were any other handhelds with this MCU released?
- - wildfire sound can be improved, volume decay should be more steep at the start,
- and the pitch sounds wrong too (latter is an MCU emulation problem)
+TODO:
+- were any other handhelds with this MCU released?
+- wildfire sound can be improved, volume decay should be more steep at the start,
+ and the pitch sounds wrong too (latter is an MCU emulation problem)
***************************************************************************/
diff --git a/src/mame/drivers/hh_cop400.cpp b/src/mame/drivers/hh_cop400.cpp
index 1c69e036bd7..d98ac882fbc 100644
--- a/src/mame/drivers/hh_cop400.cpp
+++ b/src/mame/drivers/hh_cop400.cpp
@@ -3,25 +3,27 @@
// thanks-to:Sean Riddle
/***************************************************************************
- National Semiconductor COPS(COP400 MCU series) handhelds or other simple
- devices, mostly LED electronic games/toys.
+National Semiconductor COPS(COP400 MCU series) handhelds or other simple
+devices, mostly LED electronic games/toys.
- TODO:
- - why does h2hbaskbc(and clones) need a workaround on writing L pins?
- - plus1: which sensor position is which colour?
- - vidchal: Add screen and gun cursor with brightness detection callback,
- and softwarelist for the video tapes. We'd also need a VHS player device.
- The emulated lightgun itself appears to be working fine(eg. add a 30hz
- timer to IN.3 to score +100)
+TODO:
+- why does h2hbaskbc(and clones) need a workaround on writing L pins?
+- plus1: which sensor position is which colour?
+- vidchal: Add screen and gun cursor with brightness detection callback,
+ and softwarelist for the video tapes. We'd also need a VHS player device.
+ The emulated lightgun itself appears to be working fine(eg. add a 30hz
+ timer to IN.3 to score +100)
***************************************************************************/
#include "emu.h"
+
#include "cpu/cop400/cop400.h"
#include "video/pwm.h"
#include "machine/timer.h"
#include "sound/spkrdev.h"
#include "sound/dac.h"
+
#include "screen.h"
#include "speaker.h"
@@ -657,7 +659,7 @@ ROM_END
This toy includes 4 games: Tic Tac Toe, Chicken Sez, and Total Recall I/II.
known releases:
- - USA: I Took a Lickin' From a Chicken
+ - USA: I Took a Lickin' From a Chicken, published by LJN
- Japan: Professor Chicken's Genius Classroom 「にわとり博士の天才教室」, published by Bandai
(not sure if it's the same ROM, or just licensed the outer shell)
@@ -941,8 +943,8 @@ ROM_END
* 14 LEDs, 1-bit sound
known releases:
- - USA: Funtronics: Red Light Green Light
- - USA(rerelease): Funtronics: Hot Wheels Drag Race
+ - USA: Funtronics: Red Light Green Light, published by Mattel
+ - USA(rerelease): Funtronics: Hot Wheels Drag Race, published by Mattel
***************************************************************************/
diff --git a/src/mame/drivers/hh_cops1.cpp b/src/mame/drivers/hh_cops1.cpp
index 22e13770bc5..1d11b928655 100644
--- a/src/mame/drivers/hh_cops1.cpp
+++ b/src/mame/drivers/hh_cops1.cpp
@@ -3,12 +3,12 @@
// thanks-to:Sean Riddle
/***************************************************************************
- National Semiconductor COPS(MM57 MCU series) handhelds
+National Semiconductor COPS(MM57 MCU series) handhelds
- MCU die label for MM5799 games says MM4799, but they are in fact MM5799.
+MCU die label for MM5799 games says MM4799, but they are in fact MM5799.
- TODO:
- - qkracerm link cable
+TODO:
+- qkracerm link cable
***************************************************************************/
@@ -18,6 +18,7 @@
#include "machine/ds8874.h"
#include "video/pwm.h"
#include "sound/spkrdev.h"
+
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/hh_hmcs40.cpp b/src/mame/drivers/hh_hmcs40.cpp
index 2a6068add74..432e5fe53b6 100644
--- a/src/mame/drivers/hh_hmcs40.cpp
+++ b/src/mame/drivers/hh_hmcs40.cpp
@@ -3,10 +3,10 @@
// thanks-to:Kevin Horton
/***************************************************************************
- Hitachi HMCS40 MCU tabletops/handhelds or other simple devices,
- most of them are VFD electronic games/toys.
+Hitachi HMCS40 MCU tabletops/handhelds or other simple devices,
+most of them are VFD electronic games/toys.
- known chips:
+known chips:
serial device etc.
----------------------------------------------------------------
@@ -90,32 +90,39 @@
(* means undumped unless noted, @ denotes it's in this driver)
-
- TODO:
- - cgalaxn discrete sound (alien attacking sound effect)
- - gckong glitchy jump on 1st level (rarely happens), caused by MCU stack overflow.
- It can be tested by jumping up repeatedly at the start position under the ladder,
- if the glitch happens there, you can jump onto the 2nd floor.
- - epacman2 booting the game in demo mode, pacman should take the shortest route to
- the upper-left power pill: mcu cycle/interrupt timing related
- - kevtris's HMCS40 ROM dumps are incomplete, missing MCU factory test code from
- the 2nd half of the ROM, none of the games access it though and it's impossible
- to execute unless the chip is in testmode.
- - Though very uncommon when compared to games with LED/lamp display, some
- games may manipulate VFD plate brightness by strobing it longer/shorter,
- eg. cgalaxn when a ship explodes.
- - bzaxxon 3D effect is difficult to simulate
- - improve/redo SVGs of: bzaxxon, bpengo, bbtime
+ROM source notes when dumped from another publisher, but confident it's the same game:
+- gckong: CGL Super Kong
+- ghalien: CGL Earth Invaders
+- kingman: Tandy Kingman
+- zackman: Tandy Zackman
+
+TODO:
+- cgalaxn discrete sound (alien attacking sound effect)
+- gckong glitchy jump on 1st level (rarely happens), caused by MCU stack overflow.
+ It can be tested by jumping up repeatedly at the start position under the ladder,
+ if the glitch happens there, you can jump onto the 2nd floor.
+- epacman2 booting the game in demo mode, pacman should take the shortest route to
+ the upper-left power pill: mcu cycle/interrupt timing related
+- kevtris's HMCS40 ROM dumps are incomplete, missing MCU factory test code from
+ the 2nd half of the ROM, none of the games access it though and it's impossible
+ to execute unless the chip is in testmode.
+- Though very uncommon when compared to games with LED/lamp display, some
+ games may manipulate VFD plate brightness by strobing it longer/shorter,
+ eg. cgalaxn when a ship explodes.
+- bzaxxon 3D effect is difficult to simulate
+- improve/redo SVGs of: bzaxxon, bpengo, bbtime
***************************************************************************/
#include "emu.h"
+
#include "cpu/hmcs40/hmcs40.h"
#include "cpu/cop400/cop400.h"
#include "video/pwm.h"
#include "machine/gen_latch.h"
#include "machine/timer.h"
#include "sound/spkrdev.h"
+
#include "screen.h"
#include "speaker.h"
@@ -662,8 +669,8 @@ ROM_END
* cyan/red/green VFD display Futaba DM-21ZK 2B, with bezel overlay
known releases:
- - Japan: FL Packri Monster
- - USA(World?): Packri Monster
+ - Japan: FL Packri Monster, published by Bandai
+ - USA(World?): Packri Monster, published by Bandai
- USA/Canada: Hungry Monster, published by Tandy
- other: Gobble Man/Ogre Monster, published by Tandy
@@ -909,6 +916,10 @@ ROM_END
* Hitachi QFP HD38820A49 MCU
* cyan/red/yellow VFD display Futaba DM-53Z 3E, with color overlay
+ known releases:
+ - World: Zackman, published by Bandai
+ - USA: Zackman, published by Tandy
+
***************************************************************************/
class zackman_state : public hh_hmcs40_state
@@ -2464,8 +2475,8 @@ ROM_END
* cyan/red/green VFD display Futaba DM-20
known releases:
- - USA: Galaxian 2
- - UK: Astro Invader (Hales/Entex)
+ - USA: Galaxian 2, published by Entex
+ - UK: Astro Invader, published by Hales/Entex
***************************************************************************/
@@ -3138,7 +3149,7 @@ ROM_END
* cyan/red VFD display Futaba DM-11Z 1H
known releases:
- - Japan: Heiankyo Alien
+ - Japan: Heiankyo Alien, published by Gakken
- USA: Earth Invaders, published by CGL
***************************************************************************/
@@ -3265,7 +3276,7 @@ ROM_END
* cyan/red/blue VFD display Futaba DM-54Z 2H, with bezel overlay
known releases:
- - Japan: Crazy Kong
+ - Japan: Crazy Kong, published by Gakken
- USA: Super Kong, published by CGL
***************************************************************************/
@@ -4059,6 +4070,10 @@ ROM_END
* Hitachi HD38800B23 MCU
* cyan/red/blue VFD display Futaba DM-65ZK 3A
+ known releases:
+ - World: Kingman, published by Tomy
+ - USA: Kingman, published by Tandy
+
***************************************************************************/
class kingman_state : public hh_hmcs40_state
@@ -4185,7 +4200,7 @@ ROM_END
* cyan/red VFD display Futaba DM-26Z 1G, with bezel
known releases:
- - USA: Invaders/Sonic Invader
+ - USA: Invaders/Sonic Invader, published by VTech
- UK: Cosmic Invader, published by Grandstand
- UK: Galactic Invaders, published by Prinztronic
diff --git a/src/mame/drivers/hh_melps4.cpp b/src/mame/drivers/hh_melps4.cpp
index c9ef6ceca32..c0b522c620e 100644
--- a/src/mame/drivers/hh_melps4.cpp
+++ b/src/mame/drivers/hh_melps4.cpp
@@ -3,12 +3,13 @@
// thanks-to:Kevin Horton
/***************************************************************************
- Mitsubishi MELPS 4 MCU tabletops/handhelds or other simple devices,
- most of them are VFD electronic games/toys.
+Mitsubishi MELPS 4 MCU tabletops/handhelds or other simple devices,
+most of them are VFD electronic games/toys.
***************************************************************************/
#include "emu.h"
+
#include "cpu/melps4/m58846.h"
#include "video/pwm.h"
#include "sound/spkrdev.h"
diff --git a/src/mame/drivers/hh_pic16.cpp b/src/mame/drivers/hh_pic16.cpp
index c5ee7247cf9..c15623a3a55 100644
--- a/src/mame/drivers/hh_pic16.cpp
+++ b/src/mame/drivers/hh_pic16.cpp
@@ -3,9 +3,9 @@
// thanks-to:Sean Riddle, Kevin Horton
/***************************************************************************
- GI PIC 16xx-driven dedicated handhelds or other simple devices.
+GI PIC 16xx-driven dedicated handhelds or other simple devices.
- known chips:
+known chips:
serial device etc.
-----------------------------------------------------------
@@ -16,7 +16,7 @@
@036 1655A 1979, Ideal Maniac
@043 1655A 1979, Caprice Pro-Action Baseball
@049 1655A 1980, Kingsford Match Me(?)/Mini Match Me
- @051 1655A 1979, Tandy Electronic Basketball
+ @051 1655A 1979, Kmart Dr. Dunk/Tandy Electronic Basketball
@053 1655A 1979, Atari Touch Me
@0?? 1655A 1979, Tiger Half Court Computer Basketball/Sears Electronic Basketball (custom label)
@061 1655A 1980, Lakeside Le Boom
@@ -38,25 +38,35 @@
(* means undumped unless noted, @ denotes it's in this driver)
-
- TODO:
- - tweak MCU frequency for games when video/audio recording surfaces(YouTube etc.)
- - us2pfball player led is brighter, but I can't get a stable picture
- - ttfball: discrete sound part, for volume gating?
- - what's the relation between hccbaskb and tbaskb? Is one the bootleg of the
- other? Or are they both made by the same subcontractor? I presume Toytronic.
- - uspbball and pabball internal artwork
+ROM source notes when dumped from another publisher, but confident it's the same game:
+- drdunk: Tandy Electronic Basketball
+- flash: Radio Shack Sound Effects Chassis
+- hccbaskb: Sears Electronic Basketball
+- us2pfball: Tandy 2-Player Football
+- uspbball: Tandy 2-Player Baseball
+
+TODO:
+- tweak MCU frequency for games when video/audio recording surfaces(YouTube etc.)
+- us2pfball player led is brighter, but I can't get a stable picture
+- ttfball: discrete sound part, for volume gating?
+- what's the relation between drdunk and hccbaskb? Probably made by the same
+ Hong Kong subcontractor? I presume Toytronic.
+- uspbball and pabball internal artwork
***************************************************************************/
#include "emu.h"
+
#include "cpu/pic16c5x/pic16c5x.h"
#include "video/pwm.h"
#include "machine/clock.h"
#include "machine/timer.h"
#include "sound/spkrdev.h"
+
#include "speaker.h"
+// internal artwork
+#include "drdunk.lh"
#include "flash.lh" // clickable
#include "hccbaskb.lh"
#include "leboom.lh" // clickable
@@ -64,7 +74,6 @@
#include "melodym.lh" // clickable
#include "matchme.lh" // clickable
#include "rockpin.lh"
-#include "tbaskb.lh"
#include "touchme.lh" // clickable
#include "ttfball.lh"
#include "us2pfball.lh"
@@ -804,10 +813,11 @@ ROM_END
* 8 lamps, 1-bit sound
Known releases:
- - USA(1): Match Me/Mini Match Me(latter is the handheld version, same game)
+ - USA(1): Match Me/Mini Match Me, published by Kingsford
- USA(2): Me Too, published by Talbot
- Hong Kong: Gotcha!/Encore/Follow Me, published by Toytronic
+ Match Me is the tabletop version, Mini Match Me is the handheld.
The original is probably by Toytronic, Kingsford's version being licensed from them.
Known revisions:
@@ -953,6 +963,128 @@ ROM_END
/***************************************************************************
+ Kmart Dr. Dunk (manufactured in Hong Kong)
+ * PIC 1655A-51
+ * 2 7seg LEDs + 21 other LEDs, 1-bit sound
+
+ It is a clone of Mattel Basketball, but at lower speed.
+ The ROM is nearly identical to hccbaskb, the housing/overlay is similar to
+ U.S. Games/Tandy Trick Shot Basketball.
+
+ known releases:
+ - USA(1): Dr. Dunk, published by Kmart
+ - USA(2): Electronic Basketball (model 60-2146), published by Tandy
+
+***************************************************************************/
+
+class drdunk_state : public hh_pic16_state
+{
+public:
+ drdunk_state(const machine_config &mconfig, device_type type, const char *tag) :
+ hh_pic16_state(mconfig, type, tag)
+ { }
+
+ void update_display();
+ u8 read_a();
+ void write_b(u8 data);
+ void write_c(u8 data);
+ void drdunk(machine_config &config);
+};
+
+// handlers
+
+void drdunk_state::update_display()
+{
+ m_display->matrix(m_b, m_c);
+}
+
+u8 drdunk_state::read_a()
+{
+ // A2: skill switch, A3: multiplexed inputs
+ return m_inputs[5]->read() | read_inputs(5, 8) | 3;
+}
+
+void drdunk_state::write_b(u8 data)
+{
+ // B0: RTCC pin
+ m_maincpu->set_input_line(PIC16C5x_RTCC, data & 1);
+
+ // B0-B4: input mux
+ m_inp_mux = ~data & 0x1f;
+
+ // B0-B3: led select
+ // B4,B5: digit select
+ m_b = data;
+ update_display();
+}
+
+void drdunk_state::write_c(u8 data)
+{
+ // C7: speaker out
+ m_speaker->level_w(data >> 7 & 1);
+
+ // C0-C6: led data
+ m_c = ~data;
+ update_display();
+}
+
+// config
+
+static INPUT_PORTS_START( drdunk )
+ PORT_START("IN.0") // B0 port A3
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_16WAY
+
+ PORT_START("IN.1") // B1 port A3
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_16WAY
+
+ PORT_START("IN.2") // B2 port A3
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_16WAY
+
+ PORT_START("IN.3") // B3 port A3
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_16WAY
+
+ PORT_START("IN.4") // B4 port A3
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 )
+
+ PORT_START("IN.5") // port A2
+ PORT_CONFNAME( 0x04, 0x04, DEF_STR( Difficulty ) )
+ PORT_CONFSETTING( 0x04, "1" )
+ PORT_CONFSETTING( 0x00, "2" )
+INPUT_PORTS_END
+
+void drdunk_state::drdunk(machine_config &config)
+{
+ /* basic machine hardware */
+ PIC1655(config, m_maincpu, 800000); // approximation - RC osc. R=18K, C=47pF
+ m_maincpu->read_a().set(FUNC(drdunk_state::read_a));
+ m_maincpu->write_b().set(FUNC(drdunk_state::write_b));
+ m_maincpu->read_c().set_constant(0xff);
+ m_maincpu->write_c().set(FUNC(drdunk_state::write_c));
+
+ /* video hardware */
+ PWM_DISPLAY(config, m_display).set_size(6, 7);
+ m_display->set_segmask(0x30, 0x7f);
+ m_display->set_bri_levels(0.01, 0.2); // player led is brighter
+ config.set_default_layout(layout_drdunk);
+
+ /* sound hardware */
+ SPEAKER(config, "mono").front_center();
+ SPEAKER_SOUND(config, m_speaker).add_route(ALL_OUTPUTS, "mono", 0.25);
+}
+
+// roms
+
+ROM_START( drdunk )
+ ROM_REGION( 0x0400, "maincpu", 0 )
+ ROM_LOAD( "pic_1655a-051", 0x0000, 0x0400, CRC(92534b40) SHA1(7055e32846c913e68f7d35f279cd537f6325f4f2) )
+ROM_END
+
+
+
+
+
+/***************************************************************************
+
Lakeside Le Boom
* PIC 1655A-061
* 1 led, 1-bit sound with RC circuit for volume decay
@@ -1117,130 +1249,12 @@ ROM_END
/***************************************************************************
- Tandy Electronic Basketball (model 60-2146)
- * PIC 1655A-51
- * 2 7seg LEDs + 21 other LEDs, 1-bit sound
-
- It is a clone of Mattel Basketball, but at lower speed.
- The ROM is nearly identical to hccbaskb, the housing/overlay is the same as
- U.S. Games/Tandy Trick Shot Basketball.
-
-***************************************************************************/
-
-class tbaskb_state : public hh_pic16_state
-{
-public:
- tbaskb_state(const machine_config &mconfig, device_type type, const char *tag) :
- hh_pic16_state(mconfig, type, tag)
- { }
-
- void update_display();
- u8 read_a();
- void write_b(u8 data);
- void write_c(u8 data);
- void tbaskb(machine_config &config);
-};
-
-// handlers
-
-void tbaskb_state::update_display()
-{
- m_display->matrix(m_b, m_c);
-}
-
-u8 tbaskb_state::read_a()
-{
- // A2: skill switch, A3: multiplexed inputs
- return m_inputs[5]->read() | read_inputs(5, 8) | 3;
-}
-
-void tbaskb_state::write_b(u8 data)
-{
- // B0: RTCC pin
- m_maincpu->set_input_line(PIC16C5x_RTCC, data & 1);
-
- // B0-B4: input mux
- m_inp_mux = ~data & 0x1f;
-
- // B0-B3: led select
- // B4,B5: digit select
- m_b = data;
- update_display();
-}
-
-void tbaskb_state::write_c(u8 data)
-{
- // C7: speaker out
- m_speaker->level_w(data >> 7 & 1);
-
- // C0-C6: led data
- m_c = ~data;
- update_display();
-}
-
-// config
-
-static INPUT_PORTS_START( tbaskb )
- PORT_START("IN.0") // B0 port A3
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_16WAY
-
- PORT_START("IN.1") // B1 port A3
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_16WAY
-
- PORT_START("IN.2") // B2 port A3
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_16WAY
-
- PORT_START("IN.3") // B3 port A3
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_16WAY
-
- PORT_START("IN.4") // B4 port A3
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 )
-
- PORT_START("IN.5") // port A2
- PORT_CONFNAME( 0x04, 0x04, DEF_STR( Difficulty ) )
- PORT_CONFSETTING( 0x04, "1" )
- PORT_CONFSETTING( 0x00, "2" )
-INPUT_PORTS_END
-
-void tbaskb_state::tbaskb(machine_config &config)
-{
- /* basic machine hardware */
- PIC1655(config, m_maincpu, 800000); // approximation - RC osc. R=18K, C=47pF
- m_maincpu->read_a().set(FUNC(tbaskb_state::read_a));
- m_maincpu->write_b().set(FUNC(tbaskb_state::write_b));
- m_maincpu->read_c().set_constant(0xff);
- m_maincpu->write_c().set(FUNC(tbaskb_state::write_c));
-
- /* video hardware */
- PWM_DISPLAY(config, m_display).set_size(6, 7);
- m_display->set_segmask(0x30, 0x7f);
- m_display->set_bri_levels(0.01, 0.2); // player led is brighter
- config.set_default_layout(layout_tbaskb);
-
- /* sound hardware */
- SPEAKER(config, "mono").front_center();
- SPEAKER_SOUND(config, m_speaker).add_route(ALL_OUTPUTS, "mono", 0.25);
-}
-
-// roms
-
-ROM_START( tbaskb )
- ROM_REGION( 0x0400, "maincpu", 0 )
- ROM_LOAD( "pic_1655a-051", 0x0000, 0x0400, CRC(92534b40) SHA1(7055e32846c913e68f7d35f279cd537f6325f4f2) )
-ROM_END
-
-
-
-
-
-/***************************************************************************
-
Tiger Electronics Rocket Pinball (model 7-460)
* PIC 1650A-110, 69-11397
* 3 7seg LEDs + 44 other LEDs, 1-bit sound
known releases:
- - Hong Kong(1): Rocket Pinball
+ - Hong Kong(1): Rocket Pinball, published by Tiger
- Hong Kong(2): Spaceship Pinball, published by Toytronic
- USA(1): Rocket Pinball (model 60-2140), published by Tandy
- USA(2): Cosmic Pinball (model 49-65456), published by Sears
@@ -1361,7 +1375,7 @@ ROM_END
* 2 7seg LEDs + 26 other LEDs, 1-bit sound
known releases:
- - Hong Kong: Half Court Computer Basketball
+ - Hong Kong: Half Court Computer Basketball, published by Tiger
- USA: Electronic Basketball (model 49-65453), published by Sears
***************************************************************************/
@@ -1646,7 +1660,7 @@ ROM_END
* 3 7seg LEDs + 36 other LEDs, 1-bit sound
known releases:
- - USA(1): Programmable Baseball
+ - USA(1): Programmable Baseball, published by U.S. Games
- USA(2): Electronic 2-Player Baseball (model 60-2157), published by Tandy
***************************************************************************/
@@ -1764,7 +1778,7 @@ ROM_END
* 8 7seg LEDs + 2 other LEDs, 1-bit sound
known releases:
- - USA(1): Electronic 2-Player Football
+ - USA(1): Electronic 2-Player Football, published by U.S. Games
- USA(2): Electronic 2-Player Football (model 60-2156), published by Tandy
***************************************************************************/
@@ -1917,9 +1931,9 @@ CONS( 1980, flash, 0, 0, flash, flash, flash_state, empty_
CONS( 1980, matchme, 0, 0, matchme, matchme, matchme_state, empty_init, "Kingsford", "Match Me", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1980, leboom, 0, 0, leboom, leboom, leboom_state, empty_init, "Lakeside", "Le Boom", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1979, drdunk, 0, 0, drdunk, drdunk, drdunk_state, empty_init, "Kmart", "Dr. Dunk", MACHINE_SUPPORTS_SAVE )
-CONS( 1979, tbaskb, 0, 0, tbaskb, tbaskb, tbaskb_state, empty_init, "Tandy Corporation", "Electronic Basketball (Tandy)", MACHINE_SUPPORTS_SAVE )
+CONS( 1980, leboom, 0, 0, leboom, leboom, leboom_state, empty_init, "Lakeside", "Le Boom", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1979, rockpin, 0, 0, rockpin, rockpin, rockpin_state, empty_init, "Tiger Electronics", "Rocket Pinball", MACHINE_SUPPORTS_SAVE )
CONS( 1979, hccbaskb, 0, 0, hccbaskb, hccbaskb, hccbaskb_state, empty_init, "Tiger Electronics", "Half Court Computer Basketball", MACHINE_SUPPORTS_SAVE )
diff --git a/src/mame/drivers/hh_pps41.cpp b/src/mame/drivers/hh_pps41.cpp
index 34d425796aa..0134f12a861 100644
--- a/src/mame/drivers/hh_pps41.cpp
+++ b/src/mame/drivers/hh_pps41.cpp
@@ -3,7 +3,10 @@
// thanks-to:Sean Riddle, Kevin Horton
/***************************************************************************
- Rockwell PPS-4/1 MCU series handhelds
+Rockwell PPS-4/1 MCU series handhelds
+
+ROM source notes when dumped from another publisher, but confident it's the same game:
+- memoquiz: Mattel Mind Boggler
***************************************************************************/
@@ -20,6 +23,7 @@
#include "speaker.h"
// internal artwork
+#include "dunksunk.lh"
#include "ftri1.lh"
#include "mastmind.lh"
#include "memoquiz.lh"
@@ -370,6 +374,130 @@ ROM_END
/***************************************************************************
+ Kmart Dunk 'n Sunk (manufactured in Hong Kong)
+ * MM76EL MCU (label GE-E 1V2280, die label B8617)
+ * 4 7seg leds, 31 other leds, 1-bit sound
+
+ It's by the same Hong Kong company that did Kmart Dr. Dunk/Tandy Electronic
+ Basketball (PIC16 MCU), Grandstand Pocket Match of the Day (MOS MPS765x MCU)
+ among others.
+
+ known releases:
+ - USA(1): Dunk 'n Sunk, published by Kmart
+ - USA(2): Electronic Basketball / Submarine Warfare, published by U.S. Games
+
+***************************************************************************/
+
+class dunksunk_state : public hh_pps41_state
+{
+public:
+ dunksunk_state(const machine_config &mconfig, device_type type, const char *tag) :
+ hh_pps41_state(mconfig, type, tag)
+ { }
+
+ DECLARE_INPUT_CHANGED_MEMBER(difficulty_switch) { update_int(); }
+ DECLARE_INPUT_CHANGED_MEMBER(game_switch) { update_int(); }
+ virtual void update_int() override;
+
+ void update_display();
+ void write_d(u16 data);
+ void write_r(u8 data);
+ void dunksunk(machine_config &config);
+};
+
+// handlers
+
+void dunksunk_state::update_int()
+{
+ // 2 of the switches are tied to MCU interrupt pins
+ m_maincpu->set_input_line(0, (m_inputs[1]->read() & 1) ? ASSERT_LINE : CLEAR_LINE);
+ m_maincpu->set_input_line(1, (m_inputs[2]->read() & 1) ? ASSERT_LINE : CLEAR_LINE);
+}
+
+void dunksunk_state::update_display()
+{
+ m_display->matrix(m_d >> 1, ~m_r);
+}
+
+void dunksunk_state::write_d(u16 data)
+{
+ // DIO0: speaker out
+ m_speaker->level_w(data & 1);
+
+ // DIO1-DIO5: led select
+ // DIO6-DIO9: digit select
+ m_d = data;
+ update_display();
+}
+
+void dunksunk_state::write_r(u8 data)
+{
+ // RIO1-RIO7: led data
+ m_r = data;
+ update_display();
+}
+
+// config
+
+static INPUT_PORTS_START( dunksunk )
+ PORT_START("IN.0") // P
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_CUSTOM ) PORT_CONDITION("IN.1", 0x03, EQUALS, 0x01)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT )
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )
+
+ PORT_START("IN.1")
+ PORT_CONFNAME( 0x03, 0x00, DEF_STR( Difficulty ) ) PORT_CHANGED_MEMBER(DEVICE_SELF, dunksunk_state, difficulty_switch, 0)
+ PORT_CONFSETTING( 0x00, "1" ) // INT0
+ PORT_CONFSETTING( 0x01, "2" ) // PI4
+ PORT_CONFSETTING( 0x03, "3" )
+
+ PORT_START("IN.2") // INT1
+ PORT_CONFNAME( 0x01, 0x01, "Game Select" ) PORT_CHANGED_MEMBER(DEVICE_SELF, dunksunk_state, game_switch, 0)
+ PORT_CONFSETTING( 0x01, "Basketball" )
+ PORT_CONFSETTING( 0x00, "Submarine Chase" )
+INPUT_PORTS_END
+
+void dunksunk_state::dunksunk(machine_config &config)
+{
+ /* basic machine hardware */
+ MM76EL(config, m_maincpu, 390000); // approximation - VC osc. R=56K
+ m_maincpu->write_d().set(FUNC(dunksunk_state::write_d));
+ m_maincpu->write_r().set(FUNC(dunksunk_state::write_r));
+ m_maincpu->read_p().set_ioport("IN.0");
+
+ /* video hardware */
+ PWM_DISPLAY(config, m_display).set_size(9, 7);
+ m_display->set_segmask(0x1e0, 0x7f);
+ m_display->set_bri_levels(0.015, 0.2); // player led is brighter
+ config.set_default_layout(layout_dunksunk);
+
+ /* sound hardware */
+ SPEAKER(config, "mono").front_center();
+ SPEAKER_SOUND(config, m_speaker);
+ m_speaker->add_route(ALL_OUTPUTS, "mono", 0.25);
+}
+
+// roms
+
+ROM_START( dunksunk )
+ ROM_REGION( 0x0400, "maincpu", 0 )
+ ROM_LOAD( "ge-e_1v2280", 0x0000, 0x0400, CRC(90f17191) SHA1(80c3708af99c9db7afe17254fa4df2080aa9f145) )
+
+ ROM_REGION( 314, "maincpu:opla", 0 )
+ ROM_LOAD( "mm76_dunksunk_output.pla", 0, 314, CRC(410fa6d7) SHA1(d46aaf1ec2c942083cba7dbd59d4261dc238d4c8) )
+ROM_END
+
+
+
+
+
+/***************************************************************************
+
M.E.M. Belgium Memoquiz
* PCB label: MEMOQUIZ MO3
* MM75 MCU (label M7505 A7505-12, die label A7505)
@@ -380,7 +508,7 @@ ROM_END
confirming with the "=" button. CD reveals the answer, PE is for player entry.
known releases:
- - Europe: Memoquiz
+ - Europe: Memoquiz, published by M.E.M. Belgium
- UK: Memoquiz, published by Polymark
- USA: Mind Boggler (model 2626), published by Mattel
@@ -1004,9 +1132,11 @@ CONS( 1979, ftri1, 0, 0, ftri1, ftri1, ftri1_state, empty_in
CONS( 1979, mastmind, 0, 0, mastmind, mastmind, mastmind_state, empty_init, "Invicta", "Electronic Master Mind (Invicta)", MACHINE_SUPPORTS_SAVE | MACHINE_NO_SOUND_HW )
CONS( 1979, smastmind, 0, 0, smastmind, mastmind, mastmind_state, empty_init, "Invicta", "Super-Sonic Electronic Master Mind", MACHINE_SUPPORTS_SAVE )
+CONS( 1980, dunksunk, 0, 0, dunksunk, dunksunk, dunksunk_state, empty_init, "Kmart", "Dunk 'n Sunk", MACHINE_SUPPORTS_SAVE )
+
CONS( 1978, memoquiz, 0, 0, memoquiz, memoquiz, memoquiz_state, empty_init, "M.E.M. Belgium", "Memoquiz", MACHINE_SUPPORTS_SAVE | MACHINE_NO_SOUND_HW )
-CONS( 1980, mwcfootb, 0, 0, mwcfootb, mwcfootb, mwcfootb_state, empty_init, "Mattel", "World Championship Football", MACHINE_SUPPORTS_SAVE )
+CONS( 1981, mwcfootb, 0, 0, mwcfootb, mwcfootb, mwcfootb_state, empty_init, "Mattel", "World Championship Football", MACHINE_SUPPORTS_SAVE )
-CONS( 1978, scrabsen, 0, 0, scrabsen, scrabsen, scrabsen_state, empty_init, "Selchow & Righter", "Scrabble Sensor - Electronic Word Game", MACHINE_SUPPORTS_SAVE )
+CONS( 1979, scrabsen, 0, 0, scrabsen, scrabsen, scrabsen_state, empty_init, "Selchow & Righter", "Scrabble Sensor - Electronic Word Game", MACHINE_SUPPORTS_SAVE )
CONS( 1980, rdqa, 0, 0, rdqa, rdqa, rdqa_state, empty_init, "Selchow & Righter", "Reader's Digest Q&A - Computer Question & Answer Game", MACHINE_SUPPORTS_SAVE )
diff --git a/src/mame/drivers/hh_sm510.cpp b/src/mame/drivers/hh_sm510.cpp
index 5da1627bb0f..8af7d653f19 100644
--- a/src/mame/drivers/hh_sm510.cpp
+++ b/src/mame/drivers/hh_sm510.cpp
@@ -5093,9 +5093,9 @@ ROM_END
* lcd screen with custom segments, 1-bit sound
known releases (Gauntlet):
- - World: Gauntlet
- - Japan: Gauntlet (published by Sega)
- - UK: Gauntlet (published by Grandstand)
+ - World: Gauntlet, published by Tiger
+ - Japan: Gauntlet, published by Sega
+ - UK: Gauntlet, published by Grandstand
Robin Hood is the same MCU/ROM, different LCD.
@@ -5619,8 +5619,8 @@ ROM_END
* lcd screen with custom segments, 1-bit sound
known releases:
- - World: Space Harrier II
- - Japan: Space Harrier (published by Sega)
+ - World: Space Harrier II, published by Tiger
+ - Japan: Space Harrier, published by Sega
***************************************************************************/
@@ -5972,8 +5972,8 @@ ROM_END
* lcd screen with custom segments, 1-bit sound
known releases:
- - World: Altered Beast
- - Japan: Juuouki (published by Sega)
+ - World: Altered Beast, published by Tiger
+ - Japan: Juuouki, published by Sega
***************************************************************************/
diff --git a/src/mame/drivers/hh_tms1k.cpp b/src/mame/drivers/hh_tms1k.cpp
index 58934f44cce..bf5423e4469 100644
--- a/src/mame/drivers/hh_tms1k.cpp
+++ b/src/mame/drivers/hh_tms1k.cpp
@@ -3,21 +3,21 @@
// thanks-to:Sean Riddle, Kevin Horton
/***************************************************************************
- This driver is a collection of simple dedicated handheld and tabletop
- toys based around the TMS1000 MCU series. Anything more complex or clearly
- part of a series is (or will be) in its own driver, see:
- - eva: Chrysler EVA-11 (and EVA-24)
- - microvsn: Milton Bradley MicroVision
- - sag: Entex Select-A-Game Machine
-
- (contd.) hh_tms1k child drivers:
- - tispellb: TI Spelling B series gen. 1
- - tispeak: TI Speak & Spell series gen. 1
-
- Let's use this driver for a list of known devices and their serials,
- excluding most of TI's own products(they normally didn't use "MP" codes).
- For TI's calculators, a comprehensive list of MCU serials is available
- on Joerg Woerner's datamath.org: http://www.datamath.org/IC_List.htm
+This driver is a collection of simple dedicated handheld and tabletop
+toys based around the TMS1000 MCU series. Anything more complex or clearly
+part of a series is (or will be) in its own driver, see:
+- eva: Chrysler EVA-11 (and EVA-24)
+- microvsn: Milton Bradley MicroVision
+- sag: Entex Select-A-Game Machine
+
+(contd.) hh_tms1k child drivers:
+- tispellb: TI Spelling B series gen. 1
+- tispeak: TI Speak & Spell series gen. 1
+
+Let's use this driver for a list of known devices and their serials,
+excluding most of TI's own products(they normally didn't use "MP" codes).
+For TI's calculators, a comprehensive list of MCU serials is available
+on Joerg Woerner's datamath.org: http://www.datamath.org/IC_List.htm
serial device etc.
--------------------------------------------------------------------
@@ -137,21 +137,35 @@
(* means undumped unless noted, @ denotes it's in this driver)
-
- TODO:
- - verify output PLA and microinstructions PLA for MCUs that have been dumped
- electronically (mpla is usually the default, opla is often custom)
- - unknown MCU clocks for some: TMS1000 RC curve is documented in the data manual,
- but not for newer ones (rev. E or TMS1400 MCUs). TMS0970/0980 osc. is on-die.
- - fake-press ON button when emulation starts for machines that have it on the button matrix
- (doesn't look like any relies on it though)
- - 7in1ss: in 2-player mode, game select and skill select can be configured after selecting a game?
- Possibly BTANB, players are expected to quickly press the "First Up" button after the alarm sound.
- - bship discrete sound, netlist is documented
- - finish bshipb SN76477 sound
- - improve elecbowl driver
- - tithermos temperature sensor comparator (right now just the digital clock works)
- - is alphie(patent) the same as the final version?
+ROM source notes when dumped from another publisher, but confident it's the same game:
+- arrball: Tandy Zingo
+- bcheetah: Fundimensions Incredible Brain Buggy
+- cmsport: Conic Basketball
+- cnbaskb: Cardinal Electronic Basketball
+- cnfball: Elecsonic Football
+- copycat: Sears Follow Me
+- ditto: Tandy Electronic Pocket Repeat
+- fxmcr165: Tandy Science Fair Microcomputer Trainer
+- ginv1000: Tandy Cosmic 1000 Fire Away
+- gjackpot: Entex Electronic Jackpot: Gin Rummy & Black Jack
+- gpoker: Entex Electronic Poker
+- matchnum: LJN Electronic Concentration
+- ti1250: Texas Instruments TI-1200
+
+TODO:
+- verify output PLA and microinstructions PLA for MCUs that have been dumped
+ electronically (mpla is usually the default, opla is often custom)
+- unknown MCU clocks for some: TMS1000 RC curve is documented in the data manual,
+ but not for newer ones (rev. E or TMS1400 MCUs). TMS0970/0980 osc. is on-die.
+- fake-press ON button when emulation starts for machines that have it on the button matrix
+ (doesn't look like any relies on it though)
+- 7in1ss: in 2-player mode, game select and skill select can be configured after selecting a game?
+ Possibly BTANB, players are expected to quickly press the "First Up" button after the alarm sound.
+- bship discrete sound, netlist is documented
+- finish bshipb SN76477 sound
+- improve elecbowl driver
+- tithermos temperature sensor comparator (right now just the digital clock works)
+- is alphie(patent) the same as the final version?
***************************************************************************/
@@ -387,7 +401,7 @@ namespace {
used on the boxes for "A-One LSI" is same as "Bandai Electronics" from early-80s.
known releases:
- - Japan: Match Number (white case, Queen playing card bezel)
+ - Japan: Match Number, published by A-One (white case, Queen playing card bezel)
- USA: Electronic Concentration, published by LJN (black case, rainbow pattern bezel)
- UK: Electronic Concentration, published by Peter Pan Playthings (same as USA version)
@@ -527,7 +541,7 @@ ROM_END
* 2-digit 7seg LED display + 22 LEDs, 1-bit sound
known releases:
- - Japan/World: Arrange Ball (black case)
+ - Japan/World: Arrange Ball, published by A-One (black case)
- USA(1): Zingo (model 60-2123), published by Tandy (red case)
- USA(2): Computer Impulse, published by LJN (white case)
- Germany: Fixball, unknown publisher, same as LJN version
@@ -805,7 +819,7 @@ ROM_END
and press the go-key.
known releases:
- - Japan: System Control Car: Cheetah
+ - Japan: System Control Car: Cheetah, published by Bandai
- USA: The Incredible Brain Buggy, published by Fundimensions
- UK: The Incredible Brain Buggy, published by Palitoy (same as USA version)
@@ -1402,7 +1416,7 @@ ROM_END
* 9-digit LED grid, 1-bit sound
known releases:
- - USA(1): Electronic Quarterback
+ - USA(1): Electronic Quarterback, published by Coleco
- USA(2): Electronic Touchdown, published by Sears
***************************************************************************/
@@ -1534,7 +1548,7 @@ ROM_END
offense blips appear brighter. The hardware is similar to cqback.
known releases:
- - USA(1): Head to Head: Electronic Football
+ - USA(1): Head to Head: Electronic Football, published by Coleco
- USA(2): Team Play Football, published by Sears
***************************************************************************/
@@ -1868,7 +1882,7 @@ ROM_END
* 9-digit cyan VFD display, and other LEDs behind bezel, 1-bit sound
known releases:
- - USA: Head to Head: Electronic Baseball
+ - USA: Head to Head: Electronic Baseball, published by Coleco
- Japan: Computer Baseball, published by Tsukuda
***************************************************************************/
@@ -2520,7 +2534,7 @@ ROM_END
MP0907(101-006) are nearly identical. MP0168 is found in Conic Multisport.
known releases:
- - Hong Kong: Electronic Basketball
+ - Hong Kong: Electronic Basketball, published by Conic
- USA: Electronic Basketball, published by Cardinal
***************************************************************************/
@@ -2643,8 +2657,8 @@ ROM_END
MAME external artwork is needed for the switchable overlays.
known releases:
- - Hong Kong: Electronic Multisport
- - Hong Kong: Basketball/Ice Hockey/Soccer (3 separate handhelds)
+ - Hong Kong: Electronic Multisport, published by Conic
+ - Hong Kong: Basketball/Ice Hockey/Soccer, published by Conic (3 separate handhelds)
- USA(1): Electronic Multisport, published by Innocron
- USA(2): Sports Arena, published by Tandy (model 60-2158)
@@ -2770,9 +2784,9 @@ ROM_END
by distributing the game under subsidiary brands - see list below.
known releases:
- - Hong Kong: Electronic Football, Conic
- - USA(1): Football, E.R.S.(Electronic Readout Systems)
- - USA(2): Football, ELECsonic
+ - Hong Kong: Electronic Football, published by Conic
+ - USA(1): Football, published by E.R.S.(Electronic Readout Systems)
+ - USA(2): Football, published by ELECsonic
- USA(3): Football, no brand!
Another hardware revision of this game uses a PIC16 MCU.
@@ -2915,8 +2929,8 @@ ROM_END
the offense(player) leds brighter.
known releases:
- - Hong Kong: Electronic Football II, Conic
- - USA: Electronic Football II, Tandy
+ - Hong Kong: Electronic Football II, published by Conic
+ - USA: Electronic Football II, published by Tandy
***************************************************************************/
@@ -3047,7 +3061,7 @@ ROM_END
This is a peg solitaire game, with random start position.
known releases:
- - Hong Kong: Electronic I.Q.
+ - Hong Kong: Electronic I.Q., published by Conic
- UK: Solitaire, published by Grandstand
***************************************************************************/
@@ -4583,7 +4597,7 @@ ROM_END
* 4 7seg LEDs, 37 other LEDs, 1-bit sound
known releases:
- - World: 2 Player Baseball
+ - World: 2 Player Baseball, published by Fonas
- USA: 2 Player Baseball, published by Sears
- Canada: 2 Player Baseball, published by Talbot Electronics
@@ -4866,7 +4880,7 @@ ROM_END
* 11-digit cyan VFD display Itron FG1114B, oscillator sound
known releases:
- - Japan: Poker
+ - Japan: Poker, published by Gakken
- USA: Electronic Poker, published by Entex
***************************************************************************/
@@ -5028,7 +5042,7 @@ ROM_END
* 11-digit cyan VFD display Itron FG1114B, oscillator sound
known releases:
- - Japan: Jackpot(?)
+ - Japan: Jackpot(?), published by Gakken
- USA: Electronic Jackpot: Gin Rummy & Black Jack, published by Entex
***************************************************************************/
@@ -5149,7 +5163,7 @@ ROM_END
* cyan VFD display Itron? CP5008A, 1-bit sound
known releases:
- - World: Invader
+ - World: Invader, published by Gakken
- USA(1): Galaxy Invader, published by CGL
- USA(2): Fire Away, published by Tandy
- USA(3): Electron Blaster, published by Vanity Fair
@@ -5276,8 +5290,8 @@ ROM_END
* cyan/red VFD display Futaba DM-25Z 2D, 1-bit sound
known releases:
- - World: Galaxy Invader 1000
- - Japan: Invader 1000
+ - World: Galaxy Invader 1000, published by Gakken
+ - Japan: Invader 1000, published by Gakken
- USA(1): Galaxy Invader 1000, published by CGL
- USA(2): Cosmic 1000 Fire Away, published by Tandy
@@ -5402,7 +5416,7 @@ ROM_END
* cyan/red/green VFD display, 1-bit sound
known releases:
- - World: Invader 2000
+ - World: Invader 2000, published by Gakken
- USA(1): Galaxy Invader 10000, published by CGL
- USA(2): Cosmic 3000 Fire Away, published by Tandy
@@ -5548,7 +5562,7 @@ ROM_END
the R-165 as GMC-4, obviously on modern hardware, but fully compatible.
known releases:
- - Japan: FX-Micom R-165
+ - Japan: FX-Micom R-165, published by Gakken
- USA: Science Fair Microcomputer Trainer, published by Tandy. Of note is
the complete redesign of the case, adding more adjustable wiring
@@ -6654,9 +6668,9 @@ ROM_END
Refer to the official manual for more information.
known releases:
- - USA: Comp IV (two versions, different case)
- - Europe: Logic 5
- - Japan: Pythaligoras
+ - USA: Comp IV (two versions, different case), published by MB
+ - Europe: Logic 5, published by MB
+ - Japan: Pythaligoras, published by Takara
***************************************************************************/
@@ -9260,7 +9274,7 @@ ROM_END
* 12 lamps behind buttons, 1-bit sound
known releases:
- - World: Tandy-12: Computerized Arcade
+ - World: Tandy-12: Computerized Arcade, published by Tandy
- Mexico: Fabuloso Fred, published by Ensueño Toys (also released as
9-button version, a clone of Mego Fabulous Fred)
@@ -9441,7 +9455,7 @@ ROM_END
tell you if it was right(green) or wrong(red). For example 1+2=3?
known releases:
- - USA(1): Monkey See
+ - USA(1): Monkey See, published by Tandy
- USA(2): Heathcliff, published by McNaught Syndicate in 1983
***************************************************************************/
@@ -11608,7 +11622,7 @@ ROM_END
* 4 LEDs, 1-bit sound
known releases:
- - World: Copy Cat
+ - World: Copy Cat, published by Tiger
- USA(1): Follow Me, published by Sears
- USA(2): Electronic Repeat, published by Tandy
@@ -11815,7 +11829,7 @@ ROM_END
* 4 LEDs, 1-bit sound
known releases:
- - World: Ditto
+ - World: Ditto, published by Tiger
- USA: Electronic Pocket Repeat (model 60-2152/60-2468A), published by Tandy
note: 1996 model 60-2482 MCU is a Z8, and is assumed to be a clone of Tiger Copycat Jr.
@@ -11904,7 +11918,7 @@ ROM_END
MAME external artwork is needed for the switchable overlays.
known releases:
- - World: 7 in 1 Sports Stadium
+ - World: 7 in 1 Sports Stadium, published by Tiger
- USA: 7 in 1 Sports, published by Sears
***************************************************************************/
@@ -12031,9 +12045,9 @@ ROM_END
* 2-digit 7seg display, 46 other leds, 1-bit sound
known releases:
- - USA: Break Up
- - Japan: Block Attack
- - UK: Break-In
+ - USA: Break Up, published by Tomy
+ - Japan: Block Attack, published by Tomy
+ - UK: Break-In, published by Tomy
led translation table: led zz from game PCB = MAME y.x:
@@ -12234,9 +12248,9 @@ ROM_END
* 3 7seg LEDs, and other LEDs behind bezel, 1-bit sound
known releases:
- - USA: Power House Pinball
- - Japan: Pinball
- - Europe: Flipper
+ - USA: Power House Pinball, published by Tomy
+ - Japan: Pinball, published by Tomy
+ - Europe: Flipper, published by Tomy
led translation table: led zz from game PCB = MAME y.x:
diff --git a/src/mame/drivers/hh_ucom4.cpp b/src/mame/drivers/hh_ucom4.cpp
index 074bf619f55..6f156c0d973 100644
--- a/src/mame/drivers/hh_ucom4.cpp
+++ b/src/mame/drivers/hh_ucom4.cpp
@@ -3,22 +3,10 @@
// thanks-to:Kevin Horton, Sean Riddle
/***************************************************************************
- NEC uCOM4 MCU tabletops/handhelds or other simple devices,
- most of them (emulated ones) are VFD electronic games/toys.
+NEC uCOM4 MCU tabletops/handhelds or other simple devices,
+most of them (emulated ones) are VFD electronic games/toys.
- Commonly used VFD(vacuum fluorescent display) are by NEC or Futaba.
-
- NEC FIP9AM20T (example, Epoch Astro Command)
- grcss
-
- FIP = fluorescent indicator panel
- g = number of grids
- r = revision of the VFD
- c = custom display
- s = unique display part number
-
-
- known chips:
+known chips:
serial device etc.
----------------------------------------------------------------
@@ -62,13 +50,33 @@
(* means undumped unless noted, @ denotes it's in this driver)
+
+Commonly used VFD(vacuum fluorescent display) are by NEC or Futaba.
+
+NEC FIP9AM20T (example, Epoch Astro Command)
+ grcss
+
+FIP = fluorescent indicator panel
+g = number of grids
+r = revision of the VFD
+c = custom display
+s = unique display part number
+
+
+ROM source notes when dumped from another publisher, but confident it's the same game:
+- astrocmd: Tandy Astro Command
+- caveman: Tandy Caveman
+- grobot9: Mego Fabulous Fred
+
***************************************************************************/
#include "emu.h"
+
#include "cpu/ucom4/ucom4.h"
#include "video/pwm.h"
#include "video/hlcd0515.h"
#include "sound/spkrdev.h"
+
#include "screen.h"
#include "speaker.h"
@@ -232,7 +240,7 @@ namespace {
known releases:
- Japan: "Missile Guerilla Warfare Maneuvers", published by Tomy
- - World: UFO Master-Blaster Station
+ - World: UFO Master-Blaster Station, published by Bambino
***************************************************************************/
@@ -929,8 +937,8 @@ ROM_END
* cyan/red/green VFD display NEC FIP6AM2-T no. 1-8 2, with partial color overlay and bezel
known releases:
- - Japan: FL Crazy Climbing
- - USA: Crazy Climber
+ - Japan: FL Crazy Climbing, published by Bandai
+ - USA: Crazy Climber, published by Bandai
***************************************************************************/
@@ -1306,7 +1314,7 @@ ROM_END
* cyan VFD display NEC FIP9AM18T tube no. 0D, with color overlay
known releases:
- - USA: Invader From Space
+ - USA: Invader From Space, published by Epoch
- UK: Invader From Space, published by Grandstand
***************************************************************************/
@@ -1418,8 +1426,8 @@ ROM_END
* cyan VFD display NEC FIP10AM15T tube no. 0F, with bezel overlay
known releases:
- - USA: Electronic Football (aka Pro-Bowl Football)
- - Japan: American Football
+ - USA: Electronic Football (aka Pro-Bowl Football), published by Epoch
+ - Japan: American Football, published by Epoch
***************************************************************************/
@@ -1538,8 +1546,8 @@ ROM_END
revisions exist, with different graphics: rev B no. 1-8, rev. D no. 2-21.
known releases:
- - USA: Galaxy II
- - Japan: Astro Wars
+ - USA: Galaxy II, published by Epoch
+ - Japan: Astro Wars, published by Epoch
- UK: Astro Wars, published by Grandstand
***************************************************************************/
@@ -1670,7 +1678,7 @@ ROM_END
* cyan/red VFD display NEC FIP9AM20T no. 42-42, with color overlay + bezel
known releases:
- - Japan: Astro Command
+ - Japan: Astro Command, published by Epoch
- USA: Astro Command, published by Tandy
- UK: Scramble, published by Grandstand
@@ -1790,8 +1798,8 @@ ROM_END
* cyan/red/green VFD display NEC FIP8BM20T no. 2-42
known releases:
- - Japan: Dracula House, yellow case
- - USA: Dracula, red case
+ - Japan: Dracula House, yellow case, published by Epoch
+ - USA: Dracula, red case, published by Epoch
- Other: Dracula, yellow case, published by Hales
***************************************************************************/
@@ -2099,7 +2107,7 @@ ROM_END
* 9 lamps behind buttons
known releases:
- - Japan: Game Robot 9
+ - Japan: Game Robot 9, published by Takatoku Toys
- USA: Fabulous Fred - The Ultimate Electronic Game, published by Mego
- Mexico: Fabuloso Fred, published by Ensueño Toys (also released as
12-button version, a clone of Tandy-12)
@@ -2222,8 +2230,8 @@ ROM_END
* cyan VFD display NEC FIP32AM18Y tube no. 0E, with color overlay
known releases:
- - USA: Cosmic Combat
- - Japan: Space Attack
+ - USA: Cosmic Combat, published by Tomy
+ - Japan: Space Attack, published by Tomy
***************************************************************************/
@@ -2501,8 +2509,8 @@ ROM_END
* bright yellow round casing
known releases:
- - Japan: Puck Man
- - USA: Pac Man
+ - Japan: Puck Man, published by Tomy
+ - USA: Pac Man, published by Tomy
- UK: Puckman (Tomy), and also published by Grandstand as Munchman
- Australia: Pac Man-1, published by Futuretronics
@@ -2619,10 +2627,10 @@ ROM_END
* cyan/red/green VFD display NEC FIP10CM20T no. 2-41
known releases:
- - World: Scramble
+ - World: Scramble, published by Tomy
- USA: Scramble, published by Tandy
- UK: Astro Blaster, published by Hales (Epoch Astro Command was named Scramble)
- - Germany: Rambler
+ - Germany: Rambler, published by Tomy
***************************************************************************/
@@ -2732,7 +2740,7 @@ ROM_END
* cyan/red/green VFD display NEC FIP8AM20T no. 2-42
known releases:
- - World: Caveman
+ - World: Caveman, published by Tomy
- USA: Caveman, published by Tandy
- UK: Cave Man - Jr. Caveman vs Dinosaur, published by Grandstand
diff --git a/src/mame/layout/tbaskb.lay b/src/mame/layout/drdunk.lay
index a5148fcbdcb..772d391e4cb 100644
--- a/src/mame/layout/tbaskb.lay
+++ b/src/mame/layout/drdunk.lay
@@ -11,13 +11,26 @@ license:CC0
<element name="static_white"><rect><color red="0.8" green="0.8" blue="0.8" /></rect></element>
<element name="disk_white"><disk><color red="0.8" green="0.8" blue="0.8" /></disk></element>
- <element name="text_l1"><text string="HOME" align="1"><color red="0.9" green="0.9" blue="0.9" /></text></element>
- <element name="text_l2"><text string="VISITOR" align="2"><color red="0.9" green="0.9" blue="0.9" /></text></element>
+ <element name="text_l1"><text string="HOME" align="1"><color red="0.85" green="0.85" blue="0.85" /></text></element>
+ <element name="text_l2"><text string="VISITOR" align="2"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="led" defstate="0">
- <disk state="0"><color red="0.14" green="0.02" blue="0.03" /></disk>
- <disk state="1"><color red="0.5" green="0.1" blue="0.11" /></disk>
- <disk state="2"><color red="1.0" green="0.20" blue="0.23" /></disk>
+ <text string=" ">
+ <bounds x="0.0" y="0.0" width="1.0" height="1.0" />
+ <color red="0.0" green="0.0" blue="0.0" />
+ </text>
+ <disk state="0">
+ <bounds x="0.25" y="0.25" width="0.5" height="0.5" />
+ <color red="0.14" green="0.02" blue="0.03" />
+ </disk>
+ <disk state="1">
+ <bounds x="0.25" y="0.25" width="0.5" height="0.5" />
+ <color red="0.5" green="0.1" blue="0.11" />
+ </disk>
+ <disk state="2">
+ <bounds x="0.25" y="0.25" width="0.5" height="0.5" />
+ <color red="1.0" green="0.20" blue="0.23" />
+ </disk>
</element>
<element name="digit" defstate="0">
@@ -51,7 +64,7 @@ license:CC0
<element ref="disk_white"><bounds x="10" y="19.25" width="5" height="5" /></element>
<element ref="disk_black"><bounds x="10.25" y="19.5" width="4.5" height="4.5" /></element>
<element ref="static_white"><bounds x="3.3" y="21.65" width="18.4" height="5" /></element>
- <element ref="static_black"><bounds x="0" y="21.9" width="25" height="5" /></element>
+ <element ref="static_black"><bounds x="0" y="21.9" width="25" height="6" /></element>
<element ref="static_black"><bounds x="0" y="0" width="25" height="5.25" /></element>
<element ref="static_white"><bounds x="9" y="1" width="7" height="0.25" /></element>
diff --git a/src/mame/layout/dunksunk.lay b/src/mame/layout/dunksunk.lay
new file mode 100644
index 00000000000..ba41d3911ed
--- /dev/null
+++ b/src/mame/layout/dunksunk.lay
@@ -0,0 +1,128 @@
+<?xml version="1.0"?>
+<!--
+license:CC0
+-->
+<mamelayout version="2">
+
+<!-- define elements -->
+
+ <element name="static_black"><rect><color red="0" green="0" blue="0" /></rect></element>
+ <element name="disk_black"><disk><color red="0" green="0" blue="0" /></disk></element>
+ <element name="static_white"><rect><color red="0.8" green="0.8" blue="0.8" /></rect></element>
+ <element name="disk_white"><disk><color red="0.8" green="0.8" blue="0.8" /></disk></element>
+
+ <element name="text_l1"><text string="Period"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+ <element name="text_l2"><text string="Game Time"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+ <element name="text_l3"><text string="Home/Submarine Score"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+ <element name="text_l4"><text string="Visitor/Destroyer Score"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+
+ <element name="led" defstate="0">
+ <text string=" ">
+ <bounds x="0.0" y="0.0" width="1.0" height="1.0" />
+ <color red="0.0" green="0.0" blue="0.0" />
+ </text>
+ <disk state="0">
+ <bounds x="0.25" y="0.25" width="0.5" height="0.5" />
+ <color red="0.14" green="0.02" blue="0.03" />
+ </disk>
+ <disk state="1">
+ <bounds x="0.25" y="0.25" width="0.5" height="0.5" />
+ <color red="0.5" green="0.1" blue="0.11" />
+ </disk>
+ <disk state="2">
+ <bounds x="0.25" y="0.25" width="0.5" height="0.5" />
+ <color red="1.0" green="0.20" blue="0.23" />
+ </disk>
+ </element>
+
+ <element name="digit" defstate="0">
+ <led7seg><color red="1.0" green="0.2" blue="0.23" /></led7seg>
+ </element>
+
+
+<!-- build screen -->
+
+ <view name="Internal Layout">
+ <bounds left="3.26" right="21.74" top="-4.25" bottom="27.7" />
+
+ <!-- bezel -->
+
+ <element ref="static_white"><bounds x="3.25" y="5" width="18.5" height="25" /></element>
+ <element ref="static_black"><bounds x="3.5" y="5.5" width="18" height="25" /></element>
+
+ <element ref="static_white"><bounds x="10" y="5.25" width="5" height="8.25" /></element>
+ <element ref="static_white"><bounds x="9" y="7.5" width="7" height="0.25" /></element>
+ <element ref="static_white"><bounds x="9" y="9.25" width="7" height="0.25" /></element>
+ <element ref="static_white"><bounds x="9" y="11" width="7" height="0.25" /></element>
+ <element ref="static_black"><bounds x="10.25" y="5.5" width="4.5" height="8.25" /></element>
+
+ <element ref="disk_white"><bounds x="10" y="11" width="5" height="5" /></element>
+ <element ref="disk_black"><bounds x="10.25" y="11.25" width="4.5" height="4.5" /></element>
+ <element ref="static_black"><bounds x="10.85" y="10.5" width="0.35" height="3" /></element>
+ <element ref="static_black"><bounds x="12.25" y="10.5" width="0.5" height="3" /></element>
+ <element ref="static_black"><bounds x="13.8" y="10.5" width="0.35" height="3" /></element>
+ <element ref="static_white"><bounds x="10.1" y="13.25" width="4.8" height="0.25" /></element>
+
+ <element ref="disk_white"><bounds x="10" y="25.25" width="5" height="5" /></element>
+ <element ref="disk_black"><bounds x="10.25" y="25.5" width="4.5" height="4.5" /></element>
+ <element ref="static_white"><bounds x="3.3" y="27.45" width="18.4" height="5" /></element>
+ <element ref="static_black"><bounds x="0" y="27.7" width="25" height="6" /></element>
+ <element ref="static_black"><bounds x="0" y="0" width="25" height="5.25" /></element>
+
+ <element ref="static_white"><bounds x="12.375" y="-4" width="0.25" height="4.25" /></element>
+ <element ref="static_white"><bounds x="3.25" y="0.5" width="18.5" height="0.25" /></element>
+ <element ref="disk_white"><bounds x="10.75" y="2" width="3.5" height="2" /></element>
+ <element ref="disk_black"><bounds x="11" y="2.25" width="3" height="1.5" /></element>
+
+ <element ref="text_l1"><bounds x="3.25" y="-4.1" width="9.25" height="0.9" /></element>
+ <element ref="text_l2"><bounds x="12.5" y="-4.1" width="9.25" height="0.9" /></element>
+ <element ref="text_l3"><bounds x="3.25" y="-0.7" width="9.25" height="0.9" /></element>
+ <element ref="text_l4"><bounds x="12.5" y="-0.7" width="9.25" height="0.9" /></element>
+
+ <!-- leds -->
+
+ <element name="digit5" ref="digit"><bounds x="6.375" y="-3" width="1.5" height="2.25" /></element>
+ <element name="digit6" ref="digit"><bounds x="7.875" y="-3" width="1.5" height="2.25" /></element>
+ <element name="digit7" ref="digit"><bounds x="15.625" y="-3" width="1.5" height="2.25" /></element>
+ <element name="digit8" ref="digit"><bounds x="17.125" y="-3" width="1.5" height="2.25" /></element>
+
+ <element name="2.3" ref="led"><bounds x="12" y="2.5" width="1" height="1" /></element>
+
+ <element name="0.6" ref="led"><bounds x="4" y="6" width="1" height="1" /></element>
+ <element name="1.6" ref="led"><bounds x="8" y="6" width="1" height="1" /></element>
+ <element name="2.6" ref="led"><bounds x="12" y="6" width="1" height="1" /></element>
+ <element name="3.6" ref="led"><bounds x="16" y="6" width="1" height="1" /></element>
+ <element name="4.6" ref="led"><bounds x="20" y="6" width="1" height="1" /></element>
+
+ <element name="0.2" ref="led"><bounds x="4" y="10" width="1" height="1" /></element>
+ <element name="1.2" ref="led"><bounds x="8" y="10" width="1" height="1" /></element>
+ <element name="2.2" ref="led"><bounds x="12" y="10" width="1" height="1" /></element>
+ <element name="3.2" ref="led"><bounds x="16" y="10" width="1" height="1" /></element>
+ <element name="4.2" ref="led"><bounds x="20" y="10" width="1" height="1" /></element>
+
+ <element name="0.5" ref="led"><bounds x="4" y="14" width="1" height="1" /></element>
+ <element name="1.5" ref="led"><bounds x="8" y="14" width="1" height="1" /></element>
+ <element name="2.5" ref="led"><bounds x="12" y="14" width="1" height="1" /></element>
+ <element name="3.5" ref="led"><bounds x="16" y="14" width="1" height="1" /></element>
+ <element name="4.5" ref="led"><bounds x="20" y="14" width="1" height="1" /></element>
+
+ <element name="0.1" ref="led"><bounds x="4" y="18" width="1" height="1" /></element>
+ <element name="1.1" ref="led"><bounds x="8" y="18" width="1" height="1" /></element>
+ <element name="2.1" ref="led"><bounds x="12" y="18" width="1" height="1" /></element>
+ <element name="3.1" ref="led"><bounds x="16" y="18" width="1" height="1" /></element>
+ <element name="4.1" ref="led"><bounds x="20" y="18" width="1" height="1" /></element>
+
+ <element name="0.4" ref="led"><bounds x="4" y="22" width="1" height="1" /></element>
+ <element name="1.4" ref="led"><bounds x="8" y="22" width="1" height="1" /></element>
+ <element name="2.4" ref="led"><bounds x="12" y="22" width="1" height="1" /></element>
+ <element name="3.4" ref="led"><bounds x="16" y="22" width="1" height="1" /></element>
+ <element name="4.4" ref="led"><bounds x="20" y="22" width="1" height="1" /></element>
+
+ <element name="0.0" ref="led"><bounds x="4" y="26" width="1" height="1" /></element>
+ <element name="1.0" ref="led"><bounds x="8" y="26" width="1" height="1" /></element>
+ <element name="2.0" ref="led"><bounds x="12" y="26" width="1" height="1" /></element>
+ <element name="3.0" ref="led"><bounds x="16" y="26" width="1" height="1" /></element>
+ <element name="4.0" ref="led"><bounds x="20" y="26" width="1" height="1" /></element>
+
+ </view>
+</mamelayout>
diff --git a/src/mame/layout/hccbaskb.lay b/src/mame/layout/hccbaskb.lay
index f30dc7fd309..6fde4d92a1a 100644
--- a/src/mame/layout/hccbaskb.lay
+++ b/src/mame/layout/hccbaskb.lay
@@ -11,14 +11,27 @@ license:CC0
<element name="static_white"><rect><color red="0.8" green="0.8" blue="0.8" /></rect></element>
<element name="disk_white"><disk><color red="0.8" green="0.8" blue="0.8" /></disk></element>
- <element name="text_l1"><text string="VISITOR" align="1"><color red="0.9" green="0.9" blue="0.9" /></text></element>
- <element name="text_l2"><text string="SCORE"><color red="0.9" green="0.9" blue="0.9" /></text></element>
- <element name="text_l3"><text string="HOME" align="2"><color red="0.9" green="0.9" blue="0.9" /></text></element>
+ <element name="text_l1"><text string="VISITOR" align="1"><color red="0.85" green="0.85" blue="0.85" /></text></element>
+ <element name="text_l2"><text string="SCORE"><color red="0.85" green="0.85" blue="0.85" /></text></element>
+ <element name="text_l3"><text string="HOME" align="2"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="led" defstate="0">
- <disk state="0"><color red="0.14" green="0.02" blue="0.03" /></disk>
- <disk state="1"><color red="0.5" green="0.1" blue="0.11" /></disk>
- <disk state="2"><color red="1.0" green="0.20" blue="0.23" /></disk>
+ <text string=" ">
+ <bounds x="0.0" y="0.0" width="1.0" height="1.0" />
+ <color red="0.0" green="0.0" blue="0.0" />
+ </text>
+ <disk state="0">
+ <bounds x="0.25" y="0.25" width="0.5" height="0.5" />
+ <color red="0.14" green="0.02" blue="0.03" />
+ </disk>
+ <disk state="1">
+ <bounds x="0.25" y="0.25" width="0.5" height="0.5" />
+ <color red="0.5" green="0.1" blue="0.11" />
+ </disk>
+ <disk state="2">
+ <bounds x="0.25" y="0.25" width="0.5" height="0.5" />
+ <color red="1.0" green="0.20" blue="0.23" />
+ </disk>
</element>
<element name="digit" defstate="0">
@@ -56,7 +69,7 @@ license:CC0
<element ref="disk_white"><bounds x="10" y="23" width="5" height="5" /></element>
<element ref="disk_black"><bounds x="10.25" y="23.25" width="4.5" height="4.5" /></element>
<element ref="static_white"><bounds x="3.3" y="25.5" width="18.4" height="5" /></element>
- <element ref="static_black"><bounds x="0" y="25.75" width="25" height="5" /></element>
+ <element ref="static_black"><bounds x="0" y="25.75" width="25" height="6" /></element>
<element ref="static_black"><bounds x="0" y="0" width="25" height="5.25" /></element>
<element ref="text_l1"><bounds x="4" y="3.75" width="10" height="1" /></element>
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 911561e3935..9d7cb74684a 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -16160,6 +16160,7 @@ cfrogger // Coleco
gjungler // Gakken
@source:hh_pic16.cpp
+drdunk // Kmart
flash // Ideal
hccbaskb // Tiger Electronics
leboom // Lakeside
@@ -16168,7 +16169,6 @@ melodym // GAF
matchme // Kingsford
pabball // Caprice
rockpin // Tiger Electronics
-tbaskb // Tandy Corporation
touchme // Atari
ttfball // Toytronic
ttfballa // Toytronic
@@ -16176,6 +16176,7 @@ us2pfball // US Games
uspbball // US Games
@source:hh_pps41.cpp
+dunksunk // Kmart
ftri1 // Fonas
mastmind // Invicta
memoquiz // MEM