Jim T #1 the read/writepixelfast part will be the big timeconsumer here I think. Might be better of letting some tight assembly code handle that from a dll.. although I think the blitz routines are allready pretty much optimized to death