Skip to content

Video stills (VIDEO/*.BBM, CREDITS.BVB) ​

Full-screen pictures shown around the videos: the Ubi Soft logo, hardware notices ("requires MMX", "Indeo not installed", the 3dfx plaque) and the credits pages.

Reader: decoders/bbm.py. State: decoded completely on all 6 files (measured, 2026-10-23). The game's readers: FUN_00469d88, FUN_00469f2c, FUN_0046a2c8 (key 0x0F3A at their calls to pod_file_open); the field order below is measured from the files.

Writer: crates/pod-formats/src/still.rs (decode, File::encode). Round-trip on all 6 files (measured): each DIB and the unused tail are kept as stored.

Layout ​

In the block container, key 0x0F3A, block 0x2000, one entry at 0xC.

FileAfter the container header
.BBMu32 value (3000; 0 in PLAK3DFX: inferred a display time in ms), u8 flag, u32 size, a Windows DIB of size bytes
.BVBu32 pages; per page: name (strings.md, page1.bmp), u32 size, DIB, u32 value (100,000,000 after page1.bmp; meaning unknown)

The DIBs are ordinary Windows bitmaps: a 40-byte BITMAPINFOHEADER, a palette of RGBQUADs for 8-bit pictures, rows bottom-up padded to 4 bytes. Both 8-bit and 24-bit occur.

After the last picture the rest of the file is unused. Most of it is raw 00 or FF (it decodes to the key or its inverse); the last words of the final block hold leftover bytes.

Prose CC0 1.0, code Apache 2.0. POD: Planet of Death is © Ubi Soft; none of its files are on this site.