summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/tlcs900/tlcs900.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/tlcs900/tlcs900.cpp')
-rw-r--r--src/devices/cpu/tlcs900/tlcs900.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/devices/cpu/tlcs900/tlcs900.cpp b/src/devices/cpu/tlcs900/tlcs900.cpp
index a0f9d67d597..914257bee9e 100644
--- a/src/devices/cpu/tlcs900/tlcs900.cpp
+++ b/src/devices/cpu/tlcs900/tlcs900.cpp
@@ -108,7 +108,6 @@ void tlcs900h_device::device_start()
save_item( NAME(m_dmad) );
save_item( NAME(m_dmac) );
save_item( NAME(m_dmam) );
- save_item( NAME(m_reg) );
save_item( NAME(m_timer_pre) );
save_item( NAME(m_timer) );
save_item( NAME(m_timer_change) );
@@ -166,6 +165,21 @@ void tlcs900h_device::device_start()
set_icountptr(m_icount);
}
+void tlcs900h_device::device_reset()
+{
+ m_pc.b.l = RDMEM( 0xFFFF00 );
+ m_pc.b.h = RDMEM( 0xFFFF01 );
+ m_pc.b.h2 = RDMEM( 0xFFFF02 );
+ m_pc.b.h3 = 0;
+ /* system mode, iff set to 111, max mode, register bank 0 */
+ m_sr.d = 0xF800;
+ m_regbank = 0;
+ m_xssp.d = 0x0100;
+ m_halted = 0;
+ m_check_irqs = 0;
+ m_prefetch_clear = true;
+}
+
void tlcs900h_device::state_string_export(const device_state_entry &entry, std::string &str) const
{