changeset 1222:60d73f42a606

Hacky fix so sound works in Project MD again
author Michael Pavone <pavone@retrodev.com>
date Tue, 14 Feb 2017 05:14:10 -0800
parents 53fc7efdfdab
children a477cc22a960
files z80_to_x86.c
diffstat 1 files changed, 4 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/z80_to_x86.c	Tue Feb 14 04:44:37 2017 -0800
+++ b/z80_to_x86.c	Tue Feb 14 05:14:10 2017 -0800
@@ -2939,6 +2939,8 @@
 		}
 		//calculate the lowest alias for this address
 		address = mem_chunk->start + ((address - mem_chunk->start) & mem_chunk->mask);
+	} else {
+		address &= opts->gen.address_mask;
 	}
 	
 	native_map_slot *map = opts->gen.native_code_map + address / NATIVE_CHUNK_SIZE;
@@ -2957,9 +2959,8 @@
 			memset(map->offsets, 0xFF, sizeof(int32_t) * NATIVE_CHUNK_SIZE);
 		}
 	
-		if (map->offsets[address % NATIVE_CHUNK_SIZE] == INVALID_OFFSET) {
-			map->offsets[address % NATIVE_CHUNK_SIZE] = EXTENSION_WORD;
-		}
+		//TODO: better handling of potentially overlapping instructions
+		map->offsets[address % NATIVE_CHUNK_SIZE] = EXTENSION_WORD;
 	}
 }