This program is part of Netpbm.
pampop9 tiles your starting image xtiles by ytiles times. Each of these tiles is taken from a slightly different offset within the source, as determined by the xdelta and ydelta arguments.
The top line of tiles in the output is taken from the top of the source image, the second starts with the ydelta row of the source image, the next with the 2*ydelta row, and so on. Similarly, the first column of tiles in the output is taken from the left of the source image, the next starts with the xdelta column, the next with the 2*xdelta column, and so on.
With a 100 x 100 source image, then the output image from pampop9 3 3 10 10 will appear to be a three-by-three grid, each tile being 80 x 80 pixels. If the origin is taken to be the top-left corner, then the top row of tiles will take start at (0, 0) (10, 0) (20, 0) within the source image, the middle row will start at (0, 10) (10, 10) (20, 10), and the bottom row at (0, 20) (10, 20) (20, 20).
pampop9 was new in Netpbm 10.15 (April 2003). It was adapted slightly from pampup9, which was distributed by Robert Tinsley. At that time, it was distributed via http://www.thepoacher.net/code/#pampup9. By October 2004, that URL no longer was valid.
Copyright (C) 2003 by Robert Tinsley. This software is released under the GPL ( http://www.fsf.org/licenses/gpl.txt).