diff --git a/src/emu/cpu/h8/h8_timer16.c b/src/emu/cpu/h8/h8_timer16.c index c4b587abe8f..bc9c8c188ac 100644 --- a/src/emu/cpu/h8/h8_timer16.c +++ b/src/emu/cpu/h8/h8_timer16.c @@ -158,13 +158,13 @@ WRITE16_HANDLER(h8_timer16_channel_device::tbr_w) void h8_timer16_channel_device::device_start() { - io = &cpu->space(AS_IO); intc = owner()->siblingdevice(intc_tag); + channel_active = false; } void h8_timer16_channel_device::device_reset() { - channel_active = false; + // Don't touch channel_active here, top level device handles it tcr = 0; tcnt = 0; memset(tgr, 0xff, sizeof(tgr)); diff --git a/src/emu/cpu/h8/h8_timer16.h b/src/emu/cpu/h8/h8_timer16.h index efd294b7c8b..90d0038b329 100644 --- a/src/emu/cpu/h8/h8_timer16.h +++ b/src/emu/cpu/h8/h8_timer16.h @@ -133,7 +133,6 @@ public: protected: required_device cpu; - address_space *io; h8_timer16_channel_device *chained_timer; h8_intc_device *intc; const char *chain_tag, *intc_tag;