From 17d6640c48a9d9256f4896c151339c22c7ad7b4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Oliver=20St=C3=B6neberg?= Date: Sat, 9 Mar 2013 09:32:55 +0000 Subject: [PATCH] fixed uninitialized memory in src/emu/cpu/hd61700/hd61700.c (nw) --- src/emu/cpu/hd61700/hd61700.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/emu/cpu/hd61700/hd61700.c b/src/emu/cpu/hd61700/hd61700.c index 9f450ebba52..70850af560f 100644 --- a/src/emu/cpu/hd61700/hd61700.c +++ b/src/emu/cpu/hd61700/hd61700.c @@ -149,6 +149,11 @@ void hd61700_cpu_device::device_start() save_item(NAME(m_regmain)); save_item(NAME(m_lines_status)); + memset(m_regsir, 0, sizeof(m_regsir)); + memset(m_reg8bit, 0, sizeof(m_reg8bit)); + memset(m_reg16bit, 0, sizeof(m_reg16bit)); + memset(m_regmain, 0, sizeof(m_regmain)); + // register state for debugger state_add(HD61700_PC, "pc", m_pc).callimport().callexport().formatstr("%04X"); state_add(HD61700_F, "f", m_flags).callimport().callexport().formatstr("%02X"); @@ -201,10 +206,10 @@ void hd61700_cpu_device::device_reset() m_irq_status = 0; prev_ua = 0; - memset(m_regsir, 0, ARRAY_LENGTH(m_regsir)); - memset(m_reg8bit, 0, ARRAY_LENGTH(m_reg8bit)); - memset(m_reg16bit, 0, ARRAY_LENGTH(m_reg16bit) * sizeof(UINT16)); - memset(m_regmain, 0, ARRAY_LENGTH(m_regmain)); + memset(m_regsir, 0, sizeof(m_regsir)); + memset(m_reg8bit, 0, sizeof(m_reg8bit)); + memset(m_reg16bit, 0, sizeof(m_reg16bit)); + memset(m_regmain, 0, sizeof(m_regmain)); for (int i=0;i<6; i++) m_lines_status[i] = CLEAR_LINE;