1
0
Fork 0

FFREEP. (thanks ripsaw)

Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3465
This commit is contained in:
Peter Veenstra 2009-09-16 18:01:53 +00:00
parent 035a5b8a00
commit 30822d4895
2 changed files with 7 additions and 2 deletions

View file

@ -398,6 +398,7 @@ static char const *fop_52[] = { "*fsubrp %GF,st" };
static char const *fop_53[] = { "*fsubp %GF,st" };
static char const *fop_54[] = { "*fdivrp %GF,st" };
static char const *fop_55[] = { "*fdivp %GF,st" };
static char const *fop_56[] = { "*ffreep %GF" };
static char const *fop_60[] = { "fstsw ax", 0, 0, 0, 0, 0, 0, 0 };
static char const **fspecial[] = { /* 0=use st(i), 1=undefined 0 in fop_* means undefined */
@ -408,7 +409,7 @@ static char const **fspecial[] = { /* 0=use st(i), 1=undefined 0 in fop_* means
fop_32, fop_33, fop_34, fop_35, fop_36, fop_37, fop_38, fop_39,
fop_40, fop_41, fop_42, fop_43, fop_44, fop_45, f0, f0,
fop_48, fop_49, fop_50, fop_51, fop_52, fop_53, fop_54, fop_55,
f0, f0, f0, f0, fop_60, f0, f0, f0,
fop_56, f0, f0, f0, fop_60, f0, f0, f0,
};
static const char *floatops[] = { /* assumed " %EF" at end of each. mod != 3 only */

View file

@ -16,7 +16,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
/* $Id: fpu.cpp,v 1.30 2009-05-27 09:15:41 qbix79 Exp $ */
/* $Id: fpu.cpp,v 1.31 2009-09-16 18:01:53 qbix79 Exp $ */
#include "dosbox.h"
#if C_FPU
@ -594,6 +594,10 @@ void FPU_ESC7_Normal(Bitu rm) {
Bitu group=(rm >> 3) & 7;
Bitu sub=(rm & 7);
switch (group){
case 0x00: /* FFREEP STi*/
fpu.tags[STV(sub)]=TAG_Empty;
FPU_FPOP();
break;
case 0x01: /* FXCH STi*/
FPU_FXCH(TOP,STV(sub));
break;