changeset 1212:191ac490fb3d

Implement extra read and fix movem timing generally
author Michael Pavone <pavone@retrodev.com>
date Sun, 29 Jan 2017 00:15:18 -0800
parents bb41c821d6d9
children 9e4c44757b1a
files m68k_core.c
diffstat 1 files changed, 3 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/m68k_core.c	Sat Jan 28 23:50:38 2017 -0800
+++ b/m68k_core.c	Sun Jan 29 00:15:18 2017 -0800
@@ -461,7 +461,7 @@
 		}
 	} else {
 		//mem to reg
-		early_cycles = 4;
+		early_cycles = 8; //includes prefetch
 		switch (inst->src.addr_mode)
 		{
 		case MODE_AREG_INDIRECT:
@@ -520,9 +520,9 @@
 		if (inst->src.addr_mode == MODE_AREG_POSTINC) {
 			native_to_areg(opts, opts->gen.scratch1, inst->src.params.regs.pri);
 		}
+		//Extra read
+		call(code, opts->read_16);
 	}
-	//prefetch
-	cycles(&opts->gen, 4);
 }
 
 static void translate_m68k_nop(m68k_options *opts, m68kinst *inst)