Mercurial > repos > blastem
changeset 2273:ff726f53d75a
Fix diassembly involving absolute addresses with high bits set
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Thu, 29 Dec 2022 19:52:40 -0800 |
parents | 777900eb8e15 |
children | bf1bb893f104 |
files | dis.c |
diffstat | 1 files changed, 2 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/dis.c Thu Dec 29 15:47:54 2022 -0800 +++ b/dis.c Thu Dec 29 19:52:40 2022 -0800 @@ -42,8 +42,9 @@ uint16_t fetch(uint32_t address, void *data) { rom_def *rom = data; + address &= 0xFFFFFF; if (address >= rom->address_off && address < rom->address_end) { - return rom->buffer[((address & 0xFFFFFF) - rom->address_off) >> 1]; + return rom->buffer[(address - rom->address_off) >> 1]; } return 0; }