From 25b40bae22bd0ed48174221da3c82c1ddcdfcd9a Mon Sep 17 00:00:00 2001 From: AJR Date: Mon, 12 Mar 2018 15:46:57 -0400 Subject: Fix masking of offset expressions in debug view of address-shifted spaces (nw) --- src/emu/debug/dvmemory.cpp | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) (limited to 'src/emu/debug/dvmemory.cpp') diff --git a/src/emu/debug/dvmemory.cpp b/src/emu/debug/dvmemory.cpp index 86f038e535a..da116e6c711 100644 --- a/src/emu/debug/dvmemory.cpp +++ b/src/emu/debug/dvmemory.cpp @@ -631,19 +631,13 @@ bool debug_view_memory::needs_recompute() const debug_view_memory_source &source = downcast(*m_source); offs_t val = m_expression.value(); if (source.m_space) - val = source.m_space->address_to_byte(val); + val = source.m_space->address_to_byte(val & source.m_space->logaddrmask()); recompute = true; m_topleft.y = (val - m_byte_offset) / m_bytes_per_row; m_topleft.y = std::max(m_topleft.y, 0); m_topleft.y = std::min(m_topleft.y, m_total.y - 1); - offs_t resultbyte; - if (source.m_space != nullptr) - resultbyte = val & source.m_space->logaddrmask(); - else - resultbyte = val; - - set_cursor_pos(cursor_pos(resultbyte, m_bytes_per_chunk * 8 - 4)); + set_cursor_pos(cursor_pos(val, m_bytes_per_chunk * 8 - 4)); } // expression is clean at this point, and future recomputation is not necessary -- cgit v1.2.3