This month Dean shares some of the fortuitous discoveries he's made in his journey through the Infomagic Developer's kit, including ports and clones of DOS programs and some favorite utilities.

xfractint---this is a port from MS-DOS of what I consider the greatest fractal exploration program ever written. It's free, fast, and fun. Note the “x” starting the name. You'll need X-Windows to run it; it may already be a menu option if you have Slackware—look under “Applications”. I found the program to be essentially the same as the MS-DOS version, with minor differences. Pressing del does not choose the video mode as it does in DOS. Also, the color cycling commands (+, -) worked but the other cycling option, c, would occasionally freeze the program. Yet these are minor nitpicks—the fun is playing with the variety of fractal types and the parameters that go with each. My personal favorites are color cycling “plasma” and “dynamic”, which give me flashbacks to many of the Grateful Dead concerts that I missed. As an additional fractal exploration tool, you can develop your own fractal formulas—but I'll let you figure out how.

pov-ray stands for “Persistence of Vision—ray caster”, and, like fractint, it's another great program, with an enthusiastic following. To get pov-ray started requires untarring a few files, which for me meant everything but the source code. My usual complaints about unclear documentation hold for pov-ray; the directions did not quite match reality. The instructions suggest creating a pov-ray directory but the files automatically create /pov when untarred. The instructions suggest you add:

setenv POVRAYOPT -l$HOME/povray/include

to .cshrc except that, I figure, /povray should read /pov to match the untarred setup. Also, I couldn't find a .cshrc but I did find /etc/csh.cshrc, which I copied and modified accordingly. From what I can figure, csh.cshrc is the configuration file for the C shell. I also noticed three binaries of pov-ray. Two, povray.s and povray.v, looked exactly the same, or at least were the same size. (I did a file compare and they are different). povray.x was slightly larger. I figured I'd use povray.s.

pov-ray creates Targa graphics files. You'll need to view them and a viewer is not included. The manual suggested either xv or xli. I installed both. xv was on Slackware's XAP disk (note that this program requires libgr, also on the XAP disk, also be installed) and I finally found xli on the Sunsite archive CD-ROM buried in something like /X11/apps/graphics/viewers.

Not realizing that to activate changes to login scripts all I'd have to do is logout and login again, I completely shutdown the system and rebooted.

Returned to DOS to play a round of Terminal Velocity. After again having vital parts of my ship blown to pixel dust, I booted back to Linux to try pov-ray. The viewers sat waiting. csh.cshrc was now activated. I copied a sample file into /pov/bin and typed:

povray.s -w320 -h200 -ichess.pov -otest.tga \
  +ft -a -dG -v

Nothing happened. pov-ray couldn't find the include files supposedly pointed to by .cshrc. The familiar stomach cramps started. I didn't want to RTFM, not 250KB worth of text. Instead I browsed through the various Linux HOW-TO files on the main InfoMagic CD looking for information on shells scripts and login initialization. For the heck of it I modified /etc/csh.login but pov-ray again couldn't find the include subdirectory. Of course: I'm not using the C shell! I use bash. Modifying /etc/profile yielded a similar lack of success. What is going on? Finally I tried the obvious: copying the include files into /pov/bin. Yes, that worked! Sure, it's not as elegant as fiddling with the various configuration files—but this solution worked, and worked easily.

And yet pov-ray wouldn't work completely. It could find the include files but it couldn't start the graphics display. Oh yeah, I had to run it through X-Windows. (I may not have had to do it in X-Windows, but the command -dG tells it to display the picture as it raycasts. When it does so it expects X-Windows.) For about 10 minutes I saw a picture of a chess set develop line by line. While waiting for the picture to finish I read the pov-ray info that it had belched before casting and noted that the binary was compiled with 386s in mind. Later, in reading the instructions, I found the suggestion for recompiling for 486s to speed things up. Now to see the Targa output. I called up xv from my X-Windows applications menu, loaded the file, and saw a chess set. Beautiful! And xv had some options—blur, sharpen, oil paint, spread, and de-speckle, to name a few—that induced more flashbacks. But I wanted to try the other viewer as well. Via a shell I called up xli. I expected a graphics interface; I got a command line reprimand to specify options. Typing xli -help showed that the program offers a tremendous number of options and can manage darn near any type of image, including many I had never heard of, as well as many very familiar in the DOS world. But my lack of familiarity with many of the terms, combined with the command line interface, soured me on xli. I did get the chess set image loaded, but I got no farther, and went back to xv to play some more.

Dean Oisboid, owner of Garlic Software, is a database consultant, Unix beginner, and avowed chocolate addict.


Geek Guide
The DevOps Toolbox

Tools and Technologies for Scale and Reliability
by Linux Journal Editor Bill Childers

Get your free copy today

Sponsored by IBM

Upcoming Webinar
8 Signs You're Beyond Cron

Scheduling Crontabs With an Enterprise Scheduler
11am CDT, April 29th
Moderated by Linux Journal Contributor Mike Diehl

Sign up now

Sponsored by Skybot