From 3ee0cef43d0f72da25178e19ef780dff29ed87ab Mon Sep 17 00:00:00 2001 From: Peter Veenstra Date: Wed, 13 Oct 2004 19:26:26 +0000 Subject: [PATCH] Tiny bug in the storing 80 bit reals Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2024 --- src/fpu/fpu_instructions.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/fpu/fpu_instructions.h b/src/fpu/fpu_instructions.h index 03b9bafc..539f3b10 100644 --- a/src/fpu/fpu_instructions.h +++ b/src/fpu/fpu_instructions.h @@ -16,7 +16,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $Id: fpu_instructions.h,v 1.23 2004-10-12 20:14:38 qbix79 Exp $ */ +/* $Id: fpu_instructions.h,v 1.24 2004-10-13 19:26:26 qbix79 Exp $ */ static void FPU_FINIT(void) { @@ -321,7 +321,7 @@ static void FPU_ST80(PhysPt addr,Bitu reg) Bit64s exp80 = fpu.regs[reg].ll&LONGTYPE(0x7ff0000000000000); Bit64s exp80final= (exp80>>52) - BIAS64 + BIAS80; Bit64s mant80 = fpu.regs[reg].ll&LONGTYPE(0x000fffffffffffff); - Bit64s mant80final= (mant80 << 11) | LONGTYPE(0x8000000000000000); + Bit64s mant80final= (mant80 << 11); test.begin= (static_cast(sign80)<<15)| static_cast(exp80final); test.eind.ll=mant80final; mem_writed(addr,test.eind.l.lower);