From 1ea8cf2f3663d30f9409560ca970c96faabe7f28 Mon Sep 17 00:00:00 2001 From: Morilli <35152647+Morilli@users.noreply.github.com> Date: Sun, 25 Aug 2024 21:01:06 +0200 Subject: [PATCH] check disassembler address properly in GenericDebugger.Disassemble - closes #3524 - the address was not checked on the first call - the comparison needs to be >=, not > --- .../tools/Debugger/GenericDebugger.Disassembler.cs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/BizHawk.Client.EmuHawk/tools/Debugger/GenericDebugger.Disassembler.cs b/src/BizHawk.Client.EmuHawk/tools/Debugger/GenericDebugger.Disassembler.cs index e412bc55aa..e3c8b1f97e 100644 --- a/src/BizHawk.Client.EmuHawk/tools/Debugger/GenericDebugger.Disassembler.cs +++ b/src/BizHawk.Client.EmuHawk/tools/Debugger/GenericDebugger.Disassembler.cs @@ -57,16 +57,17 @@ namespace BizHawk.Client.EmuHawk int lineCount = DisassemblerView.RowCount * 6 + 2; _disassemblyLines.Clear(); - uint a = _currentDisassemblerAddress; + uint currentAddress = _currentDisassemblerAddress; for (int i = 0; i <= lineCount; ++i) { - string line = Disassembler.Disassemble(MemoryDomains.SystemBus, a, out var advance); - _disassemblyLines.Add(new DisasmOp(a, advance, line)); - a += (uint)advance; - if (a > BusMaxValue) + if (currentAddress >= BusMaxValue) { break; } + + string line = Disassembler.Disassemble(MemoryDomains.SystemBus, currentAddress, out var advance); + _disassemblyLines.Add(new DisasmOp(currentAddress, advance, line)); + currentAddress += (uint)advance; } }