Downloads

Starfish For Windows v2.2

Check the revision history for a list of what's new in this version.

Note that this version won't work with palettes from v2.1 and older.

Starfish For Windows v2.2 - Windows Installer (510 KiB EXE file)

Starfish For Windows v1.0 - Stable

This used an older version of the Starfish pattern generator, and produces a slightly different style of output. It is very bare-bones.

Starfish For Windows v1.0 - Manual Installation (14 KiB ZIP file)

Non-Windows Versions

Versions of Starfish are available for other systems, including:

Mac OS X

StarfishX v2 - available at M. Scott Marcy's Starfish site

Linux

Starfish2 - a new Linux version of Starfish by Dmitry Ovechkin, featuring the version 2 pattern engine and SSE acceleration!

Available at SourceForge.

Mac OS 8/9

Starfish v1.4, v2 - available at Mars Saxman's Starfish site (which seems to be down)

Unix

Starfish v1.1 - available at Mars Saxman's Starfish site (which seems to be down)

Source Code

Starfish is compiled and built with MSVC 6.0. The source code packages below include the source code for the Starfish engine, the source code for the GUI front end, and the MSVC project files. They do not contain all the necessary libraries to build a working version of Starfish; you'll need to obtain and build those separately (see below).

Starfish For Windows v2.2 - Source code (252 KiB ZIP file)

Starfish For Windows v1.0 - Source code (290 KiB ZIP file)

Libraries Used In Starfish

libpng v1.2.5

This library provides the ability to write images in the excellent, open, lossless PNG file format. Requires zlib.

zlib v1.1.4

The ZLIB data-compression library is used by the PNG library to compress image data.

IJG JPEG v6b

This is the Independent JPEG Group's JPEG library. This library provides the ability to write images in the popular, lossy JPEG format.

Agner Fog's RANROT and ASMLIB

The standard C/C++ libraries don't include a way to generate random floating point numbers, so I used RANROT, which offers several ways to generate random floating point numbers.

ASMLIB includes an easy way to check if the CPU and operating system can support Intel's SSE instructions, which allows Starfish to choose SSE or FPU mode automatically.

Both of these libraries are implemented in assembler, yet both are packaged so neatly and sensibly that they're absolutely a cinch to use.

Inno Setup v5.0.6

Not really a library, but the installer program for Starfish deserves a lot of credit.  Inno Setup is easy to get started with, but has more advanced features as well.