"Linux Gazette...making Linux just a little more fun!"

Welcome to the Graphics Muse
Set your browser as wide as you'd like now.  I've fixed the Muse to expand to fill the aviailable space!
© 1998 by mjh 

Button Bar muse: 
  1. v; to become absorbed in thought 
  2. n; [ fr. Any of the nine sister goddesses of learning and the arts in Greek Mythology ]: a source of inspiration 
 Welcome to the Graphics Muse! Why a "muse"? Well, except for the sisters aspect, the above definitions are pretty much the way I'd describe my own interest in computer graphics: it keeps me deep in thought and it is a daily source of inspiration. 
[Graphics Mews][WebWonderings][Musings] [Resources]
This column is dedicated to the use, creation, distribution, and discussion of computer graphics tools for Linux systems.
Last month's comment on GGI, made mostly as a passing remark, generated quite a bit of email.  A few were very nice letters explaining where I was mistaken in my perception of GGI.   I now have to admit that I was wrong about what GGI is with respect to X.  It does not try to replace X and for that I'm grateful.  But even after getting numerous emails on the subject from GGI developers and supporters and reading all the material at the GGI site (plus discussion on various forums including slashdot.org), I'm still not convinced GGI is the right thing to do.  Call it a gut feeling.

I also got not just a few letters that were a little less than friendly.  So to them, I'll put it plainly - convince the commercial X server vendors GGI is a good idea and I'll believe it.  I trust them.  That said, I should also point out that as a reader of this column you should make your own decisions.  Go to the GGI Web site and read their material.  Don't trust it simply because you read it here.  Writers make mistakes too.  The web makes it very easy to distribute information, but there are very few checks in place to force writers to be accurate.  The morale:  verify your information with more than one source.

One other thing:  one responder very politely suggested that I should know more about what I write before distributing it in a place that carries such "authority" - the Linux Gazette.  He is correct:  I need to try to be as accurate as possible.  But to those who were not so polite, try to remember:  this is just a hobby.  I'm not really a graphics expert and I do get things wrong.  If you're going to nudge me in the right direction, please do so politely.  And please, no more email on GGI.  The kernel team is better qualified to decide GGI's fate in Linux than I.  I'm not even certain any of the kernel developers read this column!
Ok, on to the work at hand.  This month I conclude the two part status update on X servers with information on Metro Link.  Last month, if you recall, I covered XFree86/S.u.S.E and Xi Graphics.  Also in this months issue of the Muse is a little bit of information I gathered while trying to find some decent offline storage media.  I'll kill the ending - I ended up with an Iomega Jaz drive.  But you'll still want to read about why I chose it and what it takes to install the beast.

Finally, I do a little review of XFPovray.  This is an XForms based front end to POV-Ray, the 3D raytracing engine.  I used it recently in working on another cover for the Linux Journal.


Graphics Mews
      Disclaimer: Before I get too far into this I should note that any of the news items I post in this section are just that - news. Either I happened to run across them via some mailing list I was on, via some Usenet newsgroup, or via email from someone. I'm not necessarily endorsing these products (some of which may be commercial), I'm just letting you know I'd heard about them in the past month.

XFree86 3.3.2 is released

XFree86 version 3.3.2 is now available.  The XFree86 3.3 distribution is available in both source and binary form.  Binary distributions are currently available for FreeBSD (2.2.2+ and 3.0-CURRENT), NetBSD (1.2 and 1.3), OpenBSD, Interactive Unix, Linux (ix86 and AXP), SVR4.0, UnixWare, OS/2, Solaris 2.6 and LynxOS AT. 

The XFree86 documentation is available on-line on their Web server.  The documentation for 3.3 can be accessed at http://WWW.XFree86.org/3.3/

The XFree86 FAQ is at http://WWW.XFree86.org/FAQ/

The XFree86 Web site is at http://WWW.XFree86.org


Moonlight Creator - 3D modeller

There's a relatively new GPL modeller available. It's call moonlight creator and can be found at http://www.cybersociety.com/moonlight/ 

This modeller generated almost as much email as my comment on GGI - and I didn't even say anything about it last month! 


The NYU Center for Advanced Technology has released a new drawing tool with some object placement and scaling features possibly worthy of attention as they continue to extend The Gimp. 

Precompiled binaries for several flavors of UNIX. 

Click on Pad++. 

LParser Source Code Released

Laurens Lapré has released the source code for his popular LParser tool.  LParser creates 3D forms using a descriptive language called an L-System.  It can be used to produce 3D trees, plants and other organic items.  Output formats include VRML, POV-Ray, and DXF. 

On his web page Larens writes: 

    Source code of the lparser ZIP file (18Kb) can also be downloaded, for those who want to port or just play with new options. The code is straight, no frills ANSI-C with even less documentation but it should run on pretty much anything with a C or C++ compiler. My current job will leave me with neither the time nor the inclination to do serious code hacking so I'm throwing the code into the wind, hoping that it will germinate and produce lots of mutated offspring ! The Lparser source may be freely distributed.
The Web page for the LParser tool is at http://www.xs4all.nl/~ljlapre/.

SART - 3D Rendering Library for Guile

SART is a 3D rendering library for Guile. It supports zbuffering, raytracing and radiosity, with advanced textures, and image processing and other features. This is the first public release announcement, as the 0.5a2 version is in the developers opinion sufficiently stable and simple enough to compile to meet a wider circle of developers (and even users). 

SART is freely distributable under GPL. To read more, visit the webpage: 


The develper asks: 

    Now would somebody help me interface this thing with script-fu and/or guile-gtk?

BMRT 2.3.6 Announcment:

Larry Gritz sent out this announcement this past month:


Did You Know?

...that the Linux Focus online magazine has articles on OpenGL, GLUT, hardware acceleration issues, and POV-Ray?  Take a look at http://mercury.chem.pitt.edu/~angel/LinuxFocus/ in issues #2 and #3 (that latter is the current issue).
...there is an article on the future of VRML on the C|Net News Web site: ...there is a Java based modeller that works under Netscape's Java environment?  Take a look at Mondfarilo: the Java Applet at http://userpages.itis.com/philip/applet.html.  The modeller includes support for blobs and lathe objects and can produce the model information as POV-Ray 3.0 source (although it only does it to a window - you have to use cut and paste to save it to a file).  the

...a description of the Kodak DC120 .KDC File Format can be found at http://www.hamrick.com/dc120/.  This format is the one used by the popular Kodak DC120 digital camera.  There is Windows command line source there for converting the files to JPEG or BMP formats.  Anyone looking for a project might look into porting this to Linux for use with, for example, NetPBM, ImageMagick, or the GIMP.

...and speaking of digital cameras, did you know there is a small software package called PhotoPC for Linux that supports a number of digital cameras, including:  Agfa, Epson PhotoPC models, Olympus Digital cameras line, Sanyo, and Sierra Imaging.  Take a look at the PhotoPC Web page at http://www.average.org/digicam/.

...there is a good editorial on the future of games on Linux at Slashdot.org.  The editorial was written by Rob Huffstedtler.  It's a good piece, and I have to say I agree with Rob's sentiments about commercial software - it isn't evil and shouldn't be viewed that way.  Any development on Linux - free or commercial - helps spread the word.  Linux isn't just about free software.  It's about having a choice, whether you are a developer or a user.

...the address for the AMAPI modeller has changed (I don't know how long ago this happened, but I was just notified by a reader):

...there is a very good article on the future of 3D gaming on Linux, including an interview with Dave Taylor, at PlanetQuake.


Reader Mail

Nick Cali (Mktnc@aol.com) wrote: 'Muse:  You're quite welcome.  I had gotten some rather harsh email from someone recently that had me considering dropping out of the Linux world altogether.  Getting little notes like this, however, helps keep me going.  Thanks!

Tristan Savatier (tristan@mpegtv.com) wrote:

'Muse:  Although it is too late to change it in that issue, I'll make a note of it in the next issue.  Many thanks for the update

Glenn McCarter <gmccarter@hotmail.com> wrote to the IRTC Discussion List:

'Muse:  If anyone takes a look at this and wants to offer some commets, feel free to drop me a line.  Keep in mind that Glenn may or may not be a Linux/Unix person.  You should keep that in mind if you contact him.

David R. Heys originally asked the GIMP Discussion List (or possibly the IRTC-L list, I think I may have logged this incorrectly):

Jerry Anning <clem@dhol.com> replied: 'Muse:  I thought this information might be of general interest to my readers.  I know this is a question I've been asked a few times in the past, but didn't have quite as complete an answer.  By the way, for those that don't know, CSG is constructive solid geometry - the joining of simple shapes to make more complex ones.

David Robertson <saga@cs.otago.ac.nz> from the Computer Science Department of the University of Otaga wrote:

'Muse:  Thanks for the info Dave.  If any of my readers missed it, the first part of the X Servers Update was in last month's issue of the Muse.  This month I conclude the report with information on Metro Link.

Alejandro <Cmm.compu@lanet.losandes.com.ar> wrote:

'Muse:  www.gimp.org will point you to the latest versions of both the GIMP and  GTK.  If you have updated GTK recently, then you need to update GIMP.  Also, if you've updated the GIMP, you'll need updated GTK libraries.  The two are tied together pretty closely right now since both are getting ready to go to their respective 1.0 releases.

You're problem, assuming the file you downloaded was a newer version of the GIMP than what you already had on your system, is probably that the version of GIMP you downloaded doesn't work with the GTK libraries you have.  In that case, you need to get a compatible version of the GTK libraries.

Larry S. Marso (larry@marso.com) wrote to the GIMP User list:

Dmitry Yaitskov replied: And to this, Larry S. Marso added:  

No time for Web Wonderings this month.  I'll try to come up with something for next month.


 Offline storage using a Jaz Drive

 In playing with all the graphics software I've talked about in this column over the past year, I've managed to fill up the relatively modest 4Gig of disk space I have in the two systems currently running in my home.  When I finish with a project I generally don't need to keep all the work files on my main hard disks.  I also don't want to get rid of them - they may have something I can use in a later project.  So I need some form of offline storage.

Last year I attempted to address the problem by installing a 450Mb floppy tape drive on my file server.  Once installed, this worked fairly well with the zftape driver and the taper backup software, but initially I had quite a time getting the zftape driver installed.  From the point of view of cost the floppy tape drive is a good solid solution.  A floppy tape drive currently runs less than $150US.  From the point of view of convenience, well, it takes a long time to backup 1G of data onto a tape drive running off of a floppy controller.  Taper does provide a fairly convenient curses based interface for selecting the files to be backed up or retrieved, but my needs were less administrative.   I simply wanted to copy over a directory tree to some offline media and then clean up that tree.  Later, if I needed them, I wanted to be able to copy them back in.  I'm wasn't quite at the point where offline media management was a real problem - I didn't need special tools for keeping track of what I had on the offline media.  What I needed was a removable hard disk.

Fast forward to this year.  Technology once again has heard the cry of the meek and a flurry of removable hard disk solutions are now hitting the shelves.  One of the first, and currently the most popular if you believe the noise in the trade magazines, is the Iomega Zip drive.  This is a drive with a cartridge that looks somewhat like a fat floppy disk.  The cartridge holds 100Mb of data, good enough for 3 or 4 of my smaller projects or one large project.  The drives are running under $130US (I've seen them as low as $119) and the cartridges are about $20 each, cheaper if bought in bundles of 3 or more.  The drives are available as either parallel or SCSI connected devices.

The problem with this solution is simply size.  100Mb of data can be generated fairly fast using the GIMP - I've had swap files from this tool larger than that.  I also had a hard time finding an external drive.  Most of the drives I could find locally were internal drives.  This was probably just a local distribution or supply problem, but then I didn't look very hard for these drives once I'd decided they simply were too small.

The next step up from this for Iomega is the Jaz drive.  The first versions of these drives, which is what I purchased, hold about 1G of data.  The latest versions will support the old 1G cartridges and the newer 2G cartridges.  An external SCSI version is available so I was able to connect the drive to my recently purchased Adaptec 2940 (which is what I hooked my scanner to) without having to dig into the innards of my hardware.  Again, convenience is a key here - I was willing to pay a little more for ease of use.

There are a number of removable hard drive solutions on the market today, however I wasn't able to find information on support for any of these devices except the Iomega drives.  This information is available at the Jaztool page.  Jaztool is a package for managing the drive, which I'll discuss in a moment.  Strangely, the Jaz Drive Mini-Howto does not appear to be on the Linux Documentation Project pages, although a Mini-Howto for the Zip drive can be found there.

Since the drive is connected to a SCSI controller there aren't any Jaz-specific drivers necessary.  You just need to find a SCSI card with supported drivers.  I chose the Adaptec 2940 because the driver for it (aic7xxx) was a loadable module that was precompiled in the Red Hat 4.2 distribution that I currently use.  In other words, I was able to simply plug the card in, run insmod aic7xxx, and the card was running.  The 2940 has a high density SCSI connector which is the same sort of connector used by the Jaz drive.  I had previously purchased a high density to 25 pin cable converter to connect my 2940 to the UMAX scanner (which has the 25pin connector), so I simply stuck the Jaz driver between the scanner and the adapter.  The Jaz drive comes with a converter, if you need it (the UMAX scanner did not).  Total time for hardware install - about 20 minutes.
As mentioned earlier, there is a tool for managing the Jaz drive called Jaztool.  This package provides a software means to eject, write protect or read/write enable, and retrieve drive status.  Password protection is available but not officially supported. The man page gives information on how to use this feature if you wish to give it a try.  Mode 5 (password protected write and read) is not supported by jaztool, even though the Jaz drive supports it.   You cannot access the cartridge that comes with the drive in write mode, so you'll need to use the jaztool program to allow you write access to that cartridge.  The Jaz Drive Mini-Howto explains how to do this quite clearly.  The disk can be mounted as delivered using the VFAT filesystem type, which means that long file names can be used.  This removes the need to reformat disk with native Unix filesystem.  However, the disk that comes packaged with drive is nearly full.  It contains a large number of MS-related tools for DOS, Win3.1, Win95 and WinNT.  Since I didn't need these I simply mounted the drive and used rm -rf * on it to clean it up.  Once I'd done that, I decided to go ahead and just place an ext2 filesystem on the driver.  This is simple enough following the information provided in the Jaz Driver Mini-Howto on the Jaztools page at http://www.cnct.com/~bwillmot/jaztool/.

Speed on the drive is quite good - the Jaz drive has an average of 12ms seek times, compared to the 29ms of the Zip drive.  This provides the sort of file management I was looking for by allowing me to simply copy files to and from the drive and at a speed comparable to my regular disk drives.  It's certainly faster than the floppy tape solution.

As I was writing this article I started to consider if I had gotten my moneys worth.  The Jaz drive runs about $299US for an external SCSI drive, about $199US for internal drives.  Compared to the floppy tape I got about twice the storage space for about twice the price.  At least I thought I had, until I added in the cost of the SCSI card and the media.  The cost for the SCSI card I can significantly reduce by making full use of the 7 devices I can connect to it, but it still ran about $240US.  The media, on the other hand is significantly higher.  Travan 3 tapes (which are what you use with the floppy tape drive) run about $30US or so (I think - it's been awhile since I purchased them).  The Jaz cartridges are $125US each!  You can save a little by purchasing them in packs of 3 for about $300US.  The good news here is that recent court rulings have allowed another company (whose name escapes me right now) to sell Zip and Jaz compatible media here in the US.  The result should be a drop in the price of the media over the next 6 months to a year.  The one cartridge I have now will hold me for another couple of months at least.  By then, keeping my fingers crossed, I'll be able to get a 3 pack for $250 or less.

So, adding the Iomega Jaz drive was simple enough.  The information and software provided by Bob Willmot (the Jaztools author) made getting the cartridge running almost a no-brainer.  And I now have over a Gigabyte of external storage that I can access nearly as fast as my regular hard drives.  All things considered, it's been one of my better investments.

X Server Update Part II - Metro Link

Last month I provided the first part of an update on 3D support available in X Servers and from other places.  I had gotten a number of emails from readers asking where they could find drivers for various 3D video cards.  I also wanted to find out to what extent the X Input Extension is supported.  Since I hadn't done so in the past, I decided to contact the various X server vendors and see what they had to say on the subject. 

I sent out a query to the 4 X server vendors I knew of:  Xi Graphics, Metro Link, XFree86 and S.u.S.E.  The query read as follows: 

Do you have any information which I may use in my column related to your current or planned support for 3D hardware acceleration (specifically related to OpenGL/Mesa, but not necessarily so)?  What about support for alternative input devices via the X Input Extension.  The GIMP, and its X toolkit Gtk, both make use of X Input if available and I expect many other tools will do so as well in the near future. 

Last months article covered 3 vendors, Xi Graphics and XFree86/S.u.S.E, plus the Mesa package.  This month I'll cover Metro Link.  Due to a bit of poor time managment on my part, I wasn't able to cover Metro Link at the same time as the others.  My apologies to all parties for this. 

While reading this article please keep in mind that my intent was to simply query for information about X Input and 3D hardware support.  It is not intended for this to be a comparison of the vendors products nor do I offer any editorial on the quality of their products.  I have tried to remove some of the marketing information both from last months article and this months, but I also want to be fair to the respondents and provide as much of the information that they provided that is relevent to the topic. 

My first contact with Metro Link was through the assistance of Dirk Hohndel at S.u.S.E., who forwarded my request to Garry M. Paxinos.  Garry was quite helpful and offered information on his own and had Chris Bare contact me with additional information. 

Garry first provided me with a few dates: 

  • March 30 - Metro-X 4.3 server release.
  • May - CDE 2.1.10
  • July - Hardware Accelerated OpenGL
This he followed up with a little more detail: 
    We have a Level II OpenGL source code license from SGI.  This makes it difficult for us to work with GPL'd source.  We have been shipping a software only version of OpenGL since October 8, 1995.  Due to both the competitive nature of this activity and that things might change before release, it is rather difficult for us to have detailed comments on: 
    • Architectural issues.
    • Chip/Board Support
    • Relationships with Chip/Board Vendors (most are under NDA anyway)
    • Relationships with OS vendors

    We plan on making our plans public when we get closer to our release.  Count on quite a few press releases. 
-Top of next column-
More Musings...  
    Current plans are for 3 to 4 specific chip types to be supported in our initial OpenGL hardware release.  We plan on supporting at least two different CPUs in that release.  We've had a policy since our FCS (First Customer Shipment) back in 1995 that all customers will receive a copy of the hardware version when it is released.
Garry noted that Metro Link supports 5 different CPUs:  x86, PPC, Alpha, 68k, and Sparc.  He also mentioned that they support multiple operating systems.  Although I didn't mention it last month, both XFree86 and Xi Graphics servers are also available for other operating systems besides Linux. 

Not long after my first contact with Garry, Chris Bare provided a more detailed description of what is in the works.  Chris is the engineer responsible for Metro Link's X Input Support. 

    Metro-X 4.3 (due out in the next month or so as I write this) will include support for dynamically loadable X Input driver modules. The 4.3 release will include drivers for Elo Graphics, Carroll, Micro Touch and Lucas/Deeco touch screens. We are also going to make available a skeleton driver and documentation for anyone interested in supporting devices on their own.  This technology will also be donated to Xfree86 for inclusion in one of their future releases. 

    Our graphical configuration tool provides a fast and accurate on-screen calibration procedure for any supported touch screen. 

    Future plans include support for the Wacom tablet as a loadable X Input module and support for 3D input devices like the Space Orb. We are interested in supporting any device there is a reasonably demand for, so if there are any devices your readers have asked about, please let me know.

As you can see, Metro Link did not list specific boards which they plan to support.  Neither XFree86 nor Xi specifically mentioned any boards last month.  There appears to be quite of bit of work in the pipe line, however, and according the Garry we should see a flurry of announcements in the relative near term.  Chris does point out some specific input devices that will be supported in the next release, however. 

Contact Information 

Garry added:  We do make announcments to c.o.l.a.  And we are working on updating our web site including plans on keeping it up to date. The sales@metrolink.com address is our standard public address.    However, that is an autoresponder.   The address holly@metrolink.com is referenced in the autoreply and is the 'human' that handles any sales questions manualy.
The following links are just starting points for finding more information about computer graphics and multimedia in general for Linux systems. If you have some application specific information for me, I'll add them to my other pages or you can contact the maintainer of some other web site. I'll consider adding other general references here, but application or site specific information needs to go into one of the following general references and not listed here.
Online Magazines and News sources
C|Net Tech News
Linux Weekly News

General Web Sites
Linux Graphics mini-Howto 
Unix Graphics Utilities 
Linux Multimedia Page 

Some of the Mailing Lists and Newsgroups I keep an eye on and where I get much of the information in this column: 
The Gimp User and Gimp Developer Mailing Lists
The IRTC-L discussion list 

Future Directions

Next month:  XFont3D/Font3D probably.  Beyond that I'm not certain yet.

Let me know what you'd like to hear about!

© 1998 Michael J. Hammel

Previous ``Graphics Muse'' Columns

Graphics Muse #1, November 1996
Graphics Muse #2, December 1996
Graphics Muse #3, January 1997
Graphics Muse #4, February 1997
Graphics Muse #5, March 1997
Graphics Muse #6, April 1997
Graphics Muse #7, May 1997
Graphics Muse #8, June 1997
Graphics Muse #9, July 1997
Graphics Muse #10, August 1997
Graphics Muse #11, October 1997
Graphics Muse #12, December 1997
Graphics Muse #13, February 1998
Graphics Muse #14, March 1998

Copyright © 1998, Michael J. Hammel
Published in Issue 27 of Linux Gazette, April 1998