Why don't you create a new image and copy all image data? :S
Graphics 800,600,0 Local image:TImage=CreateImage(800,600) Local a:TImage=CopyImage(image) DebugStop Function CopyImage:TImage(image:TImage) Local newimage:TImage=CreateImage(image.width,image.height,image.frames.Length,image.flags) newimage.handle_x=image.handle_x newimage.handle_y=image.handle_y newimage.mask_r=image.mask_r newimage.mask_g=image.mask_g newimage.mask_b=image.mask_b For Local frame:Int=0 Until image.Frames.Length Local pixmap:TPixmap=LockImage(image,frame) 'pixmap copy newimage.SetPixmap(frame,pixmap.Copy()) 'pixmap clon 'newimage.pixmaps[frame]=image.pixmaps[frame] 'newimage.frames[frame]=image.frames[frame] 'newimage.seqs[frame]=image.seqs[frame] UnlockImage(image,frame) Next Return newimage EndFunction