summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Joakim Larsson Edstrom <joakimlarsson42@gmail.com>2017-01-04 20:30:13 +0100
committer Joakim Larsson Edstrom <joakimlarsson42@gmail.com>2017-01-04 20:30:13 +0100
commit25a3e81a1f9aebff89821556e3d6fd7f7ee25cf6 (patch)
tree5f76cc57870c352fc72a072b5286048f8ba3d8d4 /src
parente984b7b5b7891c90611ca73f11fcddfbdf380226 (diff)
VME: converted mvme350 board driver to slot device and a general cleanup
Diffstat (limited to 'src')
-rw-r--r--src/devices/bus/vme/vme.cpp12
-rw-r--r--src/devices/bus/vme/vme_mvme350.cpp (renamed from src/mame/drivers/mvme350.cpp)217
-rw-r--r--src/devices/bus/vme/vme_mvme350.h32
-rw-r--r--src/devices/bus/vme/vme_mzr8300.cpp140
-rw-r--r--src/devices/bus/vme/vme_mzr8300.h7
-rw-r--r--src/mame/drivers/mzr8105.cpp180
-rw-r--r--src/mame/includes/mzr8105.h30
-rw-r--r--src/mame/includes/mzr8300.h35
-rw-r--r--src/mame/machine/mzr8105.cpp192
-rw-r--r--src/mame/machine/mzr8300.cpp165
-rw-r--r--src/mame/mame.lst3
-rw-r--r--src/mame/mess.flt1
12 files changed, 461 insertions, 553 deletions
diff --git a/src/devices/bus/vme/vme.cpp b/src/devices/bus/vme/vme.cpp
index 9f0ad5ea2d1..a28e0e45b52 100644
--- a/src/devices/bus/vme/vme.cpp
+++ b/src/devices/bus/vme/vme.cpp
@@ -70,6 +70,7 @@
#include "vme.h"
#include "bus/vme/vme_mzr8105.h"
#include "bus/vme/vme_mzr8300.h"
+#include "bus/vme/vme_mvme350.h"
#define LOG_GENERAL 0x01
#define LOG_SETUP 0x02
@@ -107,7 +108,6 @@ vme_p1_slot_device::vme_p1_slot_device(const machine_config &mconfig, const char
,m_vme_p1_slottag(nullptr)
,m_vme_j1_callback(*this)
{
- LOG("%s %s\n", tag, FUNCNAME);
}
vme_p1_slot_device::vme_p1_slot_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source) :
@@ -137,7 +137,10 @@ void vme_p1_slot_device::device_start()
{
device_vme_p1_card_interface *dev = dynamic_cast<device_vme_p1_card_interface *>(get_card_device());
LOG("%s %s - %s:%s\n", tag(), FUNCNAME, m_vme_p1_tag, m_vme_p1_slottag);
- if (dev) device_vme_p1_card_interface::static_set_vme_p1_tag(*dev, m_vme_p1_tag, m_vme_p1_slottag);
+ if (dev)
+ {
+ device_vme_p1_card_interface::static_set_vme_p1_tag(*dev, m_vme_p1_tag, m_vme_p1_slottag);
+ }
// m_card = dynamic_cast<device_vme_p1_card_interface *>(get_card_device());
}
@@ -174,13 +177,18 @@ WRITE8_MEMBER(vme_p1_slot_device::write8)
// if (m_card) m_card->write8(space, offset, data);
}
+/* The following two slot collections be combined once we intriduce capabilities for each board */
+/* Usually a VME formware supports only a few boards so it will have its own slot collection defined */
+// Controller capable boards that can go into slot1 ( or has an embedded VME bus )
SLOT_INTERFACE_START( vme_p1_slot1 )
SLOT_INTERFACE("mzr8105", VME_MZR8105)
SLOT_INTERFACE_END
+// All boards that can be non-controller boards, eg not driving the VME CLK etc
SLOT_INTERFACE_START( vme_p1_slots )
SLOT_INTERFACE("mzr8105", VME_MZR8105)
SLOT_INTERFACE("mzr8300", VME_MZR8300)
+ SLOT_INTERFACE("mvme350", VME_MVME350)
SLOT_INTERFACE_END
//
diff --git a/src/mame/drivers/mvme350.cpp b/src/devices/bus/vme/vme_mvme350.cpp
index 624cdad5d00..1c1b0df9d44 100644
--- a/src/mame/drivers/mvme350.cpp
+++ b/src/devices/bus/vme/vme_mvme350.cpp
@@ -2,8 +2,7 @@
// copyright-holders:Joakim Larsson Edstrom
/***************************************************************************
*
- * Motorola MVME-350 6U Intelligent Tape Controller driver, initially derived
- * from hk68v10.c
+ * Motorola MVME-350 6U Intelligent Tape Controller driver
*
* 31/08/2015
*
@@ -68,17 +67,8 @@
* ||
*
* History of Motorola VME division (https://en.wikipedia.org/wiki/VMEbus)
- *---------------------------------
- * When Motorola released the 68000 processor 1979 the ambition of the deisgners
- * was also to standardize a versatile CPU bus to be able to build computer
- * systems without constructing PCB:s from scratch. This become VersaBus but the
- * boards was really too big and the computer world already saw the systems shrink
- * in size. Motorola's design center in Munich proposed to use the smaller and
- * already used Euroboard form factor and call it Versabus-E. This later became
- * VME which was standardized in the VITA organization 1981
- *
- * Misc links about Motorola VME division and this board:
- * http://bitsavers.trailing-edge.com/pdf/motorola/_dataBooks/1987_Microcomputer_Systems_and_Components.pdf
+ *------------------------------------------------------------------------
+ * See mvme147.cpp
*
* Description
* ------------
@@ -110,6 +100,8 @@
* 0x040000 PIT device?
* 0x060000 RAM?
* 0x080000 PIT device?
+ * 0xffff5000 MVME350 - Streaming Tape Controller CLUN $04 - From MVME-166 installation manual
+ * 0xffff5100 MVME350 - Streaming Tape Controller CLUN $05 probably base of shared RAM
* --------------------------------------------------------------------------
*
* Interrupt sources MVME
@@ -123,17 +115,13 @@
*
* ----------------------------------------------------------
*
- * DMAC Channel Assignments
- * ----------------------------------------------------------
- * Channel M10 V10
- * ----------------------------------------------------------
- *
- *
* TODO:
* - Dump the ROMs (DONE)
* - Setup a working address map (STARTED)
* - Get documentation for VME interface
* - Add VME bus driver
+ * - Hook up the PITs correctly
+ * - Add a configurable shared memory window between local CPU and the VME bus
* - Hook up a CPU board that supports boot from tape (ie MVME-162, MVME 147)
* - Get a tape file with a bootable data on it.
*
@@ -142,116 +130,139 @@
#include "emu.h"
#include "cpu/m68000/m68000.h"
#include "machine/68230pit.h"
+#include "vme_mvme350.h"
-#define LOG(x) x
+#define LOG_GENERAL 0x01
+#define LOG_SETUP 0x02
+#define LOG_PRINTF 0x04
-class mvme350_state : public driver_device
-{
-public:
-mvme350_state(const machine_config &mconfig, device_type type, const char *tag) :
- driver_device (mconfig, type, tag),
- m_maincpu (*this, "maincpu"),
- m_pit(*this, "pit")
-{
-}
+#define VERBOSE 0 //(LOG_PRINTF | LOG_SETUP | LOG_GENERAL)
+
+#define LOGMASK(mask, ...) do { if (VERBOSE & mask) logerror(__VA_ARGS__); } while (0)
+#define LOGLEVEL(mask, level, ...) do { if ((VERBOSE & mask) >= level) logerror(__VA_ARGS__); } while (0)
+
+#define LOG(...) LOGMASK(LOG_GENERAL, __VA_ARGS__)
+#define LOGSETUP(...) LOGMASK(LOG_SETUP, __VA_ARGS__)
+
+#if VERBOSE & LOG_PRINTF
+#define logerror printf
+#endif
+
+#ifdef _MSC_VER
+#define FUNCNAME __func__
+#else
+#define FUNCNAME __PRETTY_FUNCTION__
+#endif
-//DECLARE_READ16_MEMBER (vme_a24_r);
-//DECLARE_WRITE16_MEMBER (vme_a24_w);
-//DECLARE_READ16_MEMBER (vme_a16_r);
-//DECLARE_WRITE16_MEMBER (vme_a16_w);
-virtual void machine_start () override;
-virtual void machine_reset () override;
-protected:
+//**************************************************************************
+// GLOBAL VARIABLES
+//**************************************************************************
-private:
- required_device<cpu_device> m_maincpu;
- required_device<pit68230_device> m_pit;
+const device_type VME_MVME350 = &device_creator<vme_mvme350_card_device>;
-};
+#define MVME350_CPU_TAG "mvme350_cpu"
+#define MVME350_ROM "mvme350_rom"
-static ADDRESS_MAP_START (mvme350_mem, AS_PROGRAM, 16, mvme350_state)
-ADDRESS_MAP_UNMAP_HIGH
- AM_RANGE (0x000000, 0x01ffff) AM_ROM /* 128 Mb ROM */
- AM_RANGE (0x020000, 0x03ffff) AM_RAM /* 128 Mb RAM */
-#if 1
- AM_RANGE(0x040000, 0x040035) AM_DEVREADWRITE8("pit", pit68230_device, read, write, 0x00ff) /* PIT ?*/
- AM_RANGE(0x060000, 0x06001f) AM_RAM /* Area is cleared on start */
- AM_RANGE(0x080000, 0x080035) AM_DEVREADWRITE8("pit", pit68230_device, read, write, 0x00ff) /* PIT ?*/
+static ADDRESS_MAP_START( mvme350_mem, AS_PROGRAM, 16, vme_mvme350_card_device )
+ ADDRESS_MAP_UNMAP_HIGH
+ AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_REGION(MVME350_ROM, 0)
+ AM_RANGE(0x020000, 0x03ffff) AM_RAM
+
+#if 0
+ AM_RANGE(0x040000, 0x040035) AM_DEVREADWRITE8("pit", pit68230_device, read, write, 0x00ff) /* PIT ?*/
+ AM_RANGE(0x060000, 0x06001f) AM_RAM /* Area is cleared on start */
+ AM_RANGE(0x080000, 0x080035) AM_DEVREADWRITE8("pit", pit68230_device, read, write, 0x00ff) /* PIT ?*/
#endif
//AM_RANGE(0x100000, 0xfeffff) AM_READWRITE(vme_a24_r, vme_a24_w) /* VMEbus Rev B addresses (24 bits) - not verified */
//AM_RANGE(0xff0000, 0xffffff) AM_READWRITE(vme_a16_r, vme_a16_w) /* VMEbus Rev B addresses (16 bits) - not verified */
ADDRESS_MAP_END
-/* Input ports */
-static INPUT_PORTS_START (mvme350)
-INPUT_PORTS_END
+//-------------------------------------------------
+// machine_config_additions - device-specific
+// machine configurations
+//-------------------------------------------------
-/* Start it up */
-void mvme350_state::machine_start ()
+MACHINE_CONFIG_FRAGMENT( mvme350 )
+ /* basic machine hardware */
+ MCFG_CPU_ADD (MVME350_CPU_TAG, M68010, XTAL_10MHz)
+ MCFG_CPU_PROGRAM_MAP (mvme350_mem)
+ /* PIT Parallel Interface and Timer device, assuming strapped for on board clock */
+ MCFG_DEVICE_ADD("pit", PIT68230, XTAL_16MHz / 2)
+MACHINE_CONFIG_END
+
+ROM_START( mvme350 )
+ ROM_REGION (0x20000, MVME350_ROM, 0)
+ ROM_LOAD16_BYTE ("mvme350U40v2.3.bin", 0x0001, 0x4000, CRC (bcef82ef) SHA1 (e6fdf26e4714cbaeb3e97d7b5acf02d64d8ad744))
+ ROM_LOAD16_BYTE ("mvme350U47v2.3.bin", 0x0000, 0x4000, CRC (582ce095) SHA1 (d0929dbfeb0cfda63df6b5bc29ee27fbf665def7))
+ROM_END
+
+machine_config_constructor vme_mvme350_card_device::device_mconfig_additions() const
{
- LOG (logerror ("machine_start\n"));
+ LOG("%s %s\n", tag(), FUNCNAME);
+ return MACHINE_CONFIG_NAME( mvme350 );
}
-void mvme350_state::machine_reset ()
+const tiny_rom_entry *vme_mvme350_card_device::device_rom_region() const
{
- LOG (logerror ("machine_reset\n"));
+ LOG("%s\n", FUNCNAME);
+ return ROM_NAME( mvme350 );
}
-#if 0
-/* Dummy VME access methods until the VME bus device is ready for use */
-READ16_MEMBER (mvme350_state::vme_a24_r){
- LOG (logerror ("vme_a24_r\n"));
- return (uint16_t) 0;
-}
+//**************************************************************************
+// LIVE DEVICE
+//**************************************************************************
-WRITE16_MEMBER (mvme350_state::vme_a24_w){
- LOG (logerror ("vme_a24_w\n"));
+vme_mvme350_card_device::vme_mvme350_card_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source) :
+ device_t(mconfig, type, name, tag, owner, clock, shortname, source),
+ device_vme_p1_card_interface(mconfig, *this)
+{
+ LOG("%s %s\n", tag, FUNCNAME);
}
-READ16_MEMBER (mvme350_state::vme_a16_r){
- LOG (logerror ("vme_16_r\n"));
- return (uint16_t) 0;
+vme_mvme350_card_device::vme_mvme350_card_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
+ device_t(mconfig, VME_MVME350, "Motorola MVME-350 Intelligent Tape Controller", tag, owner, clock, "mvme350", __FILE__),
+ device_vme_p1_card_interface(mconfig, *this)
+{
+ LOG("%s %s\n", tag, FUNCNAME);
}
-WRITE16_MEMBER (mvme350_state::vme_a16_w){
- LOG (logerror ("vme_a16_w\n"));
-}
-#endif
+void vme_mvme350_card_device::device_start()
+{
+ LOG("%s %s\n", tag(), FUNCNAME);
+ set_vme_p1_device();
-/*
- * Machine configuration
- */
-static MACHINE_CONFIG_START (mvme350, mvme350_state)
- /* basic machine hardware */
- MCFG_CPU_ADD ("maincpu", M68010, XTAL_10MHz)
- MCFG_CPU_PROGRAM_MAP (mvme350_mem)
- /* PIT Parallel Interface and Timer device, assuming strapped for on board clock */
- MCFG_DEVICE_ADD("pit", PIT68230, XTAL_16MHz / 2)
+ /* Setup r/w handlers for shared memory area */
+#if 0
+ /* From MVME166 Single Board Computer Installation Guide:
-MACHINE_CONFIG_END
+ Controller Type First board Second board
+ CLUN Address CLUN Address
+ ---------------------------------------------------
+ MVME350 - Streaming $04 $FFFF5000 $05 $FFFF5100
+ Tape Controller
+ ---------------------------------------------------
+ */
+ uint32_t base = 0xFFFF5000;
+ m_vme_p1->install_device(base + 0, base + 1, // Channel B - Data
+ read8_delegate(FUNC(z80sio_device::db_r), subdevice<z80sio_device>("pit")), write8_delegate(FUNC(z80sio_device::db_w), subdevice<z80sio_device>("pit")), 0x00ff);
+ m_vme_p1->install_device(base + 2, base + 3, // Channel B - Control
+ read8_delegate(FUNC(z80sio_device::cb_r), subdevice<z80sio_device>("pit")), write8_delegate(FUNC(z80sio_device::cb_w), subdevice<z80sio_device>("pit")), 0x00ff);
+#endif
-/* ROM definitions */
-ROM_START (mvme350)
-ROM_REGION (0x1000000, "maincpu", 0)
+}
-ROM_LOAD16_BYTE ("mvme350U40v2.3.bin", 0x0000, 0x4000, CRC (bcef82ef) SHA1 (e6fdf26e4714cbaeb3e97d7b5acf02d64d8ad744))
-ROM_LOAD16_BYTE ("mvme350U47v2.3.bin", 0x0001, 0x4000, CRC (582ce095) SHA1 (d0929dbfeb0cfda63df6b5bc29ee27fbf665def7))
+void vme_mvme350_card_device::device_reset()
+{
+ LOG("%s %s\n", tag(), FUNCNAME);
+}
-/*
- * System ROM information
- *
- * The ROMs known commands from different sources:
- *
- * It communicates with the master through data buffers in shared memory and VME bus interrupts
- * as desribed in
- * http://bitsavers.trailing-edge.com/pdf/motorola/_dataBooks/1987_Microcomputer_Systems_and_Components.pdf
- *
- * The board is pretty boring as stand alone, it initializes everything and then executes a STOP instruction
- * awaiting a CPU on the VME bus to request its services. However, it enables boot from tape devices, we just
- * need a MVME-131 and a dump of a VersaDOS or Motorola UNIX System V system tape and some work.
- */
-ROM_END
+#if 0
+READ16_MEMBER (vme_mvme350_card_device::read16){
+ LOG("%s()\n", FUNCNAME);
+ return (uint8_t) 0;
+}
-/* Driver */
-/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS */
-COMP (1984, mvme350, 0, 0, mvme350, mvme350, driver_device, 0, "Motorola", "MVME-350", MACHINE_NO_SOUND_HW | MACHINE_TYPE_COMPUTER )
+WRITE16_MEMBER (vme_mvme350_card_device::write16){
+ LOG("%s()\n", FUNCNAME);
+}
+#endif
diff --git a/src/devices/bus/vme/vme_mvme350.h b/src/devices/bus/vme/vme_mvme350.h
new file mode 100644
index 00000000000..b7cfbdb98f2
--- /dev/null
+++ b/src/devices/bus/vme/vme_mvme350.h
@@ -0,0 +1,32 @@
+// license:BSD-3-Clause
+// copyright-holders:Joakim Larsson Edstrom
+#ifndef VME_MVME350_H
+#define VME_MVME350_H
+#pragma once
+
+#include "bus/vme/vme.h"
+
+extern const device_type VME_MVME350;
+
+class vme_mvme350_card_device :
+ public device_t
+ ,public device_vme_p1_card_interface
+{
+public:
+ vme_mvme350_card_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ vme_mvme350_card_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source);
+
+ // optional information overrides
+ virtual machine_config_constructor device_mconfig_additions() const override;
+ virtual const tiny_rom_entry *device_rom_region() const override;
+
+ // Shared memory methods to be exported to the VME bus
+// virtual DECLARE_READ16_MEMBER (read16) override;
+// virtual DECLARE_WRITE16_MEMBER (write16) override;
+protected:
+ virtual void device_start() override;
+ virtual void device_reset() override;
+private:
+};
+
+#endif // VME_MVME350_H
diff --git a/src/devices/bus/vme/vme_mzr8300.cpp b/src/devices/bus/vme/vme_mzr8300.cpp
index f6d27379994..2ff7b605c95 100644
--- a/src/devices/bus/vme/vme_mzr8300.cpp
+++ b/src/devices/bus/vme/vme_mzr8300.cpp
@@ -1,9 +1,91 @@
// license:BSD-3-Clause
// copyright-holders:Joakim Larsson Edstrom
+/***************************************************************************
+ *
+ * Mizar VME8300 rev G 3U VME slave slot device
+ *
+ * 23/09/2015
+ *
+ * This device was drycoded based on OS9 boot strap code on a Mizar mz8105 board
+ * which expects to find a SIO on the VME bus + photos of a Mizar 8300 board on Ebay
+ * I have found no formal documents for this board so far, so needs verification.
+ *
+ * ||
+ * ||
+ * ||
+ * ||
+ * ||____________________________________________________________ ___
+ * \+++====|| U2|AM26LS32| | NEC | |74LS04N||74LS645 ||_| |
+ * \=/- o|| +--------+ | D7201C | ++-----+++----------+| | |
+ * | | || +-------+ +--------------------+ | | |SN74LS374N|| | |
+ * | | || U1| xxx | ____________________ | | +----------+| | |
+ * | | || +-------+ | NEC | |AMD | |SN74LS374N|| | |
+ * | | || | 7201C | |AM9513++----------+| | |
+ * | | || K10 +--------------------+ | APC ||PAL14L8 || |VME|
+ * | |==|| +-------+ K5 _______ | |+-----------+| | |
+ * | |==|| |MC1488P| K4 |SN74S38|| STC ||PAL20L8 || |P1 |
+ * | | || ++-------+--------+-+------++| |+-----------+| | |
+ * | | || K2 |AM26LS32|AM26LS32| 74S74 | |_____| |SN74LS244N|| | |
+ * | | || +--------+--------+--------+_______ +----------+| | |
+ * | | || | 74S74 | 74F85 | | | |
+ * | | || +-------+--------++-------++-------+ +----------+| | |
+ * /=\- o||J1 K1 U4| xxx | xxx | 74LS164| K6 |AM25LS2521|| | |
+ * /+++====|| J2 +-------+--------+--------+--------+ +----------+|_| |
+ * ||Rev G U3| MC1488| MC1488 | 74LS161| 74F85 | K8 | |___|
+ * ||-----------+-------+-----------------------------------------
+ * ||
+ * ||
+ *
+ *
+ * Misc links about this board:
+ * http://www.ebay.com/itm/MIZAR-INC-8300-0-01-REV-J-INTERFACE-CONTROL-BOARD-W-RIBBON-AND-PLATE-/231508658429?hash=item35e6fdc8fd
+ *
+ * Description
+ * ------------
+ * The Mizar mz8300 is a Quad Serial board.
+ *
+ * - Single High (3U) VME Slave board
+ * - Two upd7201 SIO Serial Input/Ouput
+ * - One AM9513 STC System Timing Controller
+ *
+ * Address Map (just guesses based on driver software behaviours)
+ * --------------------------------------------------------------------------
+ * Local VME Decscription
+ * -------------------------------------------------------------------------
+ * n/a 0xff0000 0xff0003 mzr8105.c Bootstrap expects to find a
+ * UPD7201 serial device here - configurable!
+ * --------------------------------------------------------------------------
+ *
+ * Interrupt sources MVME
+ * ----------------------------------------------------------
+ * Description Device Lvl IRQ VME board
+ * /Board Vector Address
+ * ----------------------------------------------------------
+ * On board Sources
+ *
+ * Off board Sources (other VME boards)
+ *
+ * ----------------------------------------------------------
+ *
+ * DMAC Channel Assignments
+ * ----------------------------------------------------------
+ * Channel
+ * ----------------------------------------------------------
+ *
+ * TODO:
+ * - Setup a working address map (STARTED)
+ * - Get documentation for the board
+ * - Add VME bus interface
+ * - Hook up a CPU board that supports this board (mzr8105.c)
+ * - Get terminal working through this device over the VME interface
+ *
+ ****************************************************************************/
#include "emu.h"
#include "vme_mzr8300.h"
#include "machine/z80sio.h"
+#include "bus/rs232/rs232.h"
+#include "machine/clock.h"
#define LOG_GENERAL 0x01
#define LOG_SETUP 0x02
@@ -33,13 +115,41 @@
const device_type VME_MZR8300 = &device_creator<vme_mzr8300_card_device>;
-vme_mzr8300_card_device::vme_mzr8300_card_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
- device_t(mconfig, VME_MZR8300, "Mizar 8300 SIO serial board", tag, owner, clock, "mzr8300", __FILE__),
- device_vme_p1_card_interface(mconfig, *this)
+/* These values are borrowed just to get the terminal going and should be replaced
+ * once a proper serial board hardware (ie MZ 8300) is found and emulated. */
+#define BAUDGEN_CLOCK XTAL_19_6608MHz /* fake */
+#define SIO_CLOCK (BAUDGEN_CLOCK / 128) /* This will give prompt */
+
+MACHINE_CONFIG_FRAGMENT( mzr8300 )
+ MCFG_UPD7201_ADD("sio0", XTAL_4MHz, SIO_CLOCK, SIO_CLOCK, SIO_CLOCK, SIO_CLOCK )
+
+ MCFG_Z80SIO_OUT_TXDB_CB(DEVWRITELINE("rs232p1", rs232_port_device, write_txd))
+ MCFG_Z80SIO_OUT_DTRB_CB(DEVWRITELINE("rs232p1", rs232_port_device, write_dtr))
+ MCFG_Z80SIO_OUT_RTSB_CB(DEVWRITELINE("rs232p1", rs232_port_device, write_rts))
+
+ MCFG_RS232_PORT_ADD ("rs232p1", default_rs232_devices, "terminal")
+ MCFG_RS232_RXD_HANDLER (DEVWRITELINE ("sio0", upd7201N_device, rxb_w))
+ MCFG_RS232_CTS_HANDLER (DEVWRITELINE ("sio0", upd7201N_device, ctsb_w))
+
+ MCFG_Z80SIO_ADD("sio1", XTAL_4MHz, 0, 0, 0, 0 )
+MACHINE_CONFIG_END
+
+//-------------------------------------------------
+// machine_config_additions - device-specific
+// machine configurations
+//-------------------------------------------------
+
+
+machine_config_constructor vme_mzr8300_card_device::device_mconfig_additions() const
{
- LOG("%s %s\n", tag, FUNCNAME);
+ LOG("%s %s\n", tag(), FUNCNAME);
+ return MACHINE_CONFIG_NAME( mzr8300 );
}
+//**************************************************************************
+// LIVE DEVICE
+//**************************************************************************
+
vme_mzr8300_card_device::vme_mzr8300_card_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source) :
device_t(mconfig, type, name, tag, owner, clock, shortname, source),
device_vme_p1_card_interface(mconfig, *this)
@@ -47,6 +157,13 @@ vme_mzr8300_card_device::vme_mzr8300_card_device(const machine_config &mconfig,
LOG("%s %s\n", tag, FUNCNAME);
}
+vme_mzr8300_card_device::vme_mzr8300_card_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
+ device_t(mconfig, VME_MZR8300, "Mizar 8300 SIO serial board", tag, owner, clock, "mzr8300", __FILE__),
+ device_vme_p1_card_interface(mconfig, *this)
+{
+ LOG("%s %s\n", tag, FUNCNAME);
+}
+
void vme_mzr8300_card_device::device_start()
{
LOG("%s %s\n", tag(), FUNCNAME);
@@ -69,19 +186,7 @@ void vme_mzr8300_card_device::device_reset()
LOG("%s %s\n", tag(), FUNCNAME);
}
-//-------------------------------------------------
-// machine_config_additions - device-specific
-// machine configurations
-//-------------------------------------------------
-
-MACHINE_CONFIG_EXTERN( mzr8300 );
-
-machine_config_constructor vme_mzr8300_card_device::device_mconfig_additions() const
-{
- LOG("%s %s\n", tag(), FUNCNAME);
- return MACHINE_CONFIG_NAME( mzr8300 );
-}
-
+#if 0
READ8_MEMBER (vme_mzr8300_card_device::read8){
LOG("%s()\n", FUNCNAME);
return (uint8_t) 0;
@@ -90,3 +195,4 @@ READ8_MEMBER (vme_mzr8300_card_device::read8){
WRITE8_MEMBER (vme_mzr8300_card_device::write8){
LOG("%s()\n", FUNCNAME);
}
+#endif
diff --git a/src/devices/bus/vme/vme_mzr8300.h b/src/devices/bus/vme/vme_mzr8300.h
index 7f8ae0922ae..8cb59348de0 100644
--- a/src/devices/bus/vme/vme_mzr8300.h
+++ b/src/devices/bus/vme/vme_mzr8300.h
@@ -15,11 +15,12 @@ class vme_mzr8300_card_device :
public:
vme_mzr8300_card_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
vme_mzr8300_card_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source);
- // optional information overrides
+ // optional information overrides
virtual machine_config_constructor device_mconfig_additions() const override;
- virtual DECLARE_READ8_MEMBER (read8) override;
- virtual DECLARE_WRITE8_MEMBER (write8) override;
+
+// virtual DECLARE_READ8_MEMBER (read8) override;
+// virtual DECLARE_WRITE8_MEMBER (write8) override;
protected:
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/mame/drivers/mzr8105.cpp b/src/mame/drivers/mzr8105.cpp
index 539dab9d4f3..5d1a9e0fb55 100644
--- a/src/mame/drivers/mzr8105.cpp
+++ b/src/mame/drivers/mzr8105.cpp
@@ -1,12 +1,187 @@
// license:BSD-3-Clause
// copyright-holders:Joakim Larsson Edstrom
-
+/***************************************************************************
+ *
+ * Mizar VME8105 rev D 3U SBC board driver
+ *
+ * 19/08/2015
+ *
+ * I baught this board from http://www.retrotechnology.com without documentation.
+ * It has a Motorola 68000 CPU @ 10MHz and two 27128 EPROMS with OS9 DEBUG labels
+ * and not much more except 16 or so TTLs, 2 PALs and a VME P1 connector. It is a
+ * 2 layered pcb so it shold be possible to trace the schematics quite easily.
+ * There is a date on the P1 Connector: "Feb 20 1987"
+ *
+ * ||
+ * ||
+ * ||
+ * ||
+ * ||____________________________________________________________ ___
+ * || --------------K2|U6-7432|U7-7474|U14-7405|U21-74645 | |_| |
+ * || | 2764 - low |-+-------+-------+--------+-----------+ | | |
+ * || | OS9 DEBUG U4| +---------+ +--------+---------+ | | |
+ * || -------------- | | |U13-7474|U20-74645| | | |
+ * || ______________ | | +--------+---------+ | | |
+ * || | | | | ______________K4____ | | |
+ * || | U3| | | |U12-7438|U19-74244| | |VME|
+ * || -------------- | |+------K6---------K3---+ | | |
+ * || ______________ | ||U11-PAL20L10|U18-74244| | |P1 |
+ * || | 2764 - high | | |+-----021102-+---------+ | | |
+ * || | OS9 DEBUG U2| |MC68000L10+------------+---------+ | | |
+ * || |______________| | ||U10-PAL14L4 |U17-74244| | | |
+ * || | |+-----021001-+---------+ | | |
+ * || -------------- | |+----+_______|U16-74244|+--+| | |
+ * || | | | |XTAL |U9-7410+---------+| || | |
+ * ||K1 | U1| | |FOX100-------+---------+|K5||_| |
+ * || -------------- |_________|10MHz|U8-7404|U15-74148|| || |___|
+ * ||--||--------------------------------+----+-------+---------++--+
+ * ||--||
+ * ||
+ *
+ * PAL:s
+ *------
+ * The board has two PAL:s, a PAL20L10 and a PAL14L4.
+ *
+ * _____ _____
+ * OD/CLK 1 |* \_/ | 20 VCC
+ * CPU A13 I0 2 | | 19 O0/LR A23
+ * U9 7410p12 I1 3 | | 18 O1/A0 A22
+ * CPU *AS I2 4 | | 17 02/A1 U2/U4 2764p22 *OE
+ * GND I3 5 | | 16 03/A2 U11 PAL20L10p6 I4
+ * CPU A14 I4 6 | U10 | 15 A0/O0 U11 PAL20L10p7 I5
+ * CPU A15 I5 7 | PAL14L4 | 14 A1/O1 U19 74LS244p11 I0b
+ * CPU A16 I6 8 | | 13 A2/O2 A18
+ * CPU A17 I7 9 | | 12 LR/O3 A20
+ * GND 10 |_____________| 11 CLK/OD A21
+ *
+ * _____ _____
+ * OD/CLK 1 |* \_/ | 24 VCC
+ * I0 2 | | 23 O0/LR
+ * CPU *AS I1 3 | | 22 O1/A0
+ * U10 PAL14L4p3 I2 4 | | 21 02/A1
+ * I3 5 | | 20 03/A2
+ * U10 PAL14L4p16 I4 6 | U10 | 19 04/NC
+ * U10 PAL14L4p15 I5 7 | PAL20L10 | 18 NC/O0
+ * I6 8 | | 17 A2/O1
+ * I7 9 | | 16 A1/O2
+ * I8 10 | | 15 A0/O3
+ * I9 11 | | 14 LR/O4
+ * GND 12 |_____________| 13 CLK/OD
+ *
+ * Trace is not fully completed and validated.
+ *
+ * History of Mizar
+ *-------------------
+ * Mizar was one of the first companies that released VME boards in 1982-3 together with
+ * Force Computers and Motorola. Their systems was often supported by OS9/68000 from Microware.
+ * In 1993 Mizar discontinued their OS9/CPU board product range and focused entirely on DSP
+ * boards. RTSI was founded by Mizar employees preserving the knowledge in OS9 as consultants.
+ * In 1998 Blue Wave resulted from the merger of Mizar and Loughborough Sound Images.
+ * Not much tech information availabe but I found some quotes about Mizar on the internet:
+ *
+ * From http://archive.org/stream/68micro-vol-11-num-02/V11N02_Feb1989_djvu.txt :
+ *--------------------------------------------------------------------------------
+ * " Mizar provides complete OS-9 solutions for the VMEbus. Mizar's VME CPUs
+ * offer (he functions and performance your application demands. Our single
+ * height (3U) VME processors are uniquely configurable computing engines,
+ * Through Mizar's unique MXbus expansion interface, standard and custom side
+ * modules can be added to basic processors to create double-height (6U) boards
+ * tor specific applications, 3U CPU options include 68010, 66020, and 63030
+ * microprocessors, up to one MB of DRAM, serial I/O, real-time clock, and
+ * mailbox interrupt support. Standard MXbus side modules include additional DRAM.
+ * SRAM, and I/O.
+ *
+ * Mizar's standard double- height (6U) processors provide additional features such
+ * as a high-speed cache to enhance 68030 performance, floating, point coprocessor
+ * support, up to four MB dual ported DRAM, VSB memory interface, Ethernet, and SCSI.
+ *
+ * Mizar also supports OS-9 with completely configured OS9 development systems and
+ * OS-9 application server systems. For more information, call Mizar today
+ *
+ * 800-635-0200 MIZAR 1419 Dunn Drive CarrolHon, TX 75006 214-446-2664"
+ *
+ * Known boards from Mizar:
+ *
+ * MZX 414
+ * MZ 7122
+ * MZ 7132
+ * MZ 7300 Serial I/O Board (Z8530)
+ * EMX 7320 Serial I/O Board
+ * MZ 7400 Disk Controller Board (WD 2010; WD 1772)
+ * MZ 7500 IEEE-488 (GPIB) Interface Board
+ * EMX 7550 Ethernet Controller Board (AMD 7990 Lance) MAC: 00:80:F8 MIZAR, INC.
+ * MZ 7772
+ * MZ 7810 I/O Expansion Module (6681 DUART)
+ * MZ 7831 SCSI Expansion Module (WD 33C93A)
+ * MZ 7850 Ethernet Expansion Module (WD 83C690)
+ * MZ 8000 ??
+ * MZ 8105 3U 68000 CPU board
+ * MZ 8115
+ * MZ 8300 3U serial board, 2 NEC 7201 and 1 AMD CTS9513 5 x 16 bit Counter/Timer
+ * MZ 8310 timing module 2 x AM9513
+ * MZ 8505 IEEE-488 (GPIB) Interface Board"
+ *
+ * From http://www.megalextoria.com/forum2/index.php?t=msg&goto=73945&
+ *--------------------------------------------------------------------
+ * Aug 20 1984 a report by James Jones from the OS/9 conferance in Des Moines:
+ * "...
+ * Mizar: is selling VME bus 68010 boards, running OS-9/68000; they also make
+ * various memory and I/O boards, disk controller boards, and and a NEC 7220-based
+ * graphics controller board...."
+ *
+ * Misc links about Mizar:
+ * http://www.vita.com/History
+ * http://www.verycomputer.com/154_e272024804bbe203_1.htm
+ * https://www.aihitdata.com/company/00814595/RTSI/overview
+ *
+ * Address Map
+ * --------------------------------------------------------------------------
+ * Address Range Description/Assumption
+ * --------------------------------------------------------------------------
+ * 0x000000 0x01ffff ROM because of fixed vectors
+ * 0x020000 0x03ffff RAM because bootvector stack starts at 0x21000
+ * -- VME adresses---
+ * 0xff0000 0xff0003 Bootstrap expects to find a UPD7201 serial device here
+ * --------------------------------------------------------------------------
+ *
+ * Interrupt sources
+ * ----------------------------------------------------------
+ * Description Device Lvl IRQ VME board
+ * /Board Vector Address
+ * ----------------------------------------------------------
+ * On board Sources
+ * TBD
+ * Off board Sources (other VME boards)
+ * TBD
+ * ----------------------------------------------------------
+ *
+ * TODO:
+ * - Dump the ROMs (DONE)
+ * - Setup a working address map (DONE)
+ * - Add VME bus driver (Faked one)
+ * - understand what other device is expected in VME space ff0011-13
+ *
+ ****************************************************************************/
#include "emu.h"
-#include "includes/mzr8105.h"
+#include "bus/vme/vme.h"
#include "bus/vme/vme_mzr8300.h"
+#include "bus/vme/vme_mvme350.h"
#include "cpu/m68000/m68000.h"
#include "machine/clock.h"
+class mzr8105_state : public driver_device
+{
+public:
+mzr8105_state(const machine_config &mconfig, device_type type, const char *tag) :
+ driver_device (mconfig, type, tag)
+ ,m_maincpu (*this, "maincpu")
+ {
+ }
+
+private:
+ required_device<cpu_device> m_maincpu;
+};
+
static ADDRESS_MAP_START (mzr8105_mem, AS_PROGRAM, 16, mzr8105_state)
ADDRESS_MAP_UNMAP_HIGH
/* The ROMs contains an OS9 bootloader. It is position independent but reset vector suggests that it sits flat on adress 0 (zero) */
@@ -23,6 +198,7 @@ INPUT_PORTS_END
static SLOT_INTERFACE_START(mzr8105_vme_cards)
SLOT_INTERFACE("mzr8300", VME_MZR8300)
+ SLOT_INTERFACE("mvme350", VME_MVME350)
SLOT_INTERFACE_END
/*
diff --git a/src/mame/includes/mzr8105.h b/src/mame/includes/mzr8105.h
deleted file mode 100644
index 6b597ff4e25..00000000000
--- a/src/mame/includes/mzr8105.h
+++ /dev/null
@@ -1,30 +0,0 @@
-// license:BSD-3-Clause
-// copyright-holders:Joakim Larsson Edstrom
-/********************************************************************************
- *
- * mame/includes/mzr8105
- *
- ********************************************************************************/
-
-#ifndef MZR8105_H
-#define MZR8105_H
-#pragma once
-
-#include "bus/vme/vme.h"
-
-class mzr8105_state : public driver_device
-{
-public:
-mzr8105_state(const machine_config &mconfig, device_type type, const char *tag) :
- driver_device (mconfig, type, tag)
- ,m_maincpu (*this, "maincpu")
- {
- }
-
- virtual void machine_start() override;
-private:
- required_device<cpu_device> m_maincpu;
-};
-
-
-#endif // MZR8105_H
diff --git a/src/mame/includes/mzr8300.h b/src/mame/includes/mzr8300.h
deleted file mode 100644
index 1ae01af38c2..00000000000
--- a/src/mame/includes/mzr8300.h
+++ /dev/null
@@ -1,35 +0,0 @@
-// license:BSD-3-Clause
-// copyright-holders:Joakim Larsson Edstrom
-/********************************************************************************
- *
- * mame/includes/mzr8105
- *
- ********************************************************************************/
-
-#ifndef MZR8300_H
-#define MZR8300_H
-#pragma once
-
-#include "emu.h"
-#include "bus/vme/vme.h"
-#include "machine/z80sio.h"
-
-class vme_p1_mzr8300_device : public device_t, public device_vme_p1_card_interface
-{
-public:
- // construction/destruction
- vme_p1_mzr8300_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- vme_p1_mzr8300_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source);
-
- // optional information overrides
- virtual machine_config_constructor device_mconfig_additions() const override;
-
-protected:
- // device-level overrides
- virtual void device_start() override;
- virtual void device_reset() override;
-private:
- required_device<upd7201N_device> m_sio0;
-};
-
-#endif // MZR8300_H
diff --git a/src/mame/machine/mzr8105.cpp b/src/mame/machine/mzr8105.cpp
deleted file mode 100644
index 4e645c3acf5..00000000000
--- a/src/mame/machine/mzr8105.cpp
+++ /dev/null
@@ -1,192 +0,0 @@
-// license:BSD-3-Clause
-// copyright-holders:Joakim Larsson Edstrom
-/***************************************************************************
- *
- * Mizar VME8105 rev D 3U SBC board driver
- *
- * 19/08/2015
- *
- * I baught this board from http://www.retrotechnology.com without documentation.
- * It has a Motorola 68000 CPU @ 10MHz and two 27128 EPROMS with OS9 DEBUG labels
- * and not much more except 16 or so TTLs, 2 PALs and a VME P1 connector. It is a
- * 2 layered pcb so it shold be possible to trace the schematics quite easily.
- * There is a date on the P1 Connector: "Feb 20 1987"
- *
- * ||
- * ||
- * ||
- * ||
- * ||____________________________________________________________ ___
- * || --------------K2|U6-7432|U7-7474|U14-7405|U21-74645 | |_| |
- * || | 2764 - low |-+-------+-------+--------+-----------+ | | |
- * || | OS9 DEBUG U4| +---------+ +--------+---------+ | | |
- * || -------------- | | |U13-7474|U20-74645| | | |
- * || ______________ | | +--------+---------+ | | |
- * || | | | | ______________K4____ | | |
- * || | U3| | | |U12-7438|U19-74244| | |VME|
- * || -------------- | |+------K6---------K3---+ | | |
- * || ______________ | ||U11-PAL20L10|U18-74244| | |P1 |
- * || | 2764 - high | | |+-----021102-+---------+ | | |
- * || | OS9 DEBUG U2| |MC68000L10+------------+---------+ | | |
- * || |______________| | ||U10-PAL14L4 |U17-74244| | | |
- * || | |+-----021001-+---------+ | | |
- * || -------------- | |+----+_______|U16-74244|+--+| | |
- * || | | | |XTAL |U9-7410+---------+| || | |
- * ||K1 | U1| | |FOX100-------+---------+|K5||_| |
- * || -------------- |_________|10MHz|U8-7404|U15-74148|| || |___|
- * ||--||--------------------------------+----+-------+---------++--+
- * ||--||
- * ||
- *
- * PAL:s
- *------
- * The board has two PAL:s, a PAL20L10 and a PAL14L4.
- *
- * _____ _____
- * OD/CLK 1 |* \_/ | 20 VCC
- * CPU A13 I0 2 | | 19 O0/LR A23
- * U9 7410p12 I1 3 | | 18 O1/A0 A22
- * CPU *AS I2 4 | | 17 02/A1 U2/U4 2764p22 *OE
- * GND I3 5 | | 16 03/A2 U11 PAL20L10p6 I4
- * CPU A14 I4 6 | U10 | 15 A0/O0 U11 PAL20L10p7 I5
- * CPU A15 I5 7 | PAL14L4 | 14 A1/O1 U19 74LS244p11 I0b
- * CPU A16 I6 8 | | 13 A2/O2 A18
- * CPU A17 I7 9 | | 12 LR/O3 A20
- * GND 10 |_____________| 11 CLK/OD A21
- *
- * _____ _____
- * OD/CLK 1 |* \_/ | 24 VCC
- * I0 2 | | 23 O0/LR
- * CPU *AS I1 3 | | 22 O1/A0
- * U10 PAL14L4p3 I2 4 | | 21 02/A1
- * I3 5 | | 20 03/A2
- * U10 PAL14L4p16 I4 6 | U10 | 19 04/NC
- * U10 PAL14L4p15 I5 7 | PAL20L10 | 18 NC/O0
- * I6 8 | | 17 A2/O1
- * I7 9 | | 16 A1/O2
- * I8 10 | | 15 A0/O3
- * I9 11 | | 14 LR/O4
- * GND 12 |_____________| 13 CLK/OD
- *
- * Trace is not fully completed and validated.
- *
- * History of Mizar
- *-------------------
- * Mizar was one of the first companies that released VME boards in 1982-3 together with
- * Force Computers and Motorola. Their systems was often supported by OS9/68000 from Microware.
- * In 1993 Mizar discontinued their OS9/CPU board product range and focused entirely on DSP
- * boards. RTSI was founded by Mizar employees preserving the knowledge in OS9 as consultants.
- * In 1998 Blue Wave resulted from the merger of Mizar and Loughborough Sound Images.
- * Not much tech information availabe but I found some quotes about Mizar on the internet:
- *
- * From http://archive.org/stream/68micro-vol-11-num-02/V11N02_Feb1989_djvu.txt :
- *--------------------------------------------------------------------------------
- * " Mizar provides complete OS-9 solutions for the VMEbus. Mizar's VME CPUs
- * offer (he functions and performance your application demands. Our single
- * height (3U) VME processors are uniquely configurable computing engines,
- * Through Mizar's unique MXbus expansion interface, standard and custom side
- * modules can be added to basic processors to create double-height (6U) boards
- * tor specific applications, 3U CPU options include 68010, 66020, and 63030
- * microprocessors, up to one MB of DRAM, serial I/O, real-time clock, and
- * mailbox interrupt support. Standard MXbus side modules include additional DRAM.
- * SRAM, and I/O.
- *
- * Mizar's standard double- height (6U) processors provide additional features such
- * as a high-speed cache to enhance 68030 performance, floating, point coprocessor
- * support, up to four MB dual ported DRAM, VSB memory interface, Ethernet, and SCSI.
- *
- * Mizar also supports OS-9 with completely configured OS9 development systems and
- * OS-9 application server systems. For more information, call Mizar today
- *
- * 800-635-0200 MIZAR 1419 Dunn Drive CarrolHon, TX 75006 214-446-2664"
- *
- * Known boards from Mizar:
- *
- * MZX 414
- * MZ 7122
- * MZ 7132
- * MZ 7300 Serial I/O Board (Z8530)
- * EMX 7320 Serial I/O Board
- * MZ 7400 Disk Controller Board (WD 2010; WD 1772)
- * MZ 7500 IEEE-488 (GPIB) Interface Board
- * EMX 7550 Ethernet Controller Board (AMD 7990 Lance) MAC: 00:80:F8 MIZAR, INC.
- * MZ 7772
- * MZ 7810 I/O Expansion Module (6681 DUART)
- * MZ 7831 SCSI Expansion Module (WD 33C93A)
- * MZ 7850 Ethernet Expansion Module (WD 83C690)
- * MZ 8000 ??
- * MZ 8105 3U 68000 CPU board
- * MZ 8115
- * MZ 8300 3U serial board, 2 NEC 7201 and 1 AMD CTS9513 5 x 16 bit Counter/Timer
- * MZ 8310 timing module 2 x AM9513
- * MZ 8505 IEEE-488 (GPIB) Interface Board"
- *
- * From http://www.megalextoria.com/forum2/index.php?t=msg&goto=73945&
- *--------------------------------------------------------------------
- * Aug 20 1984 a report by James Jones from the OS/9 conferance in Des Moines:
- * "...
- * Mizar: is selling VME bus 68010 boards, running OS-9/68000; they also make
- * various memory and I/O boards, disk controller boards, and and a NEC 7220-based
- * graphics controller board...."
- *
- * Misc links about Mizar:
- * http://www.vita.com/History
- * http://www.verycomputer.com/154_e272024804bbe203_1.htm
- * https://www.aihitdata.com/company/00814595/RTSI/overview
- *
- * Address Map
- * --------------------------------------------------------------------------
- * Address Range Description/Assumption
- * --------------------------------------------------------------------------
- * 0x000000 0x01ffff ROM because of fixed vectors
- * 0x020000 0x03ffff RAM because bootvector stack starts at 0x21000
- * -- VME adresses---
- * 0xff0000 0xff0003 Bootstrap expects to find a UPD7201 serial device here
- * --------------------------------------------------------------------------
- *
- * Interrupt sources
- * ----------------------------------------------------------
- * Description Device Lvl IRQ VME board
- * /Board Vector Address
- * ----------------------------------------------------------
- * On board Sources
- * TBD
- * Off board Sources (other VME boards)
- * TBD
- * ----------------------------------------------------------
- *
- * TODO:
- * - Dump the ROMs (DONE)
- * - Setup a working address map (DONE)
- * - Add VME bus driver (Faked one)
- * - understand what other device is expected in VME space ff0011-13
- *
- ****************************************************************************/
-#include "emu.h"
-#include "includes/mzr8105.h"
-#include "cpu/m68000/m68000.h"
-#include "machine/clock.h"
-
-#define VERBOSE 0
-
-#define LOGPRINT(...) do { if (VERBOSE) logerror(__VA_ARGS__); } while (0)
-#define LOG(...) LOGPRINT(__VA_ARGS__)
-
-#if VERBOSE >= 2
-#define logerror printf
-#endif
-
-#ifdef _MSC_VER
-#define LLFORMAT "%I64%"
-#define FUNCNAME __func__
-#else
-#define LLFORMAT "%lld"
-#define FUNCNAME __PRETTY_FUNCTION__
-#endif
-
-/* Start it up */
-void mzr8105_state::machine_start()
-{
- LOG("%s()\n", FUNCNAME);
-}
-
diff --git a/src/mame/machine/mzr8300.cpp b/src/mame/machine/mzr8300.cpp
deleted file mode 100644
index 9d1541a05ee..00000000000
--- a/src/mame/machine/mzr8300.cpp
+++ /dev/null
@@ -1,165 +0,0 @@
-// license:BSD-3-Clause
-// copyright-holders:Joakim Larsson Edstrom
-/***************************************************************************
- *
- * Mizar VME8300 rev G 3U VME slave slot device
- *
- * 23/09/2015
- *
- * This device was drycoded based on OS9 boot strap code on a Mizar mz8105 board
- * which expects to find a SIO on the VME bus + photos of a Mizar 8300 board on Ebay
- * I have found no formal documents for this board so far, so needs verification.
- *
- * ||
- * ||
- * ||
- * ||
- * ||____________________________________________________________ ___
- * \+++====|| U2|AM26LS32| | NEC | |74LS04N||74LS645 ||_| |
- * \=/- o|| +--------+ | D7201C | ++-----+++----------+| | |
- * | | || +-------+ +--------------------+ | | |SN74LS374N|| | |
- * | | || U1| xxx | ____________________ | | +----------+| | |
- * | | || +-------+ | NEC | |AMD | |SN74LS374N|| | |
- * | | || | 7201C | |AM9513++----------+| | |
- * | | || K10 +--------------------+ | APC ||PAL14L8 || |VME|
- * | |==|| +-------+ K5 _______ | |+-----------+| | |
- * | |==|| |MC1488P| K4 |SN74S38|| STC ||PAL20L8 || |P1 |
- * | | || ++-------+--------+-+------++| |+-----------+| | |
- * | | || K2 |AM26LS32|AM26LS32| 74S74 | |_____| |SN74LS244N|| | |
- * | | || +--------+--------+--------+_______ +----------+| | |
- * | | || | 74S74 | 74F85 | | | |
- * | | || +-------+--------++-------++-------+ +----------+| | |
- * /=\- o||J1 K1 U4| xxx | xxx | 74LS164| K6 |AM25LS2521|| | |
- * /+++====|| J2 +-------+--------+--------+--------+ +----------+|_| |
- * ||Rev G U3| MC1488| MC1488 | 74LS161| 74F85 | K8 | |___|
- * ||-----------+-------+-----------------------------------------
- * ||
- * ||
- *
- *
- * Misc links about this board:
- * http://www.ebay.com/itm/MIZAR-INC-8300-0-01-REV-J-INTERFACE-CONTROL-BOARD-W-RIBBON-AND-PLATE-/231508658429?hash=item35e6fdc8fd
- *
- * Description
- * ------------
- * The Mizar mz8300 is a Quad Serial board.
- *
- * - Single High (3U) VME Slave board
- * - Two upd7201 SIO Serial Input/Ouput
- * - One AM9513 STC System Timing Controller
- *
- * Address Map (just guesses based on driver software behaviours)
- * --------------------------------------------------------------------------
- * Local VME Decscription
- * -------------------------------------------------------------------------
- * n/a 0xff0000 0xff0003 mzr8105.c Bootstrap expects to find a
- * UPD7201 serial device here - configurable!
- * --------------------------------------------------------------------------
- *
- * Interrupt sources MVME
- * ----------------------------------------------------------
- * Description Device Lvl IRQ VME board
- * /Board Vector Address
- * ----------------------------------------------------------
- * On board Sources
- *
- * Off board Sources (other VME boards)
- *
- * ----------------------------------------------------------
- *
- * DMAC Channel Assignments
- * ----------------------------------------------------------
- * Channel
- * ----------------------------------------------------------
- *
- * TODO:
- * - Setup a working address map (STARTED)
- * - Get documentation for the board
- * - Add VME bus interface
- * - Hook up a CPU board that supports this board (mzr8105.c)
- * - Get terminal working through this device over the VME interface
- *
- ****************************************************************************/
-#include "emu.h"
-#include "includes/mzr8300.h"
-#include "machine/z80sio.h"
-#include "bus/rs232/rs232.h"
-#include "machine/clock.h"
-
-#define LOG_GENERAL 0x01
-#define LOG_SETUP 0x02
-#define LOG_PRINTF 0x04
-
-#define VERBOSE 0 // (LOG_PRINTF | LOG_SETUP | LOG_GENERAL)
-
-#define LOGMASK(mask, ...) do { if (VERBOSE & mask) logerror(__VA_ARGS__); } while (0)
-#define LOGLEVEL(mask, level, ...) do { if ((VERBOSE & mask) >= level) logerror(__VA_ARGS__); } while (0)
-
-#define LOG(...) LOGMASK(LOG_GENERAL, __VA_ARGS__)
-#define LOGSETUP(...) LOGMASK(LOG_SETUP, __VA_ARGS__)
-
-#if VERBOSE & LOG_PRINTF
-#define logerror printf
-#endif
-
-#ifdef _MSC_VER
-#define FUNCNAME __func__
-#else
-#define FUNCNAME __PRETTY_FUNCTION__
-#endif
-
-/* These values are borrowed just to get the terminal going and should be replaced
- * once a proper serial board hardware (ie MZ 8300) is found and emulated. */
-#define BAUDGEN_CLOCK XTAL_19_6608MHz /* fake */
-#define SIO_CLOCK (BAUDGEN_CLOCK / 128) /* This will give prompt */
-
-MACHINE_CONFIG_FRAGMENT( mzr8300 )
- MCFG_UPD7201_ADD("sio0", XTAL_4MHz, SIO_CLOCK, SIO_CLOCK, SIO_CLOCK, SIO_CLOCK )
-
- MCFG_Z80SIO_OUT_TXDB_CB(DEVWRITELINE("rs232p1", rs232_port_device, write_txd))
- MCFG_Z80SIO_OUT_DTRB_CB(DEVWRITELINE("rs232p1", rs232_port_device, write_dtr))
- MCFG_Z80SIO_OUT_RTSB_CB(DEVWRITELINE("rs232p1", rs232_port_device, write_rts))
-
- MCFG_RS232_PORT_ADD ("rs232p1", default_rs232_devices, "terminal")
- MCFG_RS232_RXD_HANDLER (DEVWRITELINE ("sio0", upd7201N_device, rxb_w))
- MCFG_RS232_CTS_HANDLER (DEVWRITELINE ("sio0", upd7201N_device, ctsb_w))
-
- MCFG_Z80SIO_ADD("sio1", XTAL_4MHz, 0, 0, 0, 0 )
-MACHINE_CONFIG_END
-
-const device_type VME_P1_MZR8300 = &device_creator<vme_p1_mzr8300_device>;
-
-machine_config_constructor vme_p1_mzr8300_device::device_mconfig_additions() const
-{
- return MACHINE_CONFIG_NAME( mzr8300 );
-}
-
-vme_p1_mzr8300_device::vme_p1_mzr8300_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
- device_t(mconfig, VME_P1_MZR8300, "Mizar 8300 quad channel SIO board", tag, owner, clock, "vme_mzr8300", __FILE__)
- ,device_vme_p1_card_interface(mconfig, *this)
- ,m_sio0(*this, "sio0")
-{
-}
-
-vme_p1_mzr8300_device::vme_p1_mzr8300_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source) :
- device_t(mconfig, type, name, tag, owner, clock, shortname, source)
- ,device_vme_p1_card_interface(mconfig, *this)
- ,m_sio0(*this, "sio0")
-{
-}
-
-//-------------------------------------------------
-// device_start - device-specific startup
-//-------------------------------------------------
-
-void vme_p1_mzr8300_device::device_start()
-{
-}
-
-//-------------------------------------------------
-// device_reset - device-specific reset
-//-------------------------------------------------
-
-void vme_p1_mzr8300_device::device_reset()
-{
-}
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 176886b00b1..7bf23ce4aa5 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -27687,9 +27687,6 @@ mustachei // (c) 1987 IG SPA
@source:mvme147.cpp
mvme147 // (c) 1989 Motorola
-@source:mvme350.cpp
-mvme350 //
-
@source:mw18w.cpp
18w // 653 (c) 1979 Midway
18w2 // 653 (c) 1979 Midway
diff --git a/src/mame/mess.flt b/src/mame/mess.flt
index ee9d760fba5..d839ed106ff 100644
--- a/src/mame/mess.flt
+++ b/src/mame/mess.flt
@@ -373,7 +373,6 @@ mtx.cpp
multi16.cpp
multi8.cpp
mvme147.cpp
-mvme350.cpp
mx2178.cpp
myb3k.cpp
mycom.cpp