Commit Graph

23 Commits

Author SHA1 Message Date
Jonas Maebe
0758aa1143 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
yury
4b84de6a72 * Optimized Handle_I8086_Error by using smaller int types.
git-svn-id: trunk@46335 -
2020-08-08 19:23:52 +00:00
florian
7281ea7a2c * floating point division by zero should throw run time error 208, fixed
git-svn-id: trunk@46210 -
2020-08-03 19:42:16 +00:00
pierre
8ebac8ed52 Add Handle_I8086_Error procedure
git-svn-id: trunk@36262 -
2017-05-19 21:47:26 +00:00
pierre
e835f120e9 Fix fpc_frac_real, fpc_trunk_real and fpc_int_real by removing the assumption that SP=BP at entry
git-svn-id: trunk@32865 -
2016-01-06 15:20:57 +00:00
sergei
217bac7a0b - Removed fpc_pi_real compilerproc, it is no longer used. At least two releases (2.6.2 and 2.6.4) emit Pi directly as a constant.
git-svn-id: trunk@27500 -
2014-04-07 09:16:24 +00:00
nickysn
47aed8b01f * optimized the i8086 version of Get8087CW
git-svn-id: trunk@27221 -
2014-03-21 13:46:38 +00:00
sergei
b89822d3e9 * i8086: added assembler implementation of fpc_round_real and removed remaining softfloat dependencies.
git-svn-id: trunk@27195 -
2014-03-20 02:28:47 +00:00
nickysn
41d28f91e5 - rm asmmode intel from the i8086-msdos rtl, as that is the default asm mode on
that platform

git-svn-id: trunk@27144 -
2014-03-15 13:01:05 +00:00
nickysn
c88be4550d * optimization in the 8087/80287 version of fpc_arctan_real(): when calculating
arctan([-]1/d), use fxch to swap the two arguments, instead of using fdivr,
  since fpatan can do the division for free

git-svn-id: trunk@26227 -
2013-12-13 01:24:01 +00:00
nickysn
a7b4953795 + proper (i.e. not broken) implementation of arctan() for the 8087 and 80287
git-svn-id: trunk@26226 -
2013-12-12 23:46:51 +00:00
nickysn
a68b9fd01f * use byte sized instead of word sized memory operations on the fpu control
word in fpc_frac_real, fpc_int_real and fpc_trunc_real, because the byte sized
  ones are faster on the i8088, due to the 8-bit bus

git-svn-id: trunk@26214 -
2013-12-10 21:16:35 +00:00
nickysn
9c86da1911 - rm the fwait after fstsw in fpc_exp_real. My own testing on a true i8087 shows
that fwait after fstsw appears to be unnecessary. On the other hand, using
  fnstsw, followed by fwait produces wrong results.

git-svn-id: trunk@26204 -
2013-12-10 00:38:28 +00:00
nickysn
775619ef8b * 8087/80287 fixes in fpc_exp_real
git-svn-id: trunk@26203 -
2013-12-10 00:02:20 +00:00
nickysn
bb0a3a7374 + i8086 asm implementation of fpc_frac_real, based on the i386 version
git-svn-id: trunk@26131 -
2013-11-24 18:30:40 +00:00
nickysn
6cd62437f9 + i8086 asm implementation of fpc_trunc_real, based on the i386 version. Fixes
i8086 compilation after r26122.

git-svn-id: trunk@26125 -
2013-11-24 02:00:57 +00:00
nickysn
4fc4e4cb88 * removed the dummy fpc_sin_real and fpc_cos_real that halt with a runtime error
from the i8086 rtl, because the FSIN and FCOS instructions are 387+ and on
  earlier FPUs the real helper functions are needed.

git-svn-id: trunk@25535 -
2013-09-22 15:06:45 +00:00
nickysn
74cd67b85c + added 8087 initialization to the msdos rtl (8087 presence detection is still a TODO)
git-svn-id: branches/i8086@24140 -
2013-04-03 16:03:45 +00:00
nickysn
5215bd33c2 * compilation of fpc_exp_real fixed
git-svn-id: branches/i8086@23843 -
2013-03-15 12:53:49 +00:00
nickysn
ca1fad8a73 + added fpc_exp_real for i8086
git-svn-id: branches/i8086@23841 -
2013-03-15 01:21:32 +00:00
nickysn
a3fe455de6 + added the i8086 internal fake math routines to the rtl
git-svn-id: branches/i8086@23836 -
2013-03-14 16:35:25 +00:00
nickysn
6757fe5752 * i8086 implementation of fpc_int_real
git-svn-id: branches/i8086@23832 -
2013-03-14 15:04:53 +00:00
florian
64ffe8f5ef + basic Makefile infrastructure for msdos
git-svn-id: branches/i8086@23779 -
2013-03-10 17:31:53 +00:00