diff options
Diffstat (limited to 'src/devices')
-rw-r--r-- | src/devices/cpu/m6805/m68705.cpp | 15 | ||||
-rw-r--r-- | src/devices/cpu/m6805/m68705.h | 5 |
2 files changed, 19 insertions, 1 deletions
diff --git a/src/devices/cpu/m6805/m68705.cpp b/src/devices/cpu/m6805/m68705.cpp index 56f955c9b74..bbc96f179f2 100644 --- a/src/devices/cpu/m6805/m68705.cpp +++ b/src/devices/cpu/m6805/m68705.cpp @@ -204,6 +204,7 @@ m68705_new_device::m68705_new_device( char const *shortname, char const *source) : m68705_device(mconfig, tag, owner, clock, type, name, addr_width, internal_map, shortname, source) + , device_nvram_interface(mconfig, *this) , m_user_rom(*this, DEVICE_SELF, u32(1) << addr_width) , m_port_open_drain{ false, false, false, false } , m_port_mask{ 0x00, 0x00, 0x00, 0x00 } @@ -445,6 +446,20 @@ void m68705_new_device::execute_set_input(int inputnum, int state) } } +void m68705_new_device::nvram_default() +{ +} + +void m68705_new_device::nvram_read(emu_file &file) +{ + file.read(&m_user_rom[0], m_user_rom.bytes()); +} + +void m68705_new_device::nvram_write(emu_file &file) +{ + file.write(&m_user_rom[0], m_user_rom.bytes()); +} + /**************************************************************************** * M68705P3x family diff --git a/src/devices/cpu/m6805/m68705.h b/src/devices/cpu/m6805/m68705.h index 5a2a0ff4ea0..86fa2f2f1e8 100644 --- a/src/devices/cpu/m6805/m68705.h +++ b/src/devices/cpu/m6805/m68705.h @@ -81,7 +81,7 @@ protected: devcb = &m68705_new_device::set_port_cb_w<2>(*device, DEVCB_##obj); -class m68705_new_device : public m68705_device +class m68705_new_device : public m68705_device, public device_nvram_interface { public: // static configuration helpers @@ -140,6 +140,9 @@ protected: virtual void device_start() override; virtual void device_reset() override; virtual void execute_set_input(int inputnum, int state) override; + virtual void nvram_default() override; + virtual void nvram_read(emu_file &file) override; + virtual void nvram_write(emu_file &file) override; u8 m_tdr; u8 m_tcr; |