Version 1.2 README File

PaletteBuilder is a simple Java application designed to open, create, modify, and save Jasc PAL palette files. Jasc PAL files are simple text files that contain information on color palettes, and were originally used to save palettes for their Paint Shop Pro application. Mandebrot Madness JAVA!, a Java-based Mandelbrot image renderer, uses Jasc PAL files to store palette information. PaletteBuilder was designed as a helper application to accompany MMJ! and allow users more flexible control over building custom palettes.

PaletteBuilder is an application, not an applet! It will not run within a Web browser!

Running PaletteBuilder

In order to run PaletteBuilder, you will need:

PaletteBuilder is a windowed application and uses the AWT (Alternative Window Toolkit). You cannot use it on a character-only system.

Because PaletteBuilder is a Java application, you will need some sort of Java virtual machine on which to run it. Java runtime environments have been ported to many operating systems now, and you are likely to find one easily with a quick search of the Web. I suggest starting at Sun's Java home page ( They have a number of ports located there, and links to other ports, such as Linux. Make sure to get a Java 1.1 implementation or later! PB is a Java 1.1 application and will not run under Java 1.0! I would strongly suggest JavaSoft's JDK or JRE 1.1.7B, since there a number of features in PB that rely on features that have bugs in early versions of the JDK and JRE, and it also includes a JIT compiler.

PB is normally invoked from the command line by running your Java virtual machine and giving it the main class to run. For example, on a Windows machine with Sun's JDK installed and PB is in the C:\PB directory, you would simply type:

   C:\PB> java PaletteBuilder

If you have a different virtual machine, use whatever command necessary to invoke it. PaletteBuilder.class is the primary class file, and this is class you will use to load PB. Of course, if you install PB in a different directory, you'll need to be there to run it.

It would probably be helpful to create some sort of command file so you don't have to type this in all the time. In the DOS/Windows world, these are called batch files; in the UNIX world, shell scripts. If you create a command file, you can simply execute the command without having to do all that typing (not that it's a whole lot anyway). It might also be helpful to create an icon, perhaps for your Windows or Mac desktop. Creating such a files is left as an exercise for the reader.


Command Overview

Here is a list of PaletteBuilder's commands:

File -> New...: Creates a new palette. When you choose this menu item, you will be presented with a dialog box that asks you to select the palette size. You may create palettes with 16 or 256 colors. PaletteBuilder will only read and write 16- and 256-color palettes. When you click the Ok button, a new, empty palette is created. Shortcut key N.

File -> Open...: Opens a PAL file. This menu item will open your operating system's open file dialog box, where you can select a file to load. Only valid Jasc PAL files can be opened. Note that some other applications use the PAL extension (such as the Microsoft PAL palette file), but PaletteBuilder cannot read these files. If a file is not a valid Jasc PAL file, you will be told so when PaletteBuilder tries to open it. Shortcut key O.

File -> Save: Saves the currently open file to disk. If you already have a file open, this option will let you save the current palette to the open filename without having to specify it in a dialog box. Use this to quickly save your work after making a change. This item is disabled if you created a new palette from scratch; use the Save As... item instead. Shortcut key S.

File -> Save As...: Save the current open palette to a new file name. This will open your operating system's save file dialog, where you can specify a name to save your palette to. Use this when saving a newly created palette, or if you want to save a palette opened from a file to a new file name. Shortcut key A.

File -> About...: Displays PaletteBuilder copyright information.

File -> Exit: Exits PaletteBuilder. If the currently open palette has not been saved, you will be prompted to do so. Shortcut key X.

All Edit menu commands can also be reached by bringing up a pop-up menu on the desired color.

Edit -> Copy Color: Copies the currently selected color to the "clipboard." Shortcut key C.

Edit -> Copy Color Range...: Allows you to copy a range of colors to the "clipboard." This will open a Copy Color Range dialog box, where you can specify the starting and ending index values for the copy. Then these colors will be copied to PaletteBuilder's internal clipboard and the copy can be pasted elsewhere into this or another palette. You can also perform this action by first selecting the starting color index with the mouse, then holding down the Control key (Command key on a Mac) and clicking the second index. Shortcut key K.

Edit -> Paste Color: Replaces the currently selected color with the color on the "clipboard." This is disabled if no color has been copied to the clipboard. Shortcut key V.

Edit -> Paste Color Range: Copies a range of colors from the "clipboard" into the palette. The first color on the clipboard will replace the currently selected color in the palette, and the rest of the colors will replace the colors after it. The size of the color range pasted depends on the size of the color range copied earlier. If the pasted range exceeds the size of the palette, only the colors that can be pasted will be pasted. This item is disabled if no color range has been copied to the clipboard. Shortcut key P.

Edit -> Change Color...: Change the currently selected index color to another color. This will open a Select Color dialog box, where you can specify the color to be used at this index value. You can also access this function by double-clicking the color you wish to change. Shortcut key H.

Edit -> Create Range...: Creates a blended range of colors from one index value to another. With this function, you can create a smooth transition between two colors by specifying a starting and ending index value and starting and ending colors. PaletteBuilder will then create the color range and paste it into the palette at the indexes specified. Shortcut key R.


Shortcut Keys

Most menu commands now have shortcut keys available. Shortcut keys, or "accelerator keys," allow you to perform the same function of a menu command with only a couple quick keystrokes. Unfortunately, how Java implements shortcut keys is platform dependent. On a Windows machine, you must hold down the Control key then press the shortcut key; on a Mac, you must use the Command (Apple) key plus the shortcut key. To be sure what to use, check your Java Runtime documentation to see what "activator" key is needed for your platform.


How Do I...?


Known Bugs

Unfortunately, even the best of programs have "bugs." (It's just that the best of 'em don't have as many!) Here are a few of the known bugs in PB that I am working on fixing. Please do not report these; I already know about them. If you find what you think is a bug, follow these actions:

  1. Check this list for known bugs first. If you can't find it here...
  2. Mail me at and give me the following information:

I can't guarantee that I can fix all problems, especially since I don't have access to all the platforms and VMs that you can run PB on. However, I will certainly try. Now, as promised, here's that bug list:


Version History


Copyright and Contact Information

This program is © Copyright 1999, Jeffrey T. Darlington. All rights reserved. It is to be distributed as "freeware;" you may copy it and distribute it as often as you wish, but you may not collect financial compensation for it. If you wish to distribute it, please only do so as the complete distribution archive (complete with documentation) and with this copyright file. If, by some strange whim of fate, you would like to package this application along with something else, such as on a CD of shareware, etc., please contact me first and let me know. Also, please give credit where credit is due, and if it is placed online, provide a notice and/or a link to my web page.

This program is provided AS IS without any form of warranty. By using this product, you agree that the creator will not be held liable for any damages that may inadvertently occur through the use of this program. It is also provided without technical support (however, I will happily answer any questions or suggestions when I can; do not interpret this as an obligation).

Contact Information

Official Mandelbrot Madness JAVA! Web page:
(You'll find PaletteBuilder there too!)

Jeffrey T. Darlington, program author

Please visit Apocalypse Pete's Web Page of Mirth and Mayhem!, conveniently located at
While you're at it, make sure to visit General Protection Fault at
Thank you, and God bless us, everyone.

Last revised March 1, 1999


[Return to README]

© Copyright 1999, Jeffrey T. Darlington. All rights reserved.