[comp.os.msdos.programmer] Compiling fractint 13 with Turbo C++

minar@reed.bitnet (Nelson Minar,(???)) (07/03/90)

Just a brief satisfied customer message..

I recently bought Turbo C++ Professional (for $99 even! - advertising mixup),
and decided to test it by compiling the largest and ugliest program
that I have lying around, fractint v13.

Fractint is written in a combination of assembly and C, and it has
been organically growing for about 2 years with 30 different people
whacking at the source code. It is, to put it mildly, ugly. It only
recently was written to compile with Turbo C 2.0 at all, and as far as
I know Fractint v13 was written without any knowledge of the new Turbo
C++.

Anyway, Turbo C++ compiled the entire package (500k + of source code)
with hardly any hitches.  All I had to do was add in a proper
prototype for the comparison function within the call to qsort().  I
compiled it with every possibly compilation switch to allow for speed.

The resultant executable was 6k (out of 320k or so) larger than the
executable distributed as Fractint.exe (compiled, I think, with
Microsoft C 5.1 with all the fast optimizations on). I tried out many
of the features, and they all worked.

I also did a little speed benchmarking.  For fractals that took < 10
minutes to calculate (on a 12MHz 286 w/o coprocessor), there was
little speed difference between the two executables.  Presumably,
these fractals used fixed point math that was hand written by the
authors in assembly. However, with a fractal that took almost two
hours to calculate, Turbo C++'s executable took 20 minutes less time
to generate the fractal than the distribution executable took.
Presumably this fractal was calculated with the libraries floating
point routines, and so Turbo C++'s "fast floating point" (-ff) switch
really is fast.

This is not the most wonderful of compiler tests, and it is a
specialized application.  However, running this test did assure me
that Turbo C++ 1.0 is a reasonably functioning program that generates
good code.