summaryrefslogtreecommitdiff
path: root/dis.c
diff options
context:
space:
mode:
authorMichael Pavone <pavone@retrodev.com>2019-12-05 09:32:52 -0800
committerMichael Pavone <pavone@retrodev.com>2019-12-05 09:32:52 -0800
commitd4305c6fe57f3abc5249e0291f750681e3ef1512 (patch)
tree083bf87bdf15b2d46ae40ff04bf80316ff3f59a7 /dis.c
parent612c004e6570bc6684b2fd16bcbcbb3b8b90df63 (diff)
Properly mask addresses to 24-bit in disassembler
Diffstat (limited to 'dis.c')
-rw-r--r--dis.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/dis.c b/dis.c
index 5c0dfba..5bf7e46 100644
--- a/dis.c
+++ b/dis.c
@@ -292,7 +292,7 @@ int main(int argc, char ** argv)
encoded = NULL;
address = def->address;
if (!is_visited(address)) {
- encoded = filebuf + (address - address_off)/2;
+ encoded = filebuf + ((address & 0xFFFFFF) - address_off)/2;
}
tmpd = def;
def = def->next;
@@ -302,7 +302,7 @@ int main(int argc, char ** argv)
break;
}
for(;;) {
- if (address > address_end || address < address_off) {
+ if ((address & 0xFFFFFF) > address_end || address < address_off) {
break;
}
visit(address);