From b078f64542286a76b20e12ed0e86ec9372a4ae67 Mon Sep 17 00:00:00 2001 From: Ivan Vangelista Date: Wed, 29 Mar 2023 20:50:49 +0200 Subject: New systems marked not working ------------------------------ Sweet Land 4 (ver 2004.9.29) [Darksoft, TeamEurope] --- src/mame/mame.lst | 3 + src/mame/namco/sweetland4.cpp | 126 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 129 insertions(+) create mode 100644 src/mame/namco/sweetland4.cpp diff --git a/src/mame/mame.lst b/src/mame/mame.lst index ffddf2e963b..6f9dc08ce87 100755 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -32699,6 +32699,9 @@ skykids // (c) 1985 @source:namco/sweetland.cpp sweetlnd // +@source:namco/sweetland4.cpp +sweetld4 // + @source:namco/tankbatt.cpp tankbatt // (c) 1980 Namco tankbattb // bootleg diff --git a/src/mame/namco/sweetland4.cpp b/src/mame/namco/sweetland4.cpp new file mode 100644 index 00000000000..d3c85860c4a --- /dev/null +++ b/src/mame/namco/sweetland4.cpp @@ -0,0 +1,126 @@ +// license:BSD-3-Clause +// copyright-holders: + +/* +Namco 'M188 MAIN PCB' +1656960100 (1656970100) + +Main components: + +1x H8/3007 5B4 HD6413007F20 +1x RTC 72423 A EPSON E220E +1x Oki M9810B +1x HRD051R5 DC/DC converter +2x MTB011 High Output Interface Driver ICs +1x 4-dip bank +11x connectors + +Sweet Land 4 video: https://www.youtube.com/watch?v=Zj8_RRGlCI4 +*/ + + +#include "emu.h" + +#include "cpu/h8/h83006.h" +#include "machine/msm6242.h" +#include "sound/okim9810.h" + +#include "speaker.h" + + +namespace { + +class sweetland4_state : public driver_device +{ +public: + sweetland4_state(const machine_config &mconfig, device_type type, const char *tag) : + driver_device(mconfig, type, tag), + m_maincpu(*this, "maincpu") + {} + + void sweetland4(machine_config &config); + +private: + required_device m_maincpu; + + void program_map(address_map &map); + void io_map(address_map &map); +}; + + +void sweetland4_state::program_map(address_map &map) +{ + map(0x000000, 0x07ffff).rom().region("maincpu", 0); +} + +void sweetland4_state::io_map(address_map &map) +{ +} + + +static INPUT_PORTS_START( sweetld4 ) + PORT_START("IN1") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) + + PORT_START("IN2") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) + + PORT_START("DSW1") // only one bank of dips on PCB + PORT_DIPNAME( 0x01, 0x01, "DSW1-01" ) + PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_DIPNAME( 0x02, 0x02, "DSW1-02" ) + PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_DIPNAME( 0x04, 0x04, "DSW1-04" ) + PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_DIPNAME( 0x08, 0x08, "DSW1-08" ) + PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) +INPUT_PORTS_END + + +void sweetland4_state::sweetland4(machine_config &config) +{ + H83007(config, m_maincpu, 16'000'000); // no evident XTAL on PCB + m_maincpu->set_addrmap(AS_PROGRAM, &sweetland4_state::program_map); + m_maincpu->set_addrmap(AS_IO, &sweetland4_state::io_map); + + RTC72423(config, "rtc", 32'768); // no evident XTAL on PCB + + SPEAKER(config, "lspeaker").front_left(); + SPEAKER(config, "rspeaker").front_right(); + + okim9810_device &oki(OKIM9810(config, "oki", 4'096'000)); // no evident XTAL on PCB + oki.add_route(0, "lspeaker", 1.00); + oki.add_route(1, "rspeaker", 1.00); +} + + +ROM_START( sweetld4 ) + ROM_REGION( 0x80000, "maincpu", 0 ) + ROM_LOAD( "swb 1 mpr0b.19f", 0x00000, 0x80000, CRC(8a3e9e87) SHA1(8b1532bac5e1668bdf719a66fdc8b9165cf0722a) ) + + ROM_REGION( 0x200000, "oki", 0 ) + ROM_LOAD( "swb 1 snd0.19d", 0x000000, 0x200000, CRC(39294dc7) SHA1(6094a53f10f220d1df8c3e35df11e0566e9c099c) ) // 11xxxxxxxxxxxxxxxxx = 0x00 +ROM_END + +} // anonymous namespace + + +GAME( 2004, sweetld4, 0, sweetland4, sweetld4, sweetland4_state, empty_init, ROT0, "Namco", "Sweet Land 4 (ver 2004.9.29)", MACHINE_IS_SKELETON_MECHANICAL ) -- cgit v1.2.3