summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/ns32082.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/ns32082.h')
-rw-r--r--src/devices/machine/ns32082.h26
1 files changed, 14 insertions, 12 deletions
diff --git a/src/devices/machine/ns32082.h b/src/devices/machine/ns32082.h
index 4818c41bcb5..b8232e25116 100644
--- a/src/devices/machine/ns32082.h
+++ b/src/devices/machine/ns32082.h
@@ -6,27 +6,29 @@
#pragma once
-#include "cpu/ns32000/slave.h"
+#include "cpu/ns32000/common.h"
class ns32082_device
: public device_t
, public ns32000_mmu_interface
+ , public ns32000_slow_slave_interface
{
public:
ns32082_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock);
+ // ns32000_slave_interface implementation
virtual void state_add(device_state_interface &parent, int &index) override;
- virtual u16 read_st(int *icount = nullptr) override;
- virtual u16 read_op() override;
+ // ns32000_slow_slave_interface implementation
+ virtual u16 slow_status(int *icount = nullptr) override;
+ virtual u16 slow_read() override;
+ virtual void slow_write(u16 data) override;
- virtual void write_id(u16 data) override;
- virtual void write_op(u16 data) override;
-
- virtual translate_result translate(address_space &space, unsigned st, u32 &address, bool user, bool write, bool pfs = false, bool debug = false) override;
+ // ns32000_mmu_interface implementation
+ virtual translate_result translate(address_space &space, unsigned st, u32 &address, bool user, bool write, bool pfs = false, bool suppress = false) override;
protected:
- // device_t overrides
+ // device_t implementation
virtual void device_start() override;
virtual void device_reset() override;
@@ -50,16 +52,16 @@ private:
u16 m_opword;
struct operand
{
- unsigned expected;
- unsigned issued;
+ u32 expected;
+ u32 issued;
u64 value;
}
m_op[3];
u16 m_status;
// implementation state
- unsigned m_state;
- unsigned m_tcy;
+ u32 m_state;
+ u32 m_tcy;
};
DECLARE_DEVICE_TYPE(NS32082, ns32082_device)