diff options
| author | 2026-04-26 10:23:37 -0400 | |
|---|---|---|
| committer | 2026-04-26 16:23:37 +0200 | |
| commit | 47377bfe7a49cf301957cc90f6ac5f08a59c503c (patch) | |
| tree | 2cd96ac640ad765ccde6654b25346d946aa0bdbd /src/emu | |
| parent | 66599ed87a64fe50da6212c218f06301c4784399 (diff) | |
emu/debug/dvmemory.cpp: Recomputing memory view based on evaluated start address value. (#15251)
Diffstat (limited to 'src/emu')
| -rw-r--r-- | src/emu/debug/dvmemory.cpp | 9 | ||||
| -rw-r--r-- | src/emu/debug/dvmemory.h | 1 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/emu/debug/dvmemory.cpp b/src/emu/debug/dvmemory.cpp index e49aa1a6efd..ff6461ba2b4 100644 --- a/src/emu/debug/dvmemory.cpp +++ b/src/emu/debug/dvmemory.cpp @@ -717,11 +717,18 @@ bool debug_view_memory::needs_recompute() { bool recompute = m_recompute; + offs_t val = m_expression.value(); + // checks if evaluated expression value has changed since last time + if (val != m_expression_computed) + { + m_expression_computed = val; + m_expression.mark_dirty(); + } + // handle expression changes if (m_expression.dirty()) { const debug_view_memory_source &source = downcast<const debug_view_memory_source &>(*m_source); - offs_t val = m_expression.value(); if (source.m_memintf) { const address_space_config *config = m_no_translation ? source.m_memintf->space_config(source.m_spacenum) : source.m_memintf->logical_space_config(source.m_spacenum); diff --git a/src/emu/debug/dvmemory.h b/src/emu/debug/dvmemory.h index 10ac095639e..19b408c43b0 100644 --- a/src/emu/debug/dvmemory.h +++ b/src/emu/debug/dvmemory.h @@ -134,6 +134,7 @@ private: // internal state debug_view_expression m_expression; // expression describing the start address + offs_t m_expression_computed; // latest value of computed expression u32 m_chunks_per_row; // number of chunks displayed per line u8 m_bytes_per_chunk; // bytes per chunk u8 m_steps_per_chunk; // bytes per chunk |
