summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/amis2000/amis2000.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/amis2000/amis2000.h')
-rw-r--r--src/devices/cpu/amis2000/amis2000.h42
1 files changed, 21 insertions, 21 deletions
diff --git a/src/devices/cpu/amis2000/amis2000.h b/src/devices/cpu/amis2000/amis2000.h
index d411a1b5f60..dc4b6d8e832 100644
--- a/src/devices/cpu/amis2000/amis2000.h
+++ b/src/devices/cpu/amis2000/amis2000.h
@@ -6,9 +6,10 @@
*/
-#ifndef _AMIS2000_H_
-#define _AMIS2000_H_
+#ifndef MAME_CPU_AMIS2000_AMIS2000_H
+#define MAME_CPU_AMIS2000_AMIS2000_H
+#pragma once
// generic input pins (4 bits each)
@@ -42,9 +43,19 @@
class amis2000_base_device : public cpu_device
{
public:
+ // static configuration helpers
+ template <class Object> static devcb_base &set_read_k_callback(device_t &device, Object &&cb) { return downcast<amis2000_base_device &>(device).m_read_k.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_read_i_callback(device_t &device, Object &&cb) { return downcast<amis2000_base_device &>(device).m_read_i.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_read_d_callback(device_t &device, Object &&cb) { return downcast<amis2000_base_device &>(device).m_read_d.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_write_d_callback(device_t &device, Object &&cb) { return downcast<amis2000_base_device &>(device).m_write_d.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_write_a_callback(device_t &device, Object &&cb) { return downcast<amis2000_base_device &>(device).m_write_a.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_write_f_callback(device_t &device, Object &&cb) { return downcast<amis2000_base_device &>(device).m_write_f.set_callback(std::forward<Object>(cb)); }
+ static void set_7seg_table(device_t &device, const u8 *ptr) { downcast<amis2000_base_device &>(device).m_7seg_table = ptr; }
+
+protected:
// construction/destruction
- amis2000_base_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, u32 clock, u8 bu_bits, u8 callstack_bits, u8 callstack_depth, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data, const char *shortname, const char *source)
- : cpu_device(mconfig, type, name, tag, owner, clock, shortname, source)
+ amis2000_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 bu_bits, u8 callstack_bits, u8 callstack_depth, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data)
+ : cpu_device(mconfig, type, tag, owner, clock)
, m_program_config("program", ENDIANNESS_BIG, 8, prgwidth, 0, program)
, m_data_config("data", ENDIANNESS_BIG, 8, datawidth, 0, data)
, m_bu_bits(bu_bits)
@@ -57,18 +68,9 @@ public:
, m_write_d(*this)
, m_write_a(*this)
, m_write_f(*this)
- { }
-
- // static configuration helpers
- template<class _Object> static devcb_base &set_read_k_callback(device_t &device, _Object object) { return downcast<amis2000_base_device &>(device).m_read_k.set_callback(object); }
- template<class _Object> static devcb_base &set_read_i_callback(device_t &device, _Object object) { return downcast<amis2000_base_device &>(device).m_read_i.set_callback(object); }
- template<class _Object> static devcb_base &set_read_d_callback(device_t &device, _Object object) { return downcast<amis2000_base_device &>(device).m_read_d.set_callback(object); }
- template<class _Object> static devcb_base &set_write_d_callback(device_t &device, _Object object) { return downcast<amis2000_base_device &>(device).m_write_d.set_callback(object); }
- template<class _Object> static devcb_base &set_write_a_callback(device_t &device, _Object object) { return downcast<amis2000_base_device &>(device).m_write_a.set_callback(object); }
- template<class _Object> static devcb_base &set_write_f_callback(device_t &device, _Object object) { return downcast<amis2000_base_device &>(device).m_write_f.set_callback(object); }
- static void set_7seg_table(device_t &device, const u8 *ptr) { downcast<amis2000_base_device &>(device).m_7seg_table = ptr; }
+ {
+ }
-protected:
// device-level overrides
virtual void device_start() override;
virtual void device_reset() override;
@@ -236,10 +238,8 @@ protected:
};
+DECLARE_DEVICE_TYPE(AMI_S2000, amis2000_cpu_device)
+DECLARE_DEVICE_TYPE(AMI_S2150, amis2150_cpu_device)
+DECLARE_DEVICE_TYPE(AMI_S2152, amis2152_cpu_device)
-extern const device_type AMI_S2000;
-extern const device_type AMI_S2150;
-extern const device_type AMI_S2152;
-
-
-#endif /* _AMIS2000_H_ */
+#endif // MAME_CPU_AMIS2000_AMIS2000_H