summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Ivan Vangelista <mesgnet@yahoo.it>2019-01-23 20:06:52 +0100
committer Ivan Vangelista <mesgnet@yahoo.it>2019-01-23 20:06:52 +0100
commit428e48c1b1b24055db769f8c910cc9f19fd92b91 (patch)
tree7c65c2a08f1e04d3ce2500aa2869d454027173aa
parent4cc1a8828d88434ee8e132a73d9cc3ce5c13170f (diff)
new not working machine
------------------------------------- Miss Bamby [jordigahan, ClawGrip]
-rw-r--r--scripts/target/mame/arcade.lua1
-rw-r--r--src/mame/arcade.flt1
-rw-r--r--src/mame/drivers/missbamby.cpp133
-rw-r--r--src/mame/mame.lst5
4 files changed, 140 insertions, 0 deletions
diff --git a/scripts/target/mame/arcade.lua b/scripts/target/mame/arcade.lua
index 71f980741b9..e4c869bcce5 100644
--- a/scripts/target/mame/arcade.lua
+++ b/scripts/target/mame/arcade.lua
@@ -4745,6 +4745,7 @@ files {
MAME_DIR .. "src/mame/drivers/miniboy7.cpp",
MAME_DIR .. "src/mame/drivers/minivideo.cpp",
MAME_DIR .. "src/mame/drivers/mirax.cpp",
+ MAME_DIR .. "src/mame/drivers/missbamby.cpp",
MAME_DIR .. "src/mame/drivers/mjsenpu.cpp",
MAME_DIR .. "src/mame/drivers/mole.cpp",
MAME_DIR .. "src/mame/drivers/mosaic.cpp",
diff --git a/src/mame/arcade.flt b/src/mame/arcade.flt
index 104dd51c42f..d8f106d0832 100644
--- a/src/mame/arcade.flt
+++ b/src/mame/arcade.flt
@@ -748,6 +748,7 @@ minivideo.cpp
mirage.cpp
mirax.cpp
missb2.cpp
+missbamby.cpp
missile.cpp
mitchell.cpp
mjkjidai.cpp
diff --git a/src/mame/drivers/missbamby.cpp b/src/mame/drivers/missbamby.cpp
new file mode 100644
index 00000000000..83a70eebbc1
--- /dev/null
+++ b/src/mame/drivers/missbamby.cpp
@@ -0,0 +1,133 @@
+// license:BSD-3-Clause
+// copyright-holders:
+
+/*
+Miss Bamby - Automatics Pascual (ClawGrip 2019-01-21)
+ _____________________________________________________________
+ | _______ |
+ | |__??__| ____________ |
+ | __________________ | EMPTY | |
+ | | M5L8085AP | |___________| |
+ | |_________________| ____________ |
+ | ______________ | ROM1 | |
+ | XTAL |M5L82?? | |___________| |
+ | __ 6.144 |____________| ____________ |
+ | |R| | ROM0 | |
+ __| |___________| |
+|__| ________ ________ ___________________ _____________ |
+|__| |ULN2003A |ULN2003A | M5L8155P | | ??? | |
+|__| |__________________| _____________ |
+|__| ________ _________ | ??? | |
+|__| _______ |74LS393| |74LS7481 |
+|__| |7407N | ________ |
+|__| ________ ________ |GD40018| |
+|__| |74LS14_| |74LS153| _________ |
+|__| ____ | BATT | |
+|__| _______ ___________________ |D | | 3.6V | |
+|__| |LM380N| | AY-3-8910 | |I | |_________| |
+|__| |__________________| |P | ______ |
+|__| |S__| LM311N |
+ |____________________________________________________________|
+*/
+
+#include "emu.h"
+#include "emupal.h"
+#include "screen.h"
+#include "speaker.h"
+#include "cpu/i8085/i8085.h"
+#include "machine/i8155.h"
+#include "machine/pit8253.h"
+#include "sound/ay8910.h"
+
+class missbamby_state : public driver_device
+{
+public:
+ missbamby_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag),
+ m_maincpu(*this, "maincpu")
+ {
+ }
+
+ void missbamby(machine_config &config);
+
+private:
+ required_device<cpu_device> m_maincpu;
+
+ uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+
+ void io_map(address_map &map);
+ void prg_map(address_map &map);
+
+ virtual void machine_start() override;
+};
+
+uint32_t missbamby_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
+{
+ return 0;
+}
+
+void missbamby_state::prg_map(address_map &map) // preliminary, everything to be taken with a grain of salt
+{
+ map(0x0000, 0x3fff).rom();
+ map(0x5000, 0x50ff).ram();
+ //map(0x6000, 0x6000).r(); // only read once at start-up?
+ map(0x8000, 0x80ff).ram();
+ map(0x8800, 0x88ff).rw("i8155", FUNC(i8155_device::memory_r), FUNC(i8155_device::memory_w));
+ map(0x8900, 0x8907).rw("i8155", FUNC(i8155_device::io_r), FUNC(i8155_device::io_w));
+ map(0x9000, 0x9003).rw("pit", FUNC(pit8253_device::read), FUNC(pit8253_device::write));
+}
+
+void missbamby_state::io_map(address_map &map)
+{
+ map.global_mask(0xff);
+ map.unmap_value_high();
+}
+
+
+static INPUT_PORTS_START( missbamby )
+ PORT_START("IN0")
+ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
+
+ PORT_START("DSW1")
+ PORT_DIPUNKNOWN_DIPLOC(0x01, 0x01, "SW1:1")
+ PORT_DIPUNKNOWN_DIPLOC(0x02, 0x02, "SW1:2")
+ PORT_DIPUNKNOWN_DIPLOC(0x04, 0x04, "SW1:3")
+ PORT_DIPUNKNOWN_DIPLOC(0x08, 0x08, "SW1:4")
+ PORT_DIPUNKNOWN_DIPLOC(0x10, 0x10, "SW1:5")
+ PORT_DIPUNKNOWN_DIPLOC(0x20, 0x20, "SW1:6")
+ PORT_DIPUNKNOWN_DIPLOC(0x40, 0x40, "SW1:7")
+ PORT_DIPUNKNOWN_DIPLOC(0x80, 0x80, "SW1:8")
+INPUT_PORTS_END
+
+
+void missbamby_state::machine_start()
+{
+}
+
+
+
+void missbamby_state::missbamby(machine_config &config)
+{
+ /* basic machine hardware */
+ I8085A(config, m_maincpu, 6.144_MHz_XTAL); // M5L8085AP
+ m_maincpu->set_addrmap(AS_PROGRAM, &missbamby_state::prg_map);
+ m_maincpu->set_addrmap(AS_IO, &missbamby_state::io_map);
+
+ PIT8253(config, "pit", 6.144_MHz_XTAL/4); // guess: only ML82 readable, might be something else
+
+ I8155(config, "i8155", 6.144_MHz_XTAL/2); // M5L8155P, guessed divisor
+
+ /* sound hardware */
+ SPEAKER(config, "mono").front_center();
+ AY8910(config, "ay8910", 6.144_MHz_XTAL / 4).add_route(ALL_OUTPUTS, "mono", 1.0); // guess
+}
+
+
+ROM_START( msbamby )
+ ROM_REGION(0x4000, "maincpu", 0)
+ ROM_LOAD( "1.bin", 0x0000, 0x2000, CRC(7b5efbd9) SHA1(abb4b4432021945aee474c4bdd83979f6460c671) )
+ ROM_LOAD( "2.bin", 0x2000, 0x2000, CRC(6048d5cd) SHA1(a3bbf43b1474de75aef9957b967ead96b9a18fc5) )
+ROM_END
+
+
+GAME( 198?, msbamby, 0, missbamby, missbamby, missbamby_state, empty_init, ROT0, "Pascual Automatics", "Miss Bamby", MACHINE_IS_SKELETON_MECHANICAL )
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 37217035fc3..334acbbe38b 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -21578,6 +21578,9 @@ miraxa // (c) 1985 Current Technologies
bublpong // bootleg on enhanced hardware
missb2 // bootleg on enhanced hardware
+@source:missbamby.cpp
+msbamby // 198?
+
@source:missile.cpp
mcombat // bootleg
mcombata // bootleg
@@ -38618,6 +38621,8 @@ mattelcs //
vsmile //
vsmilef //
vsmileg //
+
+@source:vsmileb.cpp
vsmileb //
vsmilebsw //