; Grayscaling Images Graphics 320, 240, 16, 2 img = LoadImage("two.bmp") LockBuffer ImageBuffer(img) For y = 0 To ImageHeight(img) - 1 For x = 0 To ImageWidth(img) - 1 argb = ReadPixelFast(x, y, ImageBuffer(img)) red = argb Shr 16 And $FF green = argb Shr 8 And $FF blue = argb And $FF gray = Int(.3 * red + .59 * green + .11 * blue) gray2 = gray Shl 16 + gray Shl 8 + gray WritePixelFast x, y, gray2, ImageBuffer(img) Next Next UnlockBuffer ImageBuffer(img) SetBuffer BackBuffer() While Not KeyDown(1) DrawImage img, 0, 0 Flip: Cls Wend: End