Initial softfloat port from Bochs to 86box, currently selectable only on QT.

This commit is contained in:
TC1995
2023-04-29 18:56:57 +02:00
parent 071c05e65f
commit 7a53e1de45
44 changed files with 16934 additions and 115 deletions

View File

@@ -33,20 +33,6 @@ opFNOP(uint32_t fetchdat)
return 0;
}
static int
opFXTRACT(uint32_t fetchdat)
{
double_decompose_t temp = (double_decompose_t) ST(0);
FP_ENTER();
cpu_state.pc++;
ST(0) = (double) temp.exponent;
x87_push((double) temp.mantissa);
CLOCK_CYCLES_FPU((fpu_type >= FPU_487SX) ? (x87_timings.fxtract) : (x87_timings.fxtract * cpu_multi));
CONCURRENCY_CYCLES((fpu_type >= FPU_487SX) ? (x87_concurrency.fxtract) : (x87_concurrency.fxtract * cpu_multi));
return 0;
}
static int
opFCLEX(uint32_t fetchdat)
{
@@ -511,6 +497,20 @@ opFCHS(uint32_t fetchdat)
return 0;
}
static int
opFXTRACT(uint32_t fetchdat)
{
double_decompose_t temp = (double_decompose_t) ST(0);
FP_ENTER();
cpu_state.pc++;
ST(0) = (double) temp.exponent;
x87_push((double) temp.mantissa);
CLOCK_CYCLES_FPU((fpu_type >= FPU_487SX) ? (x87_timings.fxtract) : (x87_timings.fxtract * cpu_multi));
CONCURRENCY_CYCLES((fpu_type >= FPU_487SX) ? (x87_concurrency.fxtract) : (x87_concurrency.fxtract * cpu_multi));
return 0;
}
static int
opFABS(uint32_t fetchdat)
{
@@ -755,6 +755,7 @@ opFPREM(uint32_t fetchdat)
CONCURRENCY_CYCLES((fpu_type >= FPU_487SX) ? (x87_concurrency.fprem) : (x87_concurrency.fprem * cpu_multi));
return 0;
}
static int
opFPREM1(uint32_t fetchdat)
{