Subject: situation of FPU emulation
To: None <macbsd-development@sun-lamp.cs.berkeley.edu>
From: kr <kr@nanothinc.com>
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" <linux-activists@Niksula.hut.fi>
>To: "Linux-Activists" <linux-activists@Niksula.hut.fi>
>Reply-To: "Linux-Activists" <linux-activists@Niksula.hut.fi>
>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
>Sender: owner-linux-activists@Niksula.hut.fi
>Message-Id: <94Aug24.163101eet_dst.18347-3@niksula.hut.fi>
>Date: Wed, 24 Aug 1994 16:30:38 +0300
>
>
>Topics:
>         FPU emulation (summary)
>         Binutils/gas/ld version 940822 available on tsx-11
>
>
>----------------------------------------------------------------------
>
>From: hn@pool.informatik.rwth-aachen.de (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 (allen.briggs@vt.edu) 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, fboys@uoguelph.ca) 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 (arnaud@lamisun.epfl.ch) 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 (hiwi@fmr.maschinenbau.th-darmstadt.de) wrote:
>>1)  From Motorola Microprocessor Software Catalog
>>    3rd Edition 1984, p. 2-63
>>
>>    PRODUCT:    M68000 IEEE FLOATING POINT
>>
>>    DESCRIPTION:M68000 IEEE Floating Point Subroutine
>>                Package Source and Object Code
>>                supports  all functions, precisions ...
>>
>>4)      From Motorola BBS via ftp
>>        ernie.uvic.ca, calvin.stanford.edu, ee.utah.edu, red.cs.tcu.edu
>>
>>        m68k/macro881.zip 9984 08-01-90 asm macros to acce4s 68881/82 FPU
>>
>>PS: I'm also interested in the F-line code.
>
>- Ludis Langens (ludis@netcom.com) 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."
>hn@pool.informatik.rwth-aachen.de                             (Stefan Derrik)
>My WWW homepage
>
>
>
>------------------------------

Greetings
Markus Krummenacker



------------------------------------------------------------------------------