From 6ee054da47e7bb0c6c382df3c89bcf7285e52f09 Mon Sep 17 00:00:00 2001 From: Toni Wilen Date: Wed, 19 Jul 2017 15:00:15 +0300 Subject: [PATCH] Missing 68040/060 no FPU check. --- fpp.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/fpp.cpp b/fpp.cpp index 1ecaf022..033d65ac 100644 --- a/fpp.cpp +++ b/fpp.cpp @@ -2667,6 +2667,8 @@ static void fpuop_arithmetic2 (uae_u32 opcode, uae_u16 extra) switch ((extra >> 13) & 0x7) { case 3: + if (fault_if_no_fpu (opcode, extra, 0, pc)) + return; if (fp_exception_pending(true)) return; @@ -2881,8 +2883,6 @@ static void fpuop_arithmetic2 (uae_u32 opcode, uae_u16 extra) regs.fpiar = pc; reg = (extra >> 7) & 7; if ((extra & 0xfc00) == 0x5c00) { - if (fault_if_no_fpu (opcode, extra, 0, pc)) - return; if (fault_if_unimplemented_680x0 (opcode, extra, ad, pc, &src, reg)) return; fpsr_clear_status(); @@ -2905,6 +2905,9 @@ static void fpuop_arithmetic2 (uae_u32 opcode, uae_u16 extra) return; } + if (fault_if_no_fpu (opcode, extra, ad, pc)) + return; + dst = regs.fp[reg]; if (fp_is_dyadic(extra)) -- 2.47.3