From f6a7d594960ec49653f2c725c3d1fd1264fc436f Mon Sep 17 00:00:00 2001 From: Joakim Larsson Edstrom Date: Mon, 2 Jan 2017 13:55:34 +0100 Subject: Moved and renamed mame/bus/vme files to devices/bus/vme for now --- scripts/src/bus.lua | 8 ++-- src/devices/bus/vme/vme.cpp | 4 +- src/devices/bus/vme/vme_mzr8105.cpp | 71 ++++++++++++++++++++++++++++ src/devices/bus/vme/vme_mzr8105.h | 24 ++++++++++ src/devices/bus/vme/vme_mzr8300.cpp | 92 +++++++++++++++++++++++++++++++++++++ src/devices/bus/vme/vme_mzr8300.h | 29 ++++++++++++ src/mame/bus/vme/mzr8105.cpp | 71 ---------------------------- src/mame/bus/vme/mzr8105.h | 26 ----------- src/mame/bus/vme/mzr8300.cpp | 92 ------------------------------------- src/mame/bus/vme/mzr8300.h | 31 ------------- src/mame/drivers/mzr8105.cpp | 2 +- 11 files changed, 223 insertions(+), 227 deletions(-) create mode 100644 src/devices/bus/vme/vme_mzr8105.cpp create mode 100644 src/devices/bus/vme/vme_mzr8105.h create mode 100644 src/devices/bus/vme/vme_mzr8300.cpp create mode 100644 src/devices/bus/vme/vme_mzr8300.h delete mode 100644 src/mame/bus/vme/mzr8105.cpp delete mode 100644 src/mame/bus/vme/mzr8105.h delete mode 100644 src/mame/bus/vme/mzr8300.cpp delete mode 100644 src/mame/bus/vme/mzr8300.h diff --git a/scripts/src/bus.lua b/scripts/src/bus.lua index 3833c9fc695..500a076a142 100644 --- a/scripts/src/bus.lua +++ b/scripts/src/bus.lua @@ -1493,12 +1493,12 @@ if (BUSES["VME"]~=null) then files { MAME_DIR .. "src/devices/bus/vme/vme.cpp", MAME_DIR .. "src/devices/bus/vme/vme.h", - MAME_DIR .. "src/mame/bus/vme/mzr8105.cpp", - MAME_DIR .. "src/mame/bus/vme/mzr8105.h", - MAME_DIR .. "src/mame/bus/vme/mzr8300.cpp", - MAME_DIR .. "src/mame/bus/vme/mzr8300.h", + MAME_DIR .. "src/devices/bus/vme/vme_mzr8105.cpp", + MAME_DIR .. "src/devices/bus/vme/vme_mzr8105.h", MAME_DIR .. "src/mame/includes/mzr8105.h", MAME_DIR .. "src/mame/machine/mzr8105.cpp", + MAME_DIR .. "src/devices/bus/vme/vme_mzr8300.cpp", + MAME_DIR .. "src/devices/bus/vme/vme_mzr8300.h", MAME_DIR .. "src/mame/includes/mzr8300.h", MAME_DIR .. "src/mame/machine/mzr8300.cpp", } diff --git a/src/devices/bus/vme/vme.cpp b/src/devices/bus/vme/vme.cpp index 381b7e3075e..9f0ad5ea2d1 100644 --- a/src/devices/bus/vme/vme.cpp +++ b/src/devices/bus/vme/vme.cpp @@ -68,8 +68,8 @@ #include "emu.h" #include "vme.h" -#include "bus/vme/mzr8105.h" -#include "bus/vme/mzr8300.h" +#include "bus/vme/vme_mzr8105.h" +#include "bus/vme/vme_mzr8300.h" #define LOG_GENERAL 0x01 #define LOG_SETUP 0x02 diff --git a/src/devices/bus/vme/vme_mzr8105.cpp b/src/devices/bus/vme/vme_mzr8105.cpp new file mode 100644 index 00000000000..017255ba9e1 --- /dev/null +++ b/src/devices/bus/vme/vme_mzr8105.cpp @@ -0,0 +1,71 @@ +// license:BSD-3-Clause +// copyright-holders:Joakim Larsson Edstrom + +#include "emu.h" +#include "vme_mzr8105.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 + +//************************************************************************** +// GLOBAL VARIABLES +//************************************************************************** + +const device_type VME_MZR8105 = &device_creator; + +//------------------------------------------------- +// machine_config_additions - device-specific +// machine configurations +//------------------------------------------------- + +MACHINE_CONFIG_EXTERN( mzr8105 ); + +machine_config_constructor vme_mzr8105_card_device::device_mconfig_additions() const +{ + LOG("%s %s\n", tag(), FUNCNAME); + return MACHINE_CONFIG_NAME( mzr8105 ); +} + +vme_mzr8105_card_device::vme_mzr8105_card_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : + device_t(mconfig, VME_MZR8105, "Mizar 8105 68K CPU board", tag, owner, clock, "mzr8105", __FILE__), + device_vme_p1_card_interface(mconfig, *this) +{ + m_slot = 1; + LOG("%s %s\n", tag, FUNCNAME); +} + +vme_mzr8105_card_device::vme_mzr8105_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); +} + +void vme_mzr8105_card_device::device_start() +{ + LOG("%s %s\n", tag(), FUNCNAME); +} + +void vme_mzr8105_card_device::device_reset() +{ + LOG("%s %s\n", tag(), FUNCNAME); +} diff --git a/src/devices/bus/vme/vme_mzr8105.h b/src/devices/bus/vme/vme_mzr8105.h new file mode 100644 index 00000000000..55aa77d25c5 --- /dev/null +++ b/src/devices/bus/vme/vme_mzr8105.h @@ -0,0 +1,24 @@ +// license:BSD-3-Clause +// copyright-holders:Joakim Larsson Edstrom +#ifndef VME_MZR8105_H +#define VME_MZR8105_H +#pragma once + +#include "bus/vme/vme.h" + +extern const device_type VME_MZR8105; + +class vme_mzr8105_card_device : public device_t + ,public device_vme_p1_card_interface +{ +public: + vme_mzr8105_card_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + vme_mzr8105_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; +private: + virtual void device_start() override; + virtual void device_reset() override; +}; + +#endif // VME_MZR8105_H diff --git a/src/devices/bus/vme/vme_mzr8300.cpp b/src/devices/bus/vme/vme_mzr8300.cpp new file mode 100644 index 00000000000..f6d27379994 --- /dev/null +++ b/src/devices/bus/vme/vme_mzr8300.cpp @@ -0,0 +1,92 @@ +// license:BSD-3-Clause +// copyright-holders:Joakim Larsson Edstrom + +#include "emu.h" +#include "vme_mzr8300.h" +#include "machine/z80sio.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 + +//************************************************************************** +// GLOBAL VARIABLES +//************************************************************************** + +const device_type VME_MZR8300 = &device_creator; + +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); +} + +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) +{ + LOG("%s %s\n", tag, FUNCNAME); +} + +void vme_mzr8300_card_device::device_start() +{ + LOG("%s %s\n", tag(), FUNCNAME); + set_vme_p1_device(); + + /* Setup r/w handlers for first SIO in A16 */ + uint32_t base = 0xFF0000; + m_vme_p1->install_device(base + 0, base + 1, // Channel B - Data + read8_delegate(FUNC(z80sio_device::db_r), subdevice("sio0")), write8_delegate(FUNC(z80sio_device::db_w), subdevice("sio0")), 0x00ff); + m_vme_p1->install_device(base + 2, base + 3, // Channel B - Control + read8_delegate(FUNC(z80sio_device::cb_r), subdevice("sio0")), write8_delegate(FUNC(z80sio_device::cb_w), subdevice("sio0")), 0x00ff); + m_vme_p1->install_device(base + 4, base + 5, // Channel A - Data + read8_delegate(FUNC(z80sio_device::da_r), subdevice("sio0")), write8_delegate(FUNC(z80sio_device::da_w), subdevice("sio0")), 0x00ff); + m_vme_p1->install_device(base + 6, base + 7, // Channel A - Control + read8_delegate(FUNC(z80sio_device::ca_r), subdevice("sio0")), write8_delegate(FUNC(z80sio_device::ca_w), subdevice("sio0")), 0x00ff); +} + +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 ); +} + +READ8_MEMBER (vme_mzr8300_card_device::read8){ + LOG("%s()\n", FUNCNAME); + return (uint8_t) 0; +} + +WRITE8_MEMBER (vme_mzr8300_card_device::write8){ + LOG("%s()\n", FUNCNAME); +} diff --git a/src/devices/bus/vme/vme_mzr8300.h b/src/devices/bus/vme/vme_mzr8300.h new file mode 100644 index 00000000000..7f8ae0922ae --- /dev/null +++ b/src/devices/bus/vme/vme_mzr8300.h @@ -0,0 +1,29 @@ +// license:BSD-3-Clause +// copyright-holders:Joakim Larsson Edstrom +#ifndef VME_MZR8300_H +#define VME_MZR8300_H +#pragma once + +#include "bus/vme/vme.h" + +extern const device_type VME_MZR8300; + +class vme_mzr8300_card_device : + public device_t + ,public device_vme_p1_card_interface +{ +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 + + virtual machine_config_constructor device_mconfig_additions() const override; + virtual DECLARE_READ8_MEMBER (read8) override; + virtual DECLARE_WRITE8_MEMBER (write8) override; +protected: + virtual void device_start() override; + virtual void device_reset() override; +private: +}; + +#endif // VME_MZR8300_H diff --git a/src/mame/bus/vme/mzr8105.cpp b/src/mame/bus/vme/mzr8105.cpp deleted file mode 100644 index e0a722ab0eb..00000000000 --- a/src/mame/bus/vme/mzr8105.cpp +++ /dev/null @@ -1,71 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Joakim Larsson Edstrom - -#include "emu.h" -#include "mzr8105.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 - -//************************************************************************** -// GLOBAL VARIABLES -//************************************************************************** - -const device_type VME_MZR8105 = &device_creator; - -//------------------------------------------------- -// machine_config_additions - device-specific -// machine configurations -//------------------------------------------------- - -MACHINE_CONFIG_EXTERN( mzr8105 ); - -machine_config_constructor vme_mzr8105_card_device::device_mconfig_additions() const -{ - LOG("%s %s\n", tag(), FUNCNAME); - return MACHINE_CONFIG_NAME( mzr8105 ); -} - -vme_mzr8105_card_device::vme_mzr8105_card_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : - device_t(mconfig, VME_MZR8105, "Mizar 8105 68K CPU board", tag, owner, clock, "mzr8105", __FILE__), - device_vme_p1_card_interface(mconfig, *this) -{ - m_slot = 1; - LOG("%s %s\n", tag, FUNCNAME); -} - -vme_mzr8105_card_device::vme_mzr8105_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); -} - -void vme_mzr8105_card_device::device_start() -{ - LOG("%s %s\n", tag(), FUNCNAME); -} - -void vme_mzr8105_card_device::device_reset() -{ - LOG("%s %s\n", tag(), FUNCNAME); -} diff --git a/src/mame/bus/vme/mzr8105.h b/src/mame/bus/vme/mzr8105.h deleted file mode 100644 index 50041eac7fe..00000000000 --- a/src/mame/bus/vme/mzr8105.h +++ /dev/null @@ -1,26 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Joakim Larsson Edstrom -#ifndef VME_MZR8105_H -#define VME_MZR8105_H -#pragma once - -#include "bus/vme/vme.h" -//#include "includes/mzr8105.h" -#include "bus/vme/mzr8105.h" - -extern const device_type VME_MZR8105; - -class vme_mzr8105_card_device : public device_t - ,public device_vme_p1_card_interface -{ -public: - vme_mzr8105_card_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - vme_mzr8105_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; -private: - virtual void device_start() override; - virtual void device_reset() override; -}; - -#endif // VME_MZR8105_H diff --git a/src/mame/bus/vme/mzr8300.cpp b/src/mame/bus/vme/mzr8300.cpp deleted file mode 100644 index 669f1579b28..00000000000 --- a/src/mame/bus/vme/mzr8300.cpp +++ /dev/null @@ -1,92 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Joakim Larsson Edstrom - -#include "emu.h" -#include "mzr8300.h" -#include "machine/z80sio.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 - -//************************************************************************** -// GLOBAL VARIABLES -//************************************************************************** - -const device_type VME_MZR8300 = &device_creator; - -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); -} - -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) -{ - LOG("%s %s\n", tag, FUNCNAME); -} - -void vme_mzr8300_card_device::device_start() -{ - LOG("%s %s\n", tag(), FUNCNAME); - set_vme_p1_device(); - - /* Setup r/w handlers for first SIO in A16 */ - uint32_t base = 0xFF0000; - m_vme_p1->install_device(base + 0, base + 1, // Channel B - Data - read8_delegate(FUNC(z80sio_device::db_r), subdevice("sio0")), write8_delegate(FUNC(z80sio_device::db_w), subdevice("sio0")), 0x00ff); - m_vme_p1->install_device(base + 2, base + 3, // Channel B - Control - read8_delegate(FUNC(z80sio_device::cb_r), subdevice("sio0")), write8_delegate(FUNC(z80sio_device::cb_w), subdevice("sio0")), 0x00ff); - m_vme_p1->install_device(base + 4, base + 5, // Channel A - Data - read8_delegate(FUNC(z80sio_device::da_r), subdevice("sio0")), write8_delegate(FUNC(z80sio_device::da_w), subdevice("sio0")), 0x00ff); - m_vme_p1->install_device(base + 6, base + 7, // Channel A - Control - read8_delegate(FUNC(z80sio_device::ca_r), subdevice("sio0")), write8_delegate(FUNC(z80sio_device::ca_w), subdevice("sio0")), 0x00ff); -} - -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 ); -} - -READ8_MEMBER (vme_mzr8300_card_device::read8){ - LOG("%s()\n", FUNCNAME); - return (uint8_t) 0; -} - -WRITE8_MEMBER (vme_mzr8300_card_device::write8){ - LOG("%s()\n", FUNCNAME); -} diff --git a/src/mame/bus/vme/mzr8300.h b/src/mame/bus/vme/mzr8300.h deleted file mode 100644 index 009e47c8dd6..00000000000 --- a/src/mame/bus/vme/mzr8300.h +++ /dev/null @@ -1,31 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Joakim Larsson Edstrom -#ifndef VME_MZR8300_H -#define VME_MZR8300_H -#pragma once - -#include "bus/vme/vme.h" -//#include "includes/mzr8300.h" -#include "bus/vme/mzr8300.h" - -extern const device_type VME_MZR8300; - -class vme_mzr8300_card_device : - public device_t - ,public device_vme_p1_card_interface -{ -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 - - virtual machine_config_constructor device_mconfig_additions() const override; - virtual DECLARE_READ8_MEMBER (read8) override; - virtual DECLARE_WRITE8_MEMBER (write8) override; -protected: - virtual void device_start() override; - virtual void device_reset() override; -private: -}; - -#endif // VME_MZR8300_H diff --git a/src/mame/drivers/mzr8105.cpp b/src/mame/drivers/mzr8105.cpp index 129146b6e7e..539dab9d4f3 100644 --- a/src/mame/drivers/mzr8105.cpp +++ b/src/mame/drivers/mzr8105.cpp @@ -3,7 +3,7 @@ #include "emu.h" #include "includes/mzr8105.h" -#include "bus/vme/mzr8300.h" +#include "bus/vme/vme_mzr8300.h" #include "cpu/m68000/m68000.h" #include "machine/clock.h" -- cgit v1.2.3 From 78894985e17a7e243f42dcb771961ae3120e0166 Mon Sep 17 00:00:00 2001 From: Joakim Larsson Edstrom Date: Mon, 2 Jan 2017 13:58:31 +0100 Subject: removed stale file --- src/devices/bus/vme/vme_mvme350.c | 257 -------------------------------------- 1 file changed, 257 deletions(-) delete mode 100644 src/devices/bus/vme/vme_mvme350.c diff --git a/src/devices/bus/vme/vme_mvme350.c b/src/devices/bus/vme/vme_mvme350.c deleted file mode 100644 index 69bbbe618d7..00000000000 --- a/src/devices/bus/vme/vme_mvme350.c +++ /dev/null @@ -1,257 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Joakim Larsson Edstrom -/*************************************************************************** - * - * Motorola MVME-350 6U Intelligent Tape Controller driver, initially derived - * from hk68v10.c - * - * 31/08/2015 - * - * I baught this board from http://www.retrotechnology.com without documentation. - * It has a Motorola 68010 CPU @ 10MHz, 128 Mb RAM and two 2764 EPROMS with - * QIC-02 tape controller firmware. The board also populates a 68230 PIT and loads - * of descrete TTL components. - * - * - * || - * || || - * ||||--|| - * ||||--|| - * || ||__________________________________________________________ ___ - * ||_______________________________________________________ |_| | - * || |74F74 | xxxxx | xxxxx | 74LS245 | 74ALS645| | | | - * || |______|________|_________|___________| ________| | | | - * || |74F74 | xxxxx | xxxxx | 74LS245 | 74ALS645| | | | - * || |______|________|_________|___________| ________| | | | - * || |74LS02| 74LS08||Am25LS251| 74S38 |74LS20|Jumpers | | | - * || |______|_______||_________|_______|______|______| | |VME| - * || |74F04 | 74LS32||74LS374 | 74LS374 |74S244 | | | | - * ||+---+ |______|_______||_________|___________|_________| | |P1 | - * |||CON| |74F04 | 74LS85||74S244 | 74S240 |PAL | | | | - * ||| | |______|_______||_________|___________|_________| | | | - * ||| | |74LS04| | |74S244 | | | | - * ||| | |______| | PIT |_________| | | | - * ||| | |74LS125 | MC68230L10 |74LS145 | | | | - * ||| | |______| __|_______________________|---------| | | | - * ||| | |74LS74| |25LS251 | | RAM |74S244 | |_| | - * ||+---+ ---------- |---------- | HM6264P-12 |---------| |___| - * || | PAL | | 74245 | |______________|74S244 | | - * || +--------- |_________| | U40 27128 |---------| | - * || | 74F32 | | || System ROM |74LS682 | | - * Red || +-------- | CPU || |-+-------| | - * FAIL ||LED | 74F138| | MC68010 |+--------------+ |DIPSW__| | - * Red || +-------- | || RAM | |74S38 | | - * HALT ||LED | 74F32 | |__________|| HM6264P-12 | |______ | | - * Green || +-------+ |74245 |+--------------+ |74F08 | | - * RUN ||LED |XTAL | |__________|| U47 27128 | |______ | |___ - * ||+---+|20MHz | |74244 || System ROM | |74F00 | _| | - * |||CON|--------+___|__________|+--------------+_|_______| | | | - * ||| |74LS08 |74F74 |74LS148| |PAL | | PAL | | | | - * ||| |________|________|_______| |________|_|_________| | | | - * ||| | 74LS138|74F32 | PAL | |74F74 |Am29823 | | | | - * ||| |________|________|_______| |________|-+---------| | |VME| - * ||| | 74LS11 |74F04 |74LS374| |74LS374 | |74S240 | | | | - * ||| |________|________|_______| |________|_|---------| | |P2 | - * ||| | 74F138 |BLANK |74LS374| |74LS374 |74S240 | | | | - * ||| |________|________|_______| +----------+---------| | | | - * ||| | 74LS08 |74F32 |74LS11|74LS393|74LS393|resistors | | | - * ||| |________|________|______|______ |_______|________| | | | - * ||| |DM2585 |74F74 |DM2230| 74LS00| 74F02 |74F32 | | | | - * ||+---+--------+--------+------+-------+---------+------| | | | - * || |74LS74 |74F20 |74S260| 74S74 | 74F08 |74LS02| | | | - * || +------------------------------------------+------| | | | - * || |DM2353 |74F10 |74F32 | 74LS32| 74F08 |DM2353| |_| | - * || +------------------------------------------+------+-+ |___| - * || ||------------------------------------------------------------+-+ - * ||||--|| - * ||||--|| - * || - * - * 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 - * - * Description - * ------------ - * Streaming Tape Controller released 1984 with the following feature set - * - * - Double High (6U) VMEmodule - * - QIC-02 Streaming Tape Interface - * - Supports One 01C-02 compatible 1/4-inch Streaming Tape Drive - * - Standard VMEbus Interface - * - Supports 24- or 32-bit DMA Addressing/16-bit Data - * - Generates Seven Levels of VMEbus Interrupts with Programmable Interrupt Vector - * - 10 MHz MC68010 Microprocessor - * - 90Kb/s Continuous Transfer Rate for QIC-02 Interface, 200Kb/s Burst rate - * - Controls Tape Cartridges Offering 20Mb, 45Mb and 60Mb of Formatted Data Storage - * - MC68230 PIT-based Timer - * - 16Kb of Static RAM Provides Buffer Storage and CPU Workspace - * - Multitasking Kernel-based Firmware Package - * - Buffered Pipe Communication Protocol Allows Multiple Hosts to Oueue Commands Without Interlock - * - High Level Command/Status Packets offer efficient Operating System Support - * - Permits Chaining of Host Command - * - * Address Map - * -------------------------------------------------------------------------- - * Local to VME Decscription - * -------------------------------------------------------------------------- - * 0x000000 Up to 128Kb System ROM with RESET vector - * 0x020000 RAM with vectors - * 0x020500 RAM Top of stack - * 0x040000 PIT device? - * 0x060000 RAM? - * 0x080000 PIT device? - * -------------------------------------------------------------------------- - * - * 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 M10 V10 - * ---------------------------------------------------------- - * - * - * TODO: - * - Dump the ROMs (DONE) - * - Setup a working address map (STARTED) - * - Get documentation for VME interface - * - Add VME bus driver - * - 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. - * - ****************************************************************************/ - -#include "emu.h" -#include "cpu/m68000/m68000.h" -#include "machine/68230pit.h" - -#define LOG(x) x - -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") -{ -} - -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 (); -virtual void machine_reset (); -protected: - -private: - required_device m_maincpu; - required_device m_pit; - -}; - -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 ?*/ -#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 - -/* Start it up */ -void mvme350_state::machine_start () -{ - LOG (logerror ("machine_start\n")); -} - -void mvme350_state::machine_reset () -{ - LOG (logerror ("machine_reset\n")); -} - -#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; -} - -WRITE16_MEMBER (mvme350_state::vme_a24_w){ - LOG (logerror ("vme_a24_w\n")); -} - -READ16_MEMBER (mvme350_state::vme_a16_r){ - LOG (logerror ("vme_16_r\n")); - return (uint16_t) 0; -} - -WRITE16_MEMBER (mvme350_state::vme_a16_w){ - LOG (logerror ("vme_a16_w\n")); -} -#endif - -/* - * 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) - -MACHINE_CONFIG_END - -/* 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)) - -/* - * 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 - -/* 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 ) -- cgit v1.2.3