summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/sun4c_mmu.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/sun4c_mmu.h')
-rw-r--r--src/devices/machine/sun4c_mmu.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/devices/machine/sun4c_mmu.h b/src/devices/machine/sun4c_mmu.h
index 1386867a7ce..51bf57c4aa3 100644
--- a/src/devices/machine/sun4c_mmu.h
+++ b/src/devices/machine/sun4c_mmu.h
@@ -59,6 +59,11 @@ public:
template <insn_data_mode MODE> uint32_t insn_data_r(const uint32_t offset, const uint32_t mem_mask);
template <insn_data_mode MODE> void insn_data_w(const uint32_t offset, const uint32_t data, const uint32_t mem_mask);
+ uint32_t type1_timeout_r(uint32_t offset);
+ void type1_timeout_w(uint32_t offset, uint32_t data);
+ uint32_t parity_r(uint32_t offset, uint32_t mem_mask);
+ void parity_w(uint32_t offset, uint32_t data, uint32_t mem_mask);
+
// sparc_mmu_device overrides
uint32_t fetch_insn(const bool supervisor, const uint32_t offset) override;
uint32_t read_asi(uint8_t asi, uint32_t offset, uint32_t mem_mask) override;
@@ -148,6 +153,10 @@ protected:
uint8_t m_system_enable;
bool m_fetch_bootrom;
uint32_t m_buserr[16];
+ uint32_t m_type1_offset;
+ uint32_t m_parity_err_reg;
+ uint32_t m_memory_err_reg;
+ uint32_t m_parity_err;
// Pre-computed data for optimization purposes
std::unique_ptr<std::unique_ptr<uint32_t[]>[]> m_segmap_masked;
@@ -167,6 +176,7 @@ protected:
uint32_t m_ram_set_base[4];
uint32_t m_populated_ram_words;
emu_timer *m_reset_timer;
+ bool m_log_mem;
};
class sun4_mmu_device : public sun4_mmu_base_device