
                                DKBTrace 2.12




   This ray tracer was written by David K. Buck and is released as freely
   distributable software.  The author retains all copyrights but permits
   free distribution of the software through any medium.  The software may
   be used without charge so long as the code is not included in any 
   commercial product.


   The Amiga executable archive contains two versions of the raytracer:

       dkbieee    - Non co-processor version of the raytracer.
                    This version will run on any Amiga with sufficient
                    memory.  If a 68881 chip is present, it will be used
                    although it will be slower than trace881.  You must
                    have mathieeedoubbas.library in your :lib directory.
                    

       dkb881     - Math coprocessor version.  This version will only
                    run on 68020 or 68030 based systems that have a
                    68881 or 68882 math coprocessor.


   I usually like having a fairly large stack for this program.  If it
   crashes on you, try increasing the stack size.


   The IBM/MS-DOS executable archive also contains two versions:

     dkbno87.exe  - Emulated Floating Point version of the raytracer.
                    This version will run on any IBM P.C. or Compatible
                    machine, as it is compiled for 8088 opcodes.

     dkb.exe      - Math coprocessor and 80186 or better ('286, '386, etc.)
                    optimized version of the raytracer.  Requires a 80x87 NPE.

   These files were compiled using Microsoft C 6.00A with maximum optimization
   options, where possible.  There are makefile's (.mak) and link files (.lnk)
   provided for both MSC 6.00A and for Turbo-C 2.0, for compatibility with
   prior versions.  Note, however, that the Turbo-C version is no longer
   formally supported, and the make and link files are include for historical
   reasons only (it may take some work to make DKB compatible with Turbo-C
   now, as I no longer use it).

   This version has been fed through four different compilers at their
   maximum warning levels, and then through a VERY picky "LINT", so it should
   be edible by very nearly all decent "C" compilers.  Also, all memory
   allocation functions are checked carefully for memory size limitations.

   The stack size in this version is set to about 12K which should be enough
   to do tracing of scenes with about 550K free RAM.  If it dies while it's
   tracing chances are you may need to increase the stack size a bit.  I have
   the internal stack checking option off for additional speed when tracing.
   Currently the stack size is set at 3000H, but more can be easily allocated
   with the Microsoft EXEMOD or EXEHDR utilities.  I would suggest trying 3800
   or 4000H, but not too much more.  The more stack you have will mean less
   memory will be available for complex scenes.

   If you run into a scene which is too complex to parse with 640K of memory
   (as evidenced by an allocation error message during the "Parsing" phase),
   QuarterDeck's QRAM or VIDRAM are programs which will extend DOS memory to
   704K/740K using either EMM or Video RAM memory, respectively.  There are
   also Public Domain programs (such as 740K.COM/SYS (?)) that will accomplish
   the same thing.  MAKE SURE you use the -d (no display) option if you use
   one of these programs or upper memory corruption could occur!!

   The raytracer will use up to ALL available DOS linear memory, but no EMM
   or XMS support is present at this time.

   DKBTrace was formerly distributed with a plethora of utilities, some for
   data file generation, some for image translation.  There are simply so
   many of them now, we have decided to release a separate archive containing
   all of them, updated to the new DKB 2.12 standards.  Many of these are
   still being converted to conform with the new standards, so they will
   be released following the actual release of DKB 2.12.

   This program is being distributed in the following packages:

      DKB212AM.xxx:   Amiga executables dkb881 and dkbieee.

      DKB212IB.xxx:   IBM PC/MS-DOS executables dkb.exe and dkbno87.exe.

      DKB212DT.xxx:   Many new, and some older updated sample data files, with
                      required imagemap texturing GIF and IFF files for the
                      provided sample scenes.  Also, .def files for running
		      the raytracer, and the three standard include files
		      colors.dat, shapes.dat, and textures.dat.

      DKB212SR.xxx:   Source code for DKBTrace 2.12, include files, linkage
                      files, and makefiles for Amiga, MS-DOS, Mac and Unix.

      DKB212DC.xxx:   Documentation files for DKB 2.12, and for data file
                      conversion up to version 2.12.  Also contains the
		      whats.new file for changes from version 2.0 up to 2.12.


      DKBUTAMI.xxx:   Amiga executable utilities for DKBTrace.

      DKBUTIBM.xxx:   IBM executable utilities for DKBTrace.

      DKBUTSRC.xxx:   Source code for utilities for DKBTrace.

      DKBUTDOC.xxx:   Documentation for DKBTrace utilities.


   The xxx extensions are one of:
        zip   - ZIP file format for IBM's (text files include CR-LF)
        lzh   - LHArc format for Amiga (text files contain only LF)
        tar.Z - compressed tar format for UNIX (text files contain only LF)

   There is a document in the DKB21Doc.xxx archive which describes the
   conversions required to use data files for DKBTrace version 1.2 with
   the older 2.0 - 2.05 version.  This file is called 12to20.doc.  There is
   now another file describing the required data file conversions from version
   2.0 through 2.05 up to the new DKB 2.12 standard.  This file is called
   25to210.doc.

   This readme file is in all DKB 2.12 archives.

