Works with JDK 1.5 and forward

This Java program will turn images to various different old computer graphic modes. Including:

Program will not simply resize the image and then choose nearest colors to use. Instead some dithering is done and because randomness, resulting images may look slightly different on different runs. Also some hardware limits (such there can be only certain amount of colors in certain area in C-64) are also taken count of, but not necessarily all of them. No guarantees of authenticity :)

Input can be either image (BufferedImage) and result is new BufferedImage. Or input can be file in which case output if file too. Public methods are very self-explanatory.

Note: Personally I'm not very happy how Amiga color palette is chosen in this small program. Colors tend to get a bit flat and too much similar colors get chosen. Easily visible if there's gradient sky or something like that on background, most colors get used to that instead of areas that would be actually important in the picture.

Example images


C-64 HiRes

C-64 MultiColor


PC EGA (64 color palette)

Amiga EHB

Source (as .txt)