Subject: situation of FPU emulation
To: None <>
From: kr <>
List: macbsd-development
Date: 08/27/1994 16:23:41
The following drifted by on linux-m68k, and I assume that not everybody
here has seen it:
>From: "Linux Activists" <>
>To: "Linux-Activists" <>
>Reply-To: "Linux-Activists" <>
>X-Note1: Remember to put 'X-Mn-Key: 680X0' to your mail body or header
>Subject: Linux-Activists - 680X0 Channel digest. 94-7-24-9:14
>X-Mn-Key: 680X0
>Message-Id: <>
>Date: Wed, 24 Aug 1994 16:30:38 +0300
>         FPU emulation (summary)
>         Binutils/gas/ld version 940822 available on tsx-11
>From: (Helmut Neukirchen)
>Subject: FPU emulation (summary)
>Date: Wed, 24 Aug 1994 11:32:45 +0300
>This a summary of the FPU emulation topic I started some time ago
>(it was about 68881 LINE-F software emulation):
>- There is no such source available in the public (e.g. from Motorola).
>- Portions of the emulation code do exist, e.g.:
>  In the German computer magazine c't issue April 1990 you find a basic
>  exception-handler which decodes the instructions and the addressing
>  modes. This handler was used to interface a 68881 to a 68000 via
>  line-f.
>  Due to the FPSP_40 package it is only necessary to implement the
>  68040 FP instruction.
>  Some people started an emulator (s. below)
>- Cause this task is more work than just integrating an existing emulation
>  code I am not willing to do this task (moreover I am not a big
>  FP guru...). Any volunteers?
>Here is is a summary of the messages I got concerning my FPU emulation
>posting in comp.sys.m68k. Please don't bomb these guys with mails unless
>you are certainly willing to work on the emulator:
>- First of all Allen Briggs ( from MacBSD == NetBSD/Mac
>  community told me that they have the same problems:
>>If you find anything, I would very much like to hear about it.  We have
>>looked for something for NetBSD/Mac68k, before.  Nothing was obviously
>>available except the FPSP package from Motorola for the instructions
>>that are missing in the '040.
>>Ideally, we could use the same code for both systems!
>- Robert Boys (the comp.sys.m68k FAQ maintainer, wrote:
>>The only FPU emulation cose I am aware of is:
>>ffp.arc - routines for 68k and 68300 - on Motorola BBS only (should be
>>put on a ftp archive site)
>>040_fpsp  - 68040 unimplemented 68882 instructions - only on Motorola BBS
>>68343ffp.arc - source code for MC68343 - on ftp sites.  This looks like it
>>should work on other 68k devices.
>>The 040_fpsp and 68343ffp are mentioned in my faq.
>>These files did not seem to meet your requirements but if you find any
>>more - please let me know.  If you get either of the two files above from
>>the Motorola BBS, let me know - they should be on the Internet.
>- Pierre Arnoud ( knows someone who started an emulator:
>>I now remember that a friend of mine -- also student at the Swiss Federal
>>Institute of Technology -- has done some work on such an emulator. I think
>>he got FNOP, FMUL, FDIV, FADD, FSUB and some more to work quite fast and
>>bug-less. He based his work part on the GNU math routines (.s), part on a
>>public domain Macintosh FPU emulator (somewhat bugged) and part on the
>>FPSP package (also partially bugged, as he reported to me).
>>This work is in no way complete, but you might use it as a solid base if
>>you do not find anything else on the net. The only (small) problem, is that
>>the notation used for the source is CALM (Common Assembly Language for
>>Microprocessors), the best way to program :-) in assembly language I know.
>>Here come some equivalents :
>>  ADDI.L #1000,D0        ADD.32  #1000,D0
>>  ADDQ.L #10,D1          ADD.32  #A8^10,D0
>>  MOVE.L (A0),(A1)+      MOVE.32 {A0},{A1+}
>>  LEA.L  A0+10,A1        MOVE.32 #{A0}+10,A1
>>  etc...
>>There is an assembler for the IBM-PC compatible and for the Smaky computer,
>>a Swiss m68k based real-time, multi-tasking, mono-user system (which I use
>>for my work).
>>Should you find a FPU emulator, this would spare a lot of time to my
>>friend; otherwise, you may use his work. Just let me know.
>- Helmut Raabe ( wrote:
>>1)  From Motorola Microprocessor Software Catalog
>>    3rd Edition 1984, p. 2-63
>>    DESCRIPTION:M68000 IEEE Floating Point Subroutine
>>                Package Source and Object Code
>>                supports  all functions, precisions ...
>>4)      From Motorola BBS via ftp
>>        m68k/ 9984 08-01-90 asm macros to acce4s 68881/82 FPU
>>PS: I'm also interested in the F-line code.
>- Ludis Langens ( knows a commercial emulator :-(
>>A company I worked for went through this same search several years ago.
>>We ended up hiring a floating point expert to write us an F-line FPU
>>emulator.  It may be possible to buy a copy of this work from the author.
>>However, the same $$$ would buy a large number of 68882's.
>Helmut Neukirchen                   "Harry, manchmal hasse ich meinen Beruf."
>                             (Stefan Derrik)
>My WWW homepage

Markus Krummenacker