
This directory contains the C and assembler source code for BigNum.

   The subdirectory doc contains the documentation files:
      bn.tex        	- Document BigNum in LaTeX format
      bnf.tex       	- Document BigNum in French and LaTeX format
      makeidx.sty	- macro used in BigNum document

   The subdirectory h contains the C include files:
      BigZ.h		- Types and structures for clients of BigZ
      BigNum.h		- Types and structures for clients of BigNum

   The subdirectory c contains the C source files:
      KerN.c		- BigNum implementation ("kernel" routines)
      bn/bn*.c		- BigNum implementation ("non-kernel" routines), 
                          that is bnInit.c, bnMult.c, bnDivide.c and bnCmp.c
      bz.c		- BigZ implementation
      bzf.c		- Miscellaneous functions built on top of BigZ
      bztest.c		- Test program for verifying a BigNum implementation
      testKerN.c	- Test program for verifying KerN implementation

   The subdirectory s contains the assembler source files:
      vaxKerN.s		- Vax/U*ix implementation of KerN
      vaxKerN.mar	- Vax/VMS implementation of KerN
      68KerN.s		- 68020 implementation of KerN (MIT syntax)
      68KerN_mot.s	- 68020 implementation of KerN (Motorola syntax)
      nsKerN.s		- NS implementation of KerN
      mipsKerN.s	- MIPS implementation of KerN
      pyramidKerN.s	- Pyramid implementation of KerN

   Other Files:
      Makefile		- Creates U*ix bignum library and test programs
      VMSmakefile	- Creates VMS bignum library and test programs


Now, to build or modify the current version of the package, type one of:

   on U*ix system:
	make vax	- to use vax assembly code
	make 68K	- to use 68020 assembly code
	make ns		- to use NS assembly code
	make mips	- to use mips assembly code
	make pyramid	- to use pyramid assembly code
	make i960	- to use intel 80960 assembly code
	make C16	- to use C code with 16 bits digits
	make C32	- to use C code with 32 bits digits (default version)

   on VMS system: (copy VMSmakefile to Makefile, before)
	mms vax		- to use vax assembly code (default version)
	mms C32		- to use C code with 32 bits digits 
   we suppose you have defined the standard libraries of C-VMS with:
        define  lnk$library  sys$library:vaxccurse
        define  lnk$library_1  sys$library:vaxcrtlg
        define  lnk$library_2  sys$library:vaxcrtl


Each of these commands products the following files:

   on U*ix system:
	BigNum.a	- BigNum library
	testKerN	- Test program executable for KerN
	bztest		- Test program executable for BigZ

   on VMS system:
	BigNum.olb	- BigNum library
	testKerN.exe	- Test program executable for KerN
	bztest.exe	- Test program executable for BigZ


On U*ix system, if you have the tools LaTeX (L. Lamport's special version of Knuth's
famous TeX, as described in the Addison-Wesley book), makeindex and
dvips, type: 
	make doc	- to build the Postscript files of the documents, 

If you do not have dvips, use your local equivalent tool to print
the dvi file produced by the dvips command. 
