diff options
author | mooglyguy <therealmogminer@gmail.com> | 2019-02-04 19:51:04 +0100 |
---|---|---|
committer | MooglyGuy <therealmogminer@gmail.com> | 2019-02-04 19:51:28 +0100 |
commit | 1290a5d0bbd78bd7a833a0a89c3f98e6d119eb7e (patch) | |
tree | a73c0372c6d5ff56eabbb34ce78721d02e2b0b3d | |
parent | 759b7c3c88368ce833b59404d1d205dc88606996 (diff) |
-devices/bus/cgenie: Removed MCFG macros, nw
-devices/bus/ep64: Removed unused MCFG macros, nw
-devices/bus/nasbus: Fixed crash, nw
-devices/bus/svi3x8: Fixed potential crash if it were used, nw
-cegenie: Removed MACHINE_CONFIG macros, nw
-rw-r--r-- | src/devices/bus/cgenie/expansion/expansion.h | 20 | ||||
-rw-r--r-- | src/devices/bus/cgenie/parallel/parallel.h | 23 | ||||
-rw-r--r-- | src/devices/bus/ep64/exp.h | 21 | ||||
-rw-r--r-- | src/devices/bus/nasbus/nasbus.cpp | 13 | ||||
-rw-r--r-- | src/devices/bus/nasbus/nasbus.h | 6 | ||||
-rw-r--r-- | src/devices/bus/svi3x8/slot/slot.cpp | 19 | ||||
-rw-r--r-- | src/devices/bus/svi3x8/slot/slot.h | 11 | ||||
-rw-r--r-- | src/mame/drivers/cgenie.cpp | 23 | ||||
-rw-r--r-- | src/mame/drivers/nascom1.cpp | 2 |
9 files changed, 58 insertions, 80 deletions
diff --git a/src/devices/bus/cgenie/expansion/expansion.h b/src/devices/bus/cgenie/expansion/expansion.h index 2dd6f659f5e..d64651d8968 100644 --- a/src/devices/bus/cgenie/expansion/expansion.h +++ b/src/devices/bus/cgenie/expansion/expansion.h @@ -39,7 +39,8 @@ #pragma once - +// include here so drivers don't need to +#include "carts.h" //************************************************************************** // INTERFACE CONFIGURATION MACROS @@ -69,6 +70,14 @@ class cg_exp_slot_device : public device_t, public device_slot_interface { public: // construction/destruction + cg_exp_slot_device(machine_config const &mconfig, char const *tag, device_t *owner) + : cg_exp_slot_device(mconfig, tag, owner, (uint32_t)0) + { + option_reset(); + cg_exp_slot_carts(*this); + set_default_option(nullptr); + set_fixed(false); + } cg_exp_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); virtual ~cg_exp_slot_device(); @@ -76,9 +85,9 @@ public: void set_io_space(address_space *io); // callbacks - template <class Object> devcb_base &set_int_handler(Object &&cb) { return m_int_handler.set_callback(std::forward<Object>(cb)); } - template <class Object> devcb_base &set_nmi_handler(Object &&cb) { return m_nmi_handler.set_callback(std::forward<Object>(cb)); } - template <class Object> devcb_base &set_reset_handler(Object &&cb) { return m_reset_handler.set_callback(std::forward<Object>(cb)); } + auto int_handler() { return m_int_handler.bind(); } + auto nmi_handler() { return m_nmi_handler.bind(); } + auto reset_handler() { return m_reset_handler.bind(); } // called from cart device DECLARE_WRITE_LINE_MEMBER( int_w ) { m_int_handler(state); } @@ -117,7 +126,4 @@ protected: // device type definition DECLARE_DEVICE_TYPE(CG_EXP_SLOT, cg_exp_slot_device) -// include here so drivers don't need to -#include "carts.h" - #endif // MAME_BUS_CGENIE_EXPANSION_EXPANSION_H diff --git a/src/devices/bus/cgenie/parallel/parallel.h b/src/devices/bus/cgenie/parallel/parallel.h index 9bc8d5665c4..b31f8c749f4 100644 --- a/src/devices/bus/cgenie/parallel/parallel.h +++ b/src/devices/bus/cgenie/parallel/parallel.h @@ -24,16 +24,8 @@ #pragma once - - -//************************************************************************** -// INTERFACE CONFIGURATION MACROS -//************************************************************************** - -#define MCFG_CG_PARALLEL_SLOT_ADD(_tag) \ - MCFG_DEVICE_ADD(_tag, CG_PARALLEL_SLOT, 0) \ - MCFG_DEVICE_SLOT_INTERFACE(cg_parallel_slot_carts, nullptr, false) - +// include here so drivers don't need to +#include "carts.h" //************************************************************************** // TYPE DEFINITIONS @@ -45,6 +37,14 @@ class cg_parallel_slot_device : public device_t, public device_slot_interface { public: // construction/destruction + cg_parallel_slot_device(machine_config const &mconfig, char const *tag, device_t *owner) + : cg_parallel_slot_device(mconfig, tag, owner, (uint32_t)0) + { + option_reset(); + cg_parallel_slot_carts(*this); + set_default_option(nullptr); + set_fixed(false); + } cg_parallel_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); virtual ~cg_parallel_slot_device(); @@ -86,7 +86,4 @@ protected: // device type definition DECLARE_DEVICE_TYPE(CG_PARALLEL_SLOT, cg_parallel_slot_device) -// include here so drivers don't need to -#include "carts.h" - #endif // MAME_BUS_CGENIE_PARALLEL_PARALLEL_H diff --git a/src/devices/bus/ep64/exp.h b/src/devices/bus/ep64/exp.h index cb29bab5049..43e666c1ae1 100644 --- a/src/devices/bus/ep64/exp.h +++ b/src/devices/bus/ep64/exp.h @@ -58,27 +58,6 @@ void ep64_expansion_bus_cards(device_slot_interface &device); #define EP64_EXPANSION_BUS_TAG "exp" -//************************************************************************** -// INTERFACE CONFIGURATION MACROS -//************************************************************************** - -#define MCFG_EP64_EXPANSION_BUS_SLOT_ADD(_tag, _def_slot) \ - MCFG_DEVICE_ADD(_tag, EP64_EXPANSION_BUS_SLOT, 0) \ - MCFG_DEVICE_SLOT_INTERFACE(ep64_expansion_bus_cards, _def_slot, false) - -#define MCFG_EP64_EXPANSION_BUS_SLOT_DAVE(_tag) \ - downcast<ep64_expansion_bus_slot_device &>(*device).set_dave_tag(_tag); - -#define MCFG_EP64_EXPANSION_BUS_SLOT_IRQ_CALLBACK(_write) \ - downcast<ep64_expansion_bus_slot_device &>(*device).set_irq_wr_callback(DEVCB_##_write); - -#define MCFG_EP64_EXPANSION_BUS_SLOT_NMI_CALLBACK(_write) \ - downcast<ep64_expansion_bus_slot_device &>(*device).set_nmi_wr_callback(DEVCB_##_write); - -#define MCFG_EP64_EXPANSION_BUS_SLOT_WAIT_CALLBACK(_write) \ - downcast<ep64_expansion_bus_slot_device &>(*device).set_wait_wr_callback(DEVCB_##_write); - - //************************************************************************** // TYPE DEFINITIONS diff --git a/src/devices/bus/nasbus/nasbus.cpp b/src/devices/bus/nasbus/nasbus.cpp index 585b1043c07..817e486af8f 100644 --- a/src/devices/bus/nasbus/nasbus.cpp +++ b/src/devices/bus/nasbus/nasbus.cpp @@ -22,15 +22,14 @@ DEFINE_DEVICE_TYPE(NASBUS_SLOT, nasbus_slot_device, "nasbus_slot", "NASBUS Slot" // nasbus_slot_device - constructor //------------------------------------------------- -nasbus_slot_device::nasbus_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : - nasbus_slot_device(mconfig, NASBUS_SLOT, tag, owner, clock) +nasbus_slot_device::nasbus_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + : nasbus_slot_device(mconfig, NASBUS_SLOT, tag, owner, clock) { } -nasbus_slot_device::nasbus_slot_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : - device_t(mconfig, type, tag, owner, clock), - device_slot_interface(mconfig, *this), - m_nasbus_tag(nullptr) +nasbus_slot_device::nasbus_slot_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) + : device_t(mconfig, type, tag, owner, clock) + , device_slot_interface(mconfig, *this) { } @@ -44,7 +43,7 @@ void nasbus_slot_device::device_start() if (dev) { - nasbus_device *m_nasbus = downcast<nasbus_device *>(m_owner->subdevice(m_nasbus_tag)); + nasbus_device *m_nasbus = downcast<nasbus_device *>(owner()->subdevice(NASBUS_TAG)); m_nasbus->add_card(dev); } } diff --git a/src/devices/bus/nasbus/nasbus.h b/src/devices/bus/nasbus/nasbus.h index 4968f8d966b..bdeb39a879f 100644 --- a/src/devices/bus/nasbus/nasbus.h +++ b/src/devices/bus/nasbus/nasbus.h @@ -122,20 +122,14 @@ public: opts(*this); set_default_option(dflt); set_fixed(false); - set_nasbus_slot(this, NASBUS_TAG); } nasbus_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // inline configuration - void set_nasbus_slot(device_t *owner, const char *nasbus_tag) { m_owner = owner; m_nasbus_tag = nasbus_tag; } protected: nasbus_slot_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); // device-level overrides virtual void device_start() override; - - // configuration - const char *m_nasbus_tag; }; // device type definition diff --git a/src/devices/bus/svi3x8/slot/slot.cpp b/src/devices/bus/svi3x8/slot/slot.cpp index c345d864f4b..ca7f578b17c 100644 --- a/src/devices/bus/svi3x8/slot/slot.cpp +++ b/src/devices/bus/svi3x8/slot/slot.cpp @@ -20,11 +20,11 @@ DEFINE_DEVICE_TYPE(SVI_SLOT_BUS, svi_slot_bus_device, "svislotbus", "SVI Slot Bu // svi_slot_bus_device - constructor //------------------------------------------------- -svi_slot_bus_device::svi_slot_bus_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : - device_t(mconfig, SVI_SLOT_BUS, tag, owner, clock), - m_int_handler(*this), - m_romdis_handler(*this), - m_ramdis_handler(*this) +svi_slot_bus_device::svi_slot_bus_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + : device_t(mconfig, SVI_SLOT_BUS, tag, owner, clock) + , m_int_handler(*this) + , m_romdis_handler(*this) + , m_ramdis_handler(*this) { } @@ -204,10 +204,9 @@ DEFINE_DEVICE_TYPE(SVI_SLOT, svi_slot_device, "svislot", "SVI Slot") // svi_slot_device - constructor //------------------------------------------------- -svi_slot_device::svi_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : - device_t(mconfig, SVI_SLOT, tag, owner, clock), - device_slot_interface(mconfig, *this), - m_bus_tag(nullptr) +svi_slot_device::svi_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + : device_t(mconfig, SVI_SLOT, tag, owner, clock) + , device_slot_interface(mconfig, *this) { } @@ -221,7 +220,7 @@ void svi_slot_device::device_start() if (dev) { - svi_slot_bus_device *bus = downcast<svi_slot_bus_device *>(m_owner->subdevice(m_bus_tag)); + svi_slot_bus_device *bus = downcast<svi_slot_bus_device *>(owner()->subdevice(SVIBUS_TAG)); bus->add_card(dev); } } diff --git a/src/devices/bus/svi3x8/slot/slot.h b/src/devices/bus/svi3x8/slot/slot.h index 3975624eb5a..f27c023edab 100644 --- a/src/devices/bus/svi3x8/slot/slot.h +++ b/src/devices/bus/svi3x8/slot/slot.h @@ -41,6 +41,13 @@ //************************************************************************** +// CONSTANTS / MACROS +//************************************************************************** + +#define SVIBUS_TAG "slot_bux" + + +//************************************************************************** // TYPE DEFINITIONS //************************************************************************** @@ -107,14 +114,10 @@ public: opts(*this); set_default_option(dflt); set_fixed(false); - set_bus(this, "slot_bus"); } svi_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - // inline configuration - void set_bus(device_t *owner, const char *bus_tag) { m_owner = owner; m_bus_tag = bus_tag; } - protected: // device-level overrides virtual void device_start() override; diff --git a/src/mame/drivers/cgenie.cpp b/src/mame/drivers/cgenie.cpp index e34a1fe8bfc..6e61298660a 100644 --- a/src/mame/drivers/cgenie.cpp +++ b/src/mame/drivers/cgenie.cpp @@ -438,16 +438,17 @@ const rgb_t cgenie_state::m_palette_nz[] = // MACHINE DEFINTIONS //************************************************************************** -MACHINE_CONFIG_START(cgenie_state::cgenie) +void cgenie_state::cgenie(machine_config &config) +{ // basic machine hardware - MCFG_DEVICE_ADD("maincpu", Z80, XTAL(17'734'470) / 8) // 2.2168 MHz - MCFG_DEVICE_PROGRAM_MAP(cgenie_mem) - MCFG_DEVICE_IO_MAP(cgenie_io) + Z80(config, m_maincpu, XTAL(17'734'470) / 8); // 2.2168 MHz + m_maincpu->set_addrmap(AS_PROGRAM, &cgenie_state::cgenie_mem); + m_maincpu->set_addrmap(AS_IO, &cgenie_state::cgenie_io); // video hardware - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(17'734'470) / 2, 568, 32, 416, 312, 28, 284) - MCFG_SCREEN_UPDATE_DEVICE("crtc", hd6845_device, screen_update) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(17'734'470) / 2, 568, 32, 416, 312, 28, 284); + screen.set_screen_update("crtc", FUNC(hd6845_device::screen_update)); HD6845(config, m_crtc, XTAL(17'734'470) / 16); m_crtc->set_screen("screen"); @@ -478,15 +479,15 @@ MACHINE_CONFIG_START(cgenie_state::cgenie) rs232.dcd_handler().set(FUNC(cgenie_state::rs232_dcd_w)); // cartridge expansion slot - MCFG_CG_EXP_SLOT_ADD("exp") - MCFG_CG_EXP_SLOT_INT_HANDLER(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) + CG_EXP_SLOT(config, m_exp); + m_exp->int_handler().set_inputline(m_maincpu, INPUT_LINE_IRQ0); // parallel slot - MCFG_CG_PARALLEL_SLOT_ADD("par") + CG_PARALLEL_SLOT(config, "par"); // internal ram RAM(config, RAM_TAG).set_default_size("16K").set_extra_options("32K"); -MACHINE_CONFIG_END +} //************************************************************************** diff --git a/src/mame/drivers/nascom1.cpp b/src/mame/drivers/nascom1.cpp index d6264e1087a..58ec62c5a86 100644 --- a/src/mame/drivers/nascom1.cpp +++ b/src/mame/drivers/nascom1.cpp @@ -110,7 +110,7 @@ class nascom2_state : public nascom_state public: nascom2_state(const machine_config &mconfig, device_type type, const char *tag) : nascom_state(mconfig, type, tag), - m_nasbus(*this, "nasbus"), + m_nasbus(*this, NASBUS_TAG), m_socket1(*this, "socket1"), m_socket2(*this, "socket2"), m_lsw1(*this, "lsw1") |