Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

gbc2Tga - conversion tool from GBC tiles and palettes to .tga file.

Tool was written for GBC Crystalis translation project. Crystalis uses Hicolour technique for it's title and game over screens. This tool can convert plain (uncompressed) tiles and palettes set to one .tga file for further editing and pasting into ROM (or creating your own Hicolour demo). For reverse conversion, please use "TGA2GBC" tool by Jeff Frohwein.

Palettes manipulation is the core of Hicolour technique. It uses GBC's hardware ability to access palettes memory during HBlank, which theoretically means that every scanline can have it's own set out of 8 palettes. Practically, Z80 is too slow for that, but each 2 scanlines can have totally new 8 palettes. There's also an GBC interleaving factor comes in, which shift palettes sets between left and right parts of screen.

Each color is 16 bits, so 0x800 colors. each scanline is written 4 palettes, 4 colors each (10 colors), (0x80 scanlines total) Screen is divided on 16x2 blocks, which share one palette, whole screen contains (128128)/(162) = 512 of such blocks, each pal stored as 8 bytes, so all palettes are stored in 512*8 = 0x1000 bytes and 0x10 tiles in height (i.e. 0x80 scanlines)

Please check my notes for more information.

Usage: gbc2Tga [-v]| NAME
  NAME is a name for both NAME.gfx (binary tiles) and NAME.pal (binary palettes), 
       which should be available in application's directory
  -v      show version number

Source can be compiled with Haskell stack.

Griever (


No description, website, or topics provided.







No packages published