Pushover Image Format

From ModdingWiki
Jump to navigation Jump to search
Pushover Image Format
There is no example of an image in this format — upload one!
Format typeImage
HardwareEGA, VGA
Colour depth4-bit colour
Minimum size (pixels)320×200
Maximum size (pixels)320×200
PaletteInternal
Plane count4
Transparent pixels?No
Hitmap pixels?No
Games

DATA/ANI??.PIX contains full-screen backdrop graphics for Pushover. Related title/reward screens use this asset family. Files are RNC-compressed; the expected decompressed size is 32034 bytes.

File format

Offset Data type Description
0x00 UINT16BE[16] Internal RGB444 palette (0RGB words)
0x20 BYTE[2] Unidentified header bytes
0x22 BYTE[32000] 320×200 image, four interleaved bitplanes

Palette

Decode the 16 colours as in Pushover Palette Format, scaling each nibble by 17. Unlike .PAL files, this header has only two bytes after the colours, not 32 padding bytes.

Bitmap

Each horizontal run of 16 pixels occupies eight bytes: two bytes from plane 0, two from plane 1, two from plane 2 and two from plane 3. Bits are MSB-first. Combine planes 0–3 with weights 1, 2, 4 and 8. There are 20 runs per row and 200 rows, in row-major order.

This is word-interleaved storage, unlike the plane-major sprite banks. The matching .DLX applies XOR changes to the decoded palette-index image.

Notes

The presence of a TITLE asset is not proof that the examined executable loads it. The repository records unresolved title-screen call paths.

Source code

From pushover, the open-source browser port and its reverse-engineering notes:

Credits

This file format was reverse engineered by VorticonCmdr. If you find this information helpful in a project you're working on, please give credit where credit is due. (A link back to this wiki would be nice too!)