From 5dbe08b1b36108475c241c7ee46fc472da547412 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carl-Henrik=20Sk=C3=A5rstedt?= Date: Sat, 12 Dec 2015 14:00:36 -0800 Subject: [PATCH] Minor disassembler annoyances addressing - Label ranges outside of data would be ignored for instructions - If last code reference was a jump table then its references would get stripped --- disassembler/x65dsasm.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/disassembler/x65dsasm.cpp b/disassembler/x65dsasm.cpp index ae97a21..a5d9181 100644 --- a/disassembler/x65dsasm.cpp +++ b/disassembler/x65dsasm.cpp @@ -1715,7 +1715,7 @@ void GetReferences(unsigned char *mem, size_t bytes, bool acc_16, bool ind_16, i } } last--; - if (last<=1 || refs[last].data==DT_CODE) + if (last<=1 || (refs[last].data==DT_CODE || refs[last].data==DT_PTRS)) break; } @@ -2114,7 +2114,7 @@ void Disassemble(strref filename, unsigned char *mem, size_t bytes, bool acc_16, strown<64> lblname; strref lblcmt; for (size_t i = 0; i=refs[i].address && reference<(refs[i].address+refs[i].size)) || (reference>=start_addr && reference<=end_addr && reference>=refs[i].address)) { if (i==(refs.size()-1) || reference