Mercurial > repos > blastem
diff z80_to_x86.c @ 279:6be6056735a9
Fix native address lookup in bannked memory area
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Fri, 03 May 2013 20:18:28 -0700 |
parents | 765e132edd71 |
children | 7b8a49220e3b |
line wrap: on
line diff
--- a/z80_to_x86.c Fri May 03 20:15:23 2013 -0700 +++ b/z80_to_x86.c Fri May 03 20:18:28 2013 -0700 @@ -1421,7 +1421,7 @@ map = context->static_code_map; } else if (address >= 0x8000) { address &= 0x7FFF; - map = context->banked_code_map + (context->bank_reg << 15); + map = context->banked_code_map + context->bank_reg; } else { dprintf("z80_get_native_address: %X NULL\n", address); return NULL; @@ -1455,7 +1455,7 @@ context->ram_code_flags[((address + size) & 0x1C00) >> 10] |= 1 << (((address + size) & 0x380) >> 7); } else if (address >= 0x8000) { address &= 0x7FFF; - map = context->banked_code_map + (context->bank_reg << 15); + map = context->banked_code_map + context->bank_reg; if (!map->offsets) { map->offsets = malloc(sizeof(int32_t) * 0x8000); memset(map->offsets, 0xFF, sizeof(int32_t) * 0x8000); @@ -1474,7 +1474,7 @@ map = context->static_code_map; } else if (address >= 0x8000) { address &= 0x7FFF; - map = context->banked_code_map + (context->bank_reg << 15); + map = context->banked_code_map + context->bank_reg; } else { return; }