This is the README for libFPSP.1.p2.N.s.tar.gz [Download] [Browse] [Up]
Motorola M68040FPSP library routines for NeXT 68040 machines. Patch level 2. Fix up sincos entry point. Patch level 1. Add a bunch more C entry points. Add declarations to fend off NeXT library routines. Installation ============ 1. Create a new directory, `cd' to it. 2. Uncompress and `un-tar' the source files. You should than have: In the current directory: a Makefile, a README, and a bunch of assembler source files. In the arch subdirectory: The original source from the Motorola BBS. In the test subdirectory: A program to test the library routines. 3. Type `make install' to assemble the routines, create the library, and install the library in /usr/local/lib/libFPSP.a. The FPSP library is now ready to use. To use the routines with your programs, just add a `-lFPSP' to the appropriate spots in your makefiles. Comments ======== A number of people who have tried these routines have sent me mail about the libjv package also available on the archives. Yes, that package *is* faster than the M68040FPSP routines, but the speed comes at the cost of reduced accuracy. Caveats ======= These are the Motorola FPSP library routines translated to `gas' syntax. I had to work around a bunch of assembler bugs, the worst being that instructions like fcmps #0x3FF80000,fp0 would not assemble properly. You can find all the places I had to do this by doing a grep '|||' *.s The original instruction is included as a comment on each of these lines so you can see what should be there. I *hope* I got all the translations correct. Use this software at your own risk!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! I was unable to figure out how to make the assembler generate a floating-point-condition-branch instruction with a word offset. The assembler insists on emitting a long offset even when the target is only a few instructions away. This makes the routines run slower, and take up more space, than they otherwise would. The file NeXTglue.s contains the `glue' routines which provide C entry points to the functions. I threw these glue routines together pretty quickly. If someone else takes the time to redo them correctly please send the improved routinse back to me. I had to put in some `magic' declarations to keep the loader from trying to pull in the floating point support routines from /lib/libsys_s.a -- again I hope I got this right. Eric Norum eric@skatter.usask.ca Saskatchewan Accelerator Laboratory University of Saskatchewan Saskatoon, Canada. NeXTMail accepted.
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.