{Original}
procedure Spiral(X,Y:OptInt16;MaxRadius:OptWord;Turns:OptInt16;Color:OptByte;CountPoints:OptInt16);
var i: OptInt16; angle, rStep: Real48;
begin
rStep := MaxRadius / (Turns * CountPoints);
for i := 0 to Turns*CountPoints - 1 do
begin
angle := i * 2 * ConstPi / CountPoints;
PutPixel(X + Round(rStep*i*Cos(angle)), Y + Round(rStep*i*Sin(angle)), Color);
end;
end;
{END Original}


procedure Spiral(X,Y:OptInt16;MaxRadius:OptWord;Turns:OptInt16;Color:OptByte;CountPoints:OptInt16);
var i: OptInt16; angle, rStep: Real48;
begin
rStep := MaxRadius / (Turns * CountPoints);
for i := 0 to Turns*CountPoints - 1 do
begin
angle := i * 2 * ConstPi / CountPoints;
PutPixel(X + Round(rStep*i*Cos(angle)), Y + Round(rStep*i*Sin(angle)), Color);
end;end;
