Also Known As: RIX Image File, ColoRIX VGA Paint
Type | Bitmap |
Colors | Up to 32 bits per pixel |
Compression | Undocumented |
Maximum Image Size | 64Kx64K |
Multiple Images Per File | No |
Numerical Format | Little-endian |
Originator | RIX SoftWorks |
Platform | MS-DOS |
Supporting Applications | ColoRIX VGA Paint |
See Also | None |
Usage
Storage of bitmap files with few colors under MS-DOS.
Comments
RIX's programs have been bundled with several video cards for the PC running MS-DOS.
Vendor specifications are available for this format.
In most respects, the RIX format appears to be a nice format to support. Unfortunately, although the rest of the format, which we have included on the CD-ROM, is reasonably well-documented, the compression algorithm used in the files is not. RIX SoftWorks says that the algorithm is not published because it is "extremely complicated." The ColoRIX VGA Paint document goes on to explain that:
Although some compression schemes are more efficient for some pictures, the RIX compression scheme performs extremely well with a broad range of picture types.
Contents:
File Organization
File Details
For Further Information
Expert opinion is mixed between skepticism and outright dismissal, so it is a shame that there is no way to verify this claim. Certainly, an advance in compression technology would bring RIX more than a modest portion of riches and fame. In any case, until RIX decides to publish its full format specification, you'll just have to wing it with the information provided here.
The RIX format is a simple bitmap format, consisting of a fixed header, a palette, and bitmap data.
The RIX header is structured as follows:
typedef struct _RIX_HEAD { CHAR ID[3]; /* Three-character ID field, "RIX" */ WORD Width; /* Image width in pixels */ WORD Height; /* Image height in lines */ CHAR PaletteType; /* Palette type code */ CHAR StorageType; /* Format of bitmap data */ } RIX_HEAD;
Width and Height represent the size of the image.
PaletteType identifies the type of display device and can have any of the values listed below. These are calculated using a scheme discussed in the specification document.
Value | Type of Display Device |
---|---|
CB |
EGA |
AB |
Extended EGA |
AF |
VGA |
E7 |
Targa 16 |
9F |
IBM PGA |
10 |
Targa 16 |
18 |
Targa 24 |
20 |
Targa 32 |
StorageType can have any of the values listed below. Refer to the specification document for a discussion of the scheme used to calculate these values.
Value | Type of Data |
---|---|
80 |
Compressed |
40 |
Extension block |
20 |
Encrypted |
00 |
Linear, one byte per pixel |
01 |
Planar (0213), similar to EGA |
02 |
Planar (0123), similar to EGA |
03 |
Text |
If the storage type value indicates an extension block value, it is followed by a byte containing an extension format value. Some typical format extension types are illustrated below.
Value | Type of Extension |
---|---|
00 |
ASCII text |
01 |
Original image origin |
02 |
Original image screen resolution |
03 |
Encryptor's ID |
04 |
Bitmap palette in use; length is either 2 or 32 bytes |
After the extension format value is a byte containing the total number of bytes in the extension block. The actual extension block data follows immediately afterward.
RIX suggests that developers with special extension needs request an extension storage type value less than 128.
Following the header is a palette, which is either 48 or 768 bytes long. Palette entries are stored as RGB triples, one for each color. Following the palette is the image data. If the image data is not encrypted or compressed, the data format can be deduced from the storage type value.
For further information about the RIX format, see the specification included on the CD-ROM. You can contact:
RIX SoftWorks, Inc.
Attn: Richard Brownback
18023 Sky Park Circle, Suite J
Irvine, CA 92714
Voice: 714-476-8266
You can also contact:
Paul Harker
Voice: 714-476-8486
The RIX file format is also documented in the ColoRIX VGA Paint manual, available by purchasing a copy of the program from RIX SoftWorks.
Copyright © 1996, 1994 O'Reilly & Associates, Inc. All Rights Reserved.