Jump to content

ILBM: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
m disambig
Elaboration on available graphics modes
Line 1: Line 1:
'''ILBM''' is a subtype of the [[Interchange File Format]] used for storing picture data. ILBM stands for '''I'''nter'''L'''eaved '''B'''it'''M'''ap which refers to the way the pictures are stored. The picture is split in bitplanes and each bitplane stores one bit of color information for all pixels. With 2 bitplanes 4 colors are possible, with 3 bitplanes 8 colors etc. The format supports horizontal and vertical [[Run-length encoding|RLE]] (Runtime Length Encoding) compression.
'''ILBM''' is a subtype of the [[Interchange File Format]] used for storing picture data. ILBM stands for '''I'''nter'''L'''eaved '''B'''it'''M'''ap which refers to the way the pictures are stored. The image data is stored as a varying number of bitplanes, each storing one bit of data for each pixel in the image. The format supports horizontal and vertical [[Run-length encoding|RLE]] (Runtime Length Encoding) compression.


The format closely matched the abilities and expectations of the [[Amiga]] chipset, of which two major revisions existed.
The format was popular on the [[Amiga]] [[home computer]] and therefore supports some special modes of interpretation of the bitplanes. One is [[HalfBright]] where the first 5 bitplanes select one of 32 colors and the 6th bitplanes will scale the 32 colors to half the brightness (prior to the [[Advanced_Graphics_Architecture|AGA]] chipset the Amiga only had 32 registers for color translation). The other mode is HAM – [[Hold And Modify]] – where there are only 16 colors in the palette, but each pixel can take the color from the previous one and modify only one of the red, green or blue intensities. This makes it possible to display upto 4096 colors with only 6 bitplanes (although some color changes take 3 pixels). The choice of the first 16 colors are therefore important for the quality of the overall picture.

On the [[Original Amiga chipset|OCS]]/[[Enhanced Chip Set|ECS]] chipsets up to 6 bitplanes were supported, which would normally limit the number of colors to 64. However only 32 palette registers were available. Usage of one to five bitplanes is straightforward, according to [[Binary numeral system|binary]] progression. The first bitplane provides 2 colors, the second one doubles that to 4 colors, the third again doubles that to 8 colors, the fourth provides 16, and five bitplanes allows for 32 colors. With six bitplanes there are two display modes. [[HalfBright|Extra Half-Bright]] mode provides 64 colors, the last 32 being half as bright as the first. And more interestingly the [[Hold And Modify]] (or HAM) mode which while only making use of 16 palette colors, allowed the display of 4096 colors with some restrictions.

On the [[Advanced_Graphics_Architecture|AGA]] chipset the [[Amiga]] was able to use 8 bitplanes and have 256 color registers. This meant the addition of straight 64, 128, and 256 color modes. Additionally an upgraded HAM8 mode was made available, using 64 palette colors, and offering a maximum of 262,144 displayable colors.


Because '''ILBM''' is based on the Interchange File Format the file consists of chunks, each chunk consists of a 4 byte type, a 4 byte length field and a structure depended on the type of the chunk. This makes it possible for programs to extend the format. Unknown chunks can be skipped because the length is known.
Because '''ILBM''' is based on the Interchange File Format the file consists of chunks, each chunk consists of a 4 byte type, a 4 byte length field and a structure depended on the type of the chunk. This makes it possible for programs to extend the format. Unknown chunks can be skipped because the length is known.

Revision as of 13:17, 22 October 2005

ILBM is a subtype of the Interchange File Format used for storing picture data. ILBM stands for InterLeaved BitMap which refers to the way the pictures are stored. The image data is stored as a varying number of bitplanes, each storing one bit of data for each pixel in the image. The format supports horizontal and vertical RLE (Runtime Length Encoding) compression.

The format closely matched the abilities and expectations of the Amiga chipset, of which two major revisions existed.

On the OCS/ECS chipsets up to 6 bitplanes were supported, which would normally limit the number of colors to 64. However only 32 palette registers were available. Usage of one to five bitplanes is straightforward, according to binary progression. The first bitplane provides 2 colors, the second one doubles that to 4 colors, the third again doubles that to 8 colors, the fourth provides 16, and five bitplanes allows for 32 colors. With six bitplanes there are two display modes. Extra Half-Bright mode provides 64 colors, the last 32 being half as bright as the first. And more interestingly the Hold And Modify (or HAM) mode which while only making use of 16 palette colors, allowed the display of 4096 colors with some restrictions.

On the AGA chipset the Amiga was able to use 8 bitplanes and have 256 color registers. This meant the addition of straight 64, 128, and 256 color modes. Additionally an upgraded HAM8 mode was made available, using 64 palette colors, and offering a maximum of 262,144 displayable colors.

Because ILBM is based on the Interchange File Format the file consists of chunks, each chunk consists of a 4 byte type, a 4 byte length field and a structure depended on the type of the chunk. This makes it possible for programs to extend the format. Unknown chunks can be skipped because the length is known.

The following chunks are defined for the ILBM type:

  • BMHD (BitMapHeaDer)
  • CMAP (ColorMAP) - standard IFF chunk for color palette
  • GRAP (GRAP position)
  • CAMG (Commodore AMiGa computer)
  • BODY - all bitplanes and masks, interleaved by row

Of course, an ILBM file can have any of the standard IFF chunks for description of author, version, copyright etc. Files created with DPaint also have:

  • DPAN (Dpaint) - for storing DPaint's internal settings

A variation on the ILBM format exists called ANIM, which supports animation. This format has extra chunk types defined:

  • ANHD (ANimation HeaDer)
  • DLTA - stores changes between frames, with various compression methods supported to make use of the redundancy between frames.