This should do what you want ..
Function wrap_image(image$,wrap$) i = LoadImage(image$) n = CreateImage(512,512) CopyRect 0,0,256,256,128,128,ImageBuffer(i),ImageBuffer(n) CopyRect 0,128,256,128,128,0,ImageBuffer(i),ImageBuffer(n) CopyRect 0,0,256,128,128,384,ImageBuffer(i),ImageBuffer(n) CopyRect 128,0,128,512,384,0,ImageBuffer(n),ImageBuffer(n) CopyRect 256,0,128,512,0,0,ImageBuffer(n),ImageBuffer(n) FreeImage i SaveImage (n,wrap$) Return n End Function