DPIC(1) DPIC(1)
NAME
dpic, todpic - Doom picture decoder and encoder
SYNOPSIS
dpic [ -f ] [ -p palette ] [ pic ]
todpic [ -fw ] [ -b bgcol ] [ -p palette ] [ image ]
DESCRIPTION
Dpic reads a doom picture formatted image (default standard
input), converts it to a Plan 9 image(6) and writes it to
standard out. Todpic does the opposite transformation.
A color palette is needed for the process; its location is
set to /mnt/wad/playpal by default. This may be overridden
with the -p command line option. Both programs also accept
an -f flag to indicate processing a doom 64x64 flat picture.
When encoding a doom picture, x and y offsets are set to the
input's top left corner coordinates. The -w flag sets the
offsets so as to center the picture when drawn by the doom
engine, which is useful for wall patches. The -b option
sets the RGB24 color to signal transparent pixels,
`0x00FFFF' by default.
EXAMPLES
Create a patch WAD (see wadfs(4)) replacing a sky texture.
First, create a 256x128 image, mirror it, and convert it for
use with tweak(1).
% png -9t tuttleglenda.png \
| resample -x 128 -y 128 \
| crop -r 0 0 256 128 \
| rotate -l \
| iconv -c m8 > tuttlesky
Next, use tweak(1) to tile the 128x128 picture. Then, mount
an IWAD containing the base color palette, convert to a doom
picture, create a patch WAD, then launch doom using it.
% games/wadfs /sys/games/lib/doom/doom2.wad
createfile SW18_7: file already exists
% games/wadfs -m /mnt/new
% games/todpic tuttlesky > /mnt/new/rsky1
% cp /mnt/new/WAD tuttle.wad
% games/doom -file tuttle.wad
Create a crude catclock weapon sprite.
% games/wadfs /sys/games/lib/doom/doom2.wad
Page 1 Plan 9 (printed 11/17/25)
DPIC(1) DPIC(1)
createfile SW18_7: file already exists
% mkdir /mnt/new/s
adding end marker S_END
% cp /mnt/wad/s/* /mnt/new/s/
% crop -r 0 0 114 120 -t -120 -60 catclock.bit \
| games/todpic -b 0xffffff > /mnt/new/s/punga0
% games/doom -file /mnt/new/WAD
SOURCE
/sys/src/games/dpic.c
/sys/src/games/todpic.c
SEE ALSO
games(1), tweak(1), wadfs(4)
HISTORY
Dpic and todpic first appeared in 9front (July, 2018).
Page 2 Plan 9 (printed 11/17/25)