Every IMAG resource is a 6-byte-header, interleaved-bitplane still image —
the same outer container Spirit and Vengeance of Excalibur use (see
docs/conan/amiga/engine.md § “IMAG Format”). Decoded by
src/assets/formats/frml.ts’s sibling decodeIMAG() and rendered by
tools/conan/build-assets.ts. Two platforms are shown, because they cover
different content:
The Amiga pipeline config (tools/shared/game-config.ts’s conan/amiga
entry) currently wires up the six .L32 loader assets plus the interface
resource files — 89 IMAG resources, 0 decode errors. These are the
splash/title/intro assets the standalone Conan loader executable shows
before the main Game executable ever runs (see
docs/conan/amiga/engine.md § “.L32 Files”).
The DOS VGA config additionally wires up the large per-location scenery
files — tavern, temple, three street sets, dungeon, plus system/GUI chrome
and object art (456 IMAG resources total on this platform; the Amiga
data files for the same content exist too and were used for the palette
cross-checks in docs/conan/amiga/engine.md, but haven’t been added to the
Amiga pipeline config yet). Shown below is a curated sample per category —
the four smaller categories in full, an even spread of 12 from each larger
one — rather than all 336 images, to keep this page a reasonable size; every
category decodes cleanly, this just isn’t a one-of-everything dump.
HORSE.L32 above is a good example of a wrinkle this format has and WIME’s
formats don’t: several of its IMAGs are horizontal filmstrips (multiple
riders rendered side-by-side in one image) with no FRML resource anywhere
describing the split. That split turned out to be a hardcoded 68-step lookup
table inside CONAN.EXE — see
Cracking a Hostile Executable § “.L32
sub-frame splitting”.