Microsoft Small Basic

Program Listing: FQG518
x = 10
y = 320
GraphicsWindow.BackgroundColor = "Black"
GraphicsWindow.SetPixel(320, x, "White")


While x<300

x = x + 1
spread = spread + 1

For div = -spread To spread

If (GraphicsWindow.GetPixel(320 - 1 + div, x - 1) = "#000000") And (GraphicsWindow.GetPixel(320 + div, x - 1) = "#000000") And (GraphicsWindow.GetPixel(320 + 1 + div, x - 1) = "#000000") Then
'[X][X][X]
GraphicsWindow.SetPixel(320 + div, x, "Black")
ElseIf (GraphicsWindow.GetPixel(320 - 1 + div, x - 1) = "#000000") And (GraphicsWindow.GetPixel(320 + div, x - 1) = "#000000") And (GraphicsWindow.GetPixel(320 + 1 + div, x - 1) = "#FFFFFF") Then
'[X][X][ ]
GraphicsWindow.SetPixel(320 + div, x, "White")
ElseIf (GraphicsWindow.GetPixel(320 - 1 + div, x - 1) = "#000000") And (GraphicsWindow.GetPixel(320 + div, x - 1) = "#FFFFFF") And (GraphicsWindow.GetPixel(320 + 1 + div, x - 1) = "#000000") Then
'[X][ ][X]
GraphicsWindow.SetPixel(320 + div, x, "Black")
ElseIf (GraphicsWindow.GetPixel(320 - 1 + div, x - 1) = "#000000") And (GraphicsWindow.GetPixel(320 + div, x - 1) = "#FFFFFF") And (GraphicsWindow.GetPixel(320 + 1 + div, x - 1) = "#FFFFFF") Then
'[X][ ][ ]
GraphicsWindow.SetPixel(320 + div, x, "Black")
ElseIf (GraphicsWindow.GetPixel(320 - 1 + div, x - 1) = "#FFFFFF") And (GraphicsWindow.GetPixel(320 + div, x - 1) = "#000000") And (GraphicsWindow.GetPixel(320 + 1 + div, x - 1) = "#000000") Then
'[ ][X][X]
GraphicsWindow.SetPixel(320 + div, x, "White")
ElseIf (GraphicsWindow.GetPixel(320 - 1 + div, x - 1) = "#FFFFFF") And (GraphicsWindow.GetPixel(320 + div, x - 1) = "#000000") And (GraphicsWindow.GetPixel(320 + 1 + div, x - 1) = "#FFFFFF") Then
'[ ][X][ ] First row!
GraphicsWindow.SetPixel(320 + div, x, "Black")
ElseIf (GraphicsWindow.GetPixel(320 - 1 + div, x - 1) = "#FFFFFF") And (GraphicsWindow.GetPixel(320 + div, x - 1) = "#FFFFFF") And (GraphicsWindow.GetPixel(320 + 1 + div, x - 1) = "#000000") Then
'[ ][ ][X]
GraphicsWindow.SetPixel(320 + div, x, "White")
ElseIf (GraphicsWindow.GetPixel(320 - 1 + div, x - 1) = "#FFFFFF") And (GraphicsWindow.GetPixel(320 + div, x - 1) = "#FFFFFF") And (GraphicsWindow.GetPixel(320 + 1 + div, x - 1) = "#FFFFFF") Then
'[ ][ ][ ]
GraphicsWindow.SetPixel(320 + div, x, "Black")
EndIf

'Interesting results:
'BWBBWBWB
'BWWBWBWB

EndFor

EndWhile