summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2020-03-09 09:35:55 -0400
committer AJR <ajrhacker@users.noreply.github.com>2020-03-09 09:35:55 -0400
commit0caaf4a024efe2c11b7a3894f17e509319786f5e (patch)
treeb977ab0b2e00a2acd6fc4eb83ca578f675c6f1ed /src/devices
parentcd65d52fcd60af6fb44e8651ce74eb317fb0b11e (diff)
New machines marked as NOT_WORKING
---------------------------------- K1 Digital Multi-Dimensional Synthesizer [DBWBP] K1rII Digital Multi-Dimensional Synthesizer Module [DBWBP] K5 Digital Multi-Dimensional Synthesizer [DBWBP] New clones marked as NOT_WORKING -------------------------------- K1m Digital Multi-Dimensional Synthesizer Module [DBWBP] K1r Digital Multi-Dimensional Synthesizer Module [DBWBP] K5m Digital Multi-Dimensional Synthesizer Module [DBWBP]
Diffstat (limited to 'src/devices')
-rw-r--r--src/devices/cpu/upd78k/upd78k3.cpp21
-rw-r--r--src/devices/cpu/upd78k/upd78k3.h14
2 files changed, 31 insertions, 4 deletions
diff --git a/src/devices/cpu/upd78k/upd78k3.cpp b/src/devices/cpu/upd78k/upd78k3.cpp
index c22fd2ee674..f2831c543b2 100644
--- a/src/devices/cpu/upd78k/upd78k3.cpp
+++ b/src/devices/cpu/upd78k/upd78k3.cpp
@@ -12,7 +12,8 @@
#include "upd78k3.h"
#include "upd78k3d.h"
-// device type definition
+// device type definitions
+DEFINE_DEVICE_TYPE(UPD78310, upd78310_device, "upd78310", "NEC uPD78310")
DEFINE_DEVICE_TYPE(UPD78312, upd78312_device, "upd78312", "NEC uPD78312")
//**************************************************************************
@@ -268,14 +269,28 @@ void upd78k3_device::state_string_export(const device_state_entry &entry, std::s
//-------------------------------------------------
upd78312_device::upd78312_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : upd78k3_device(mconfig, UPD78312, tag, owner, clock,
- address_map_constructor(FUNC(upd78312_device::mem_map), this),
+ : upd78312_device(mconfig, UPD78312, tag, owner, clock, address_map_constructor(FUNC(upd78312_device::mem_map), this))
+{
+}
+
+upd78312_device::upd78312_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map)
+ : upd78k3_device(mconfig, type, tag, owner, clock, map,
address_map_constructor(FUNC(upd78312_device::sfr_map), this))
{
}
//-------------------------------------------------
+// upd78310_device - constructor
+//-------------------------------------------------
+
+upd78310_device::upd78310_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
+ : upd78312_device(mconfig, UPD78310, tag, owner, clock, address_map_constructor())
+{
+}
+
+
+//-------------------------------------------------
// create_disassembler -
//-------------------------------------------------
diff --git a/src/devices/cpu/upd78k/upd78k3.h b/src/devices/cpu/upd78k/upd78k3.h
index 1b7d9d663d5..07fcb49534a 100644
--- a/src/devices/cpu/upd78k/upd78k3.h
+++ b/src/devices/cpu/upd78k/upd78k3.h
@@ -98,6 +98,8 @@ public:
upd78312_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
protected:
+ upd78312_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map);
+
// device_disasm_interface overrides
virtual std::unique_ptr<util::disasm_interface> create_disassembler() override;
@@ -113,7 +115,17 @@ private:
void sfr_map(address_map &map);
};
-// device type declaration
+// ======================> upd78310_device
+
+class upd78310_device : public upd78312_device
+{
+public:
+ // device type constructor
+ upd78310_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
+};
+
+// device type declarations
+DECLARE_DEVICE_TYPE(UPD78310, upd78310_device)
DECLARE_DEVICE_TYPE(UPD78312, upd78312_device)
#endif // MAME_CPU_UPD78K_UPD7832_H