A tiny utility to convert the Supaplex .DAT graphics files into viewable PNGs using the same bitplane decoding the original game uses.
- Python 3.9+
- Pillow (
pip install pillow)
Basic examples:
python sp_extract_dat_png.py --dat-dir ../resources --output-dir ./outpython sp_extract_dat_png.py --files MENU.DAT TITLE.DAT --palette-file ../resources/PALETTES.DAT
Notes:
- If
PALETTES.DATis available (auto-detected under--dat-diror passed with--palette-file), the game palettes are used. Otherwise a grayscale fallback is applied, except for the built-in TITLE/TITLE1/TITLE2 palettes. - Known files are listed in
DAT_SPECSinside the script (MENU, BACK, CONTROLS, GFX, TITLE*, PANEL, MOVING, FIXED, CHARS6/8). Unknown.DATfiles are skipped.
Also added all levels as images. Example:
See levels/README.md
The images resulting from running this tool against Supaplex Spfix63 build are located in the /out directory. Previews below:
This code is licensed under the MIT license. See LICENSE.