From 0585b0a309fc544d7f86550ddfdd3498b8ff0e52 Mon Sep 17 00:00:00 2001 From: "R. Belmont" Date: Mon, 5 Oct 2009 04:26:11 +0000 Subject: [PATCH] m68k: throw F-line trap correctly when PMMU instructions are hit on non-equipped CPUs. --- src/emu/cpu/m68000/m68k_in.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/emu/cpu/m68000/m68k_in.c b/src/emu/cpu/m68000/m68k_in.c index 68b837ef533..db5d58d45d9 100644 --- a/src/emu/cpu/m68000/m68k_in.c +++ b/src/emu/cpu/m68000/m68k_in.c @@ -7997,13 +7997,12 @@ M68KMAKE_OP(pea, 32, ., .) M68KMAKE_OP(pflush, 32, ., .) { - if ((CPU_TYPE_IS_040_PLUS(m68k->cpu_type)) && (m68k->has_pmmu)) + if ((CPU_TYPE_IS_EC020_PLUS(m68k->cpu_type)) && (m68k->has_pmmu)) { - // Nothing to do, unless address translation cache is emulated logerror("680x0: unhandled PFLUSH\n"); return; } - m68ki_exception_illegal(m68k); + m68ki_exception_1111(m68k); } M68KMAKE_OP(pmove, 32, ., .) @@ -8011,16 +8010,16 @@ M68KMAKE_OP(pmove, 32, ., .) UINT16 modes; UINT32 ea; - modes = m68ki_read_imm_16(m68k); - ea = M68KMAKE_GET_EA_AY_32; - if ((CPU_TYPE_IS_EC020_PLUS(m68k->cpu_type)) && (m68k->has_pmmu)) { + modes = m68ki_read_imm_16(m68k); + ea = M68KMAKE_GET_EA_AY_32; + logerror("680x0: unhandled PMOVE modes %x ea %x\n", modes, ea); } else { - m68ki_exception_illegal(m68k); + m68ki_exception_1111(m68k); } }