First of all, you should read and possibly change the options in bubbles.h. Things should work without you having to change anything. Most of the stuff below is of no use to you if you do not have the XPM library and thus cannot use rendered bubbles. The same goes for monochrome displays, whether you have XPM or not. The most interesting #define here is BUBBLES_IO. If this is set then the -file and -directory options become available to you, which means that you can use bubbles with the program other than just the one that is used by default (see below). The problem is that there is code in the routines that implement this which arenot portable across the various flavours of UNIX. Therefore, this #define is not set out of the box. Chances are that it will work for you fine, however. I have personally seen it work under Linux 1.3.x and Solaris 2.x. IRIX has problems, from what I hear. If you do need to hack the code in order to get these features to work, please send e-mail to the address at the bottom of this file and detail your changes. They will be incorporated in a future release. If you are compiling with the XPM library you have the option of putting in or leaving out a "default" bubble in your binary, i.e. if no -file or -directory options are specified on the command line then this bubble will be used. Things are setup to include this by default, so that people can happily run the program without there being any compulsory options. If you use very large bubbles or are low on memory you might like to take the option of not compiling in the default bubble and thus saving some space should you wish to use more than one bubble (to make life more interesting, or whatever). This can be done by removing the comments around #define NO_DEFAULT_BUBBLE in bubbles.h. If you are hacking the bubbles code then you might like to switch on extra checks and messages with the DEBUG flag in bubbles.h, but otherwise you can leave it commented out. The sanity checks enables there will slow things down. There are also some configuration options to help you compile and run bubbles properly. These are explained in bubbles.h. All changes affecting portability will end up in here. If you need to change anything to get bubbles to compile on your system, please tell me what they are. Apart from the source files, there are also some other directories here which contain things you might use if loading bubbles at runtime or developing new ones : bubbles-tools/ Contains several perl scripts to help you make new sets of bubbles easily. povbubbles runs povray on a scene description file and outputs a series of XPM files which you can then postprocess if need be. To turn these files into a new instance of the default bubble source file bubbles_default.c, use the script bubblestodefault. To put all the files together into a single file which can be loaded with the -file or -directory options (if available), use the script bubblestofile. Read the comments at the top of each script to find out more. bubbles-samples/ This directory contains some compressed bubbles files which can be used with the -directory option (or the -file option on individual files there). The files will be automatically uncompressed before use. bubbles-sources/ The povray sources used to make some of the bubbles in the bubbles-samples directory. You can use these as templates for making new bubbles. I'm not much good with povray so the examples are probably pretty boring. If you make some nice bubbles yourself, I'd like to see them. Send your _sources_ to J.Macnicol@student.anu.edu.au (please don't fill my inbox with XPM files, there is a limit on the amount of waiting e-mail I can have). Enjoy. -- James Macnicol e-mail: J.Macnicol@student.anu.edu.au http://goblet.anu.edu.au/~m9305357/home.html