tileoptimize v0.25 by LiraNuna
+++++++++++++++++++++++++++++++

About and Intro
================
Tileoptimize is a tool that is aimed to size-optimize tiled images for machines with multiple palettes.
Although the output is primarily made for GBA and NDS, it could be easily adjusted to output for other machines aswell.
The application will quantisize the colors of the image to NxM sized palette of M colors spreaded over N palettes, 
resulting a more colorful image in smaller tile size with repeating tile and palette combinations to save size.

Usage
======
This is a command line application.  You must use a command line interface to launch tileoptimize using the appropriate syntax:
Usage: tileoptimize [OPTIONS] <input> <output>

Input:
-------
The program only accepts uncompressed Windows Bitmap images (.bmp) with a bit depth
of 8-bit (using a 256 color palette), or 24-bit RGB888 (full color).

Options:
---------
-o[R|B|C] - output type
	-oR - output Raw binary data (.bin) using the output name.
	-oB - output bitmap image for preview. Note: Palette will be padded to 16x16 in an 8bit BMP (256col).
	-oC - output C source code and a header.

 -pNxM - Pallete size
	Palette size to be made out of M palettes each using N colors.
	Common examples: 
		GBA/NDS: -p16x16 (default)
		GBC: -p8x4
		WSC: -p16x8

 -aN - Average factor
	Averaging the tiles using N. High number will result a less detailed image,
	while low number will result in a very detailed image, but in extreme (i.e -a1) will be very bad.
	Recommended scale: 32-96

 -D[0..3] - Dither type
	-D0 - Disable dither
	-D1 - Dither set to lowest
	-D2 - Dither set to medium
	-D3 - Dither set to max bleeding
	-D - Disable dither

 -T - Tile transparency
	Using this switch will force the quantisizer to add the pal0 (on 8bit BMP input)
	or Magenta (#FF00FF) color (on 24bit input) to each palette on a tile, resulting a transparent layer.
	This option is best to use if the image is being layered with other images. 
	Note: For the quantisizer to add the transparent color, it is sometimes requiered to
	remove a color from the palette, therefore, the image quality might decrease.

Output:
--------
The output is being taken as a name string. That means that you should not add an extension to the name.
The extension will be added automatically according to the output type requested.
Examples:
	-oB with output name 'out' will produce out.bmp
	-oC with output name 'rainbow' will produce rainbow.raw.c, rainbow.map.c, rainbow.pal.c and rainbow.h
	-oR with output name 'forest' will produce forestTiles.bin, forestMap.bin and forestPal.bin

Changelog
==========

tileoptimize v0.25
-------------------
 - Bug fixes and preparations for first release
 - Added C code output mode
 - Better quantize engine based on octrees

tileoptimize v0.2
-------------------
 - private TiTAN release
 - Added -pNxM switch to allow different palette sizes
 - Added a tile counter and flip optimizer to reduce tile count
 - Added BMP output

tileoptimize v0.1
------------------
 - Initail private release

Contact
========
Questions? Compliments? Want to send me dead cats 'cause you hate me?
	URL: http://LiraNuna.drunkencoders.com/
	EMail: LiraNuna@Gmail.com
	MSN: LiraNuna@Hotmail.com
	ICQ: 240336092
	GoogleTalk: LiraNuna@Gmail.com
	AIM: LiraNuna

If you like my work or find this tool useful, please consider a donation via PayPal to LiraNuna@Gmail.com
