And here is the same Mandelbrot animation written in FreePascal + egslengine. This is really fast!
program Mandelbrot;
uses egslengine;
var
x, y, c : integer;
przelx, przely, powiekszenie, przesx, przesy, x2, y2, x3, y3, a, b, z, a2, b2 : double;
begin
openwindow(240, 160, 32 ,'Mandelbrot Set');
przelx := 3 / 240;
przely := 2 / 160;
powiekszenie := 1;
przesx := 14.1779999496342;
przesy := 79.999903999999999;
repeat
begin
przelx := 3 / (240 * powiekszenie);
przely := 2 / (160 * powiekszenie);
for x := 0 to 240 do
begin
x3 := x - 120;
for y := 0 to 160 do
begin
y3 := y - 80;
c := 0;
a := 0;
b := 0;
z := 0;
x2 := (przelx * (x3 + (przesx * powiekszenie))) - 2;
y2 := (przely * (y3 + (przesy * powiekszenie))) - 1;
while (c < 255) and (z < 4) do
begin
a2 := a * a - b * b;
b2 := 2 * a * b;
a := a2 + x2;
b := b2 + y2;
z := a * a + b * b;
c := c + 1;
end;
if (c = 255) then
colour(0, 0, 0)
else
colour(255 - c, (c mod 50)* 5, c);
dot(x, y);
end;
end;
if (powiekszenie < 50 * 50 * 50 * 50 * 50 * 50 * 50 * 50) then
powiekszenie := powiekszenie + powiekszenie * 0.04;
redraw();
wait(20);
end;
until (getkey() = 27);
end.
Source code and an executable created on Linux Mint 9 32-bit are attached.