more careful updating of partial disassembly

disassembly.ExecutedEntry() only adds next address to disassembly if the
CPU result is at an instruction boundary (the Final field in the result
type)
This commit is contained in:
JetSetIlly 2023-11-06 13:19:05 +00:00
parent f60c88fe55
commit bb556d805f

View file

@ -258,7 +258,7 @@ func (dsm *Disassembly) ExecutedEntry(bank mapper.BankInfo, result execution.Res
// bless next entry in case it was missed by the original decoding. there's
// no guarantee that the bank for the next address will be the same as the
// current bank, so we have to call the GetBank() function.
if checkNextAddr {
if checkNextAddr && result.Final {
bank = dsm.vcs.Mem.Cart.GetBank(nextAddr)
idx := nextAddr & memorymap.CartridgeBits
ne := dsm.disasmEntries.Entries[bank.Number][idx]