summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/am9517a.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/am9517a.cpp')
-rw-r--r--src/devices/machine/am9517a.cpp45
1 files changed, 24 insertions, 21 deletions
diff --git a/src/devices/machine/am9517a.cpp b/src/devices/machine/am9517a.cpp
index 4e99e678f20..0d58c0cf788 100644
--- a/src/devices/machine/am9517a.cpp
+++ b/src/devices/machine/am9517a.cpp
@@ -482,27 +482,6 @@ void am9517a_device::device_start()
elem.m_mode = 0;
}
- // state saving
- save_item(NAME(m_msb));
- save_item(NAME(m_hreq));
- save_item(NAME(m_hack));
- save_item(NAME(m_ready));
- save_item(NAME(m_eop));
- save_item(NAME(m_state));
- save_item(NAME(m_current_channel));
- save_item(NAME(m_last_channel));
- save_item(NAME(m_command));
- save_item(NAME(m_mask));
- save_item(NAME(m_status));
- save_item(NAME(m_temp));
- save_item(NAME(m_request));
-
- save_item(STRUCT_MEMBER(m_channel, m_address));
- save_item(STRUCT_MEMBER(m_channel, m_count));
- save_item(STRUCT_MEMBER(m_channel, m_base_address));
- save_item(STRUCT_MEMBER(m_channel, m_base_count));
- save_item(STRUCT_MEMBER(m_channel, m_mode));
-
m_address_mask = 0xffff;
// force clear upon initial reset
@@ -511,6 +490,30 @@ void am9517a_device::device_start()
//-------------------------------------------------
+// device_register_save - register for save states
+//-------------------------------------------------
+
+void am9517a_device::device_register_save(save_registrar &save)
+{
+ // state saving
+ save.reg(NAME(m_channel))
+ .reg(NAME(m_msb))
+ .reg(NAME(m_hreq))
+ .reg(NAME(m_hack))
+ .reg(NAME(m_ready))
+ .reg(NAME(m_eop))
+ .reg(NAME(m_state))
+ .reg(NAME(m_current_channel))
+ .reg(NAME(m_last_channel))
+ .reg(NAME(m_command))
+ .reg(NAME(m_mask))
+ .reg(NAME(m_status))
+ .reg(NAME(m_temp))
+ .reg(NAME(m_request));
+}
+
+
+//-------------------------------------------------
// device_reset - device-specific reset
//-------------------------------------------------