Czesc
prubuje napisac wlasna procedurke do rysowania lini , ale pojawia sie podszach urachamiania blad 207 : invalid floating pint operation :| i niby co on oznacza??
zamieszczam tu kod do pikseli i do lini oraz to co programik wykonuje:

procedure putpixel(x,y:integer;kolor:byte);
begin
asm
mov ax,0a000h
mov es,ax
mov ax,y
mov bx,y
shl ax,8
shl bx,6
add ax,bx
add ax,x
mov di,ax
mov al,kolor
mov byte ptr es:[di],al


end;
end;
procedure linia(x1,y1,x2,y2:integer;kolor:byte);
var
x,y,z,xs,ys,deltax,deltay,temp:integer;
d,r:real;
begin
if x1>x2 then begin xs:=-1;deltax:=x1-x2; end;
if x1=x2 then begin xs:=0;deltax:=1;  end;
if x1<x2 then begin xs:=1; deltax:=x2-x1; end;
if y1>y2 then begin Ys:=-1;deltay:=y1-y2; end;
if y1=y2 then begin  Ys:=0;deltay:=1; end;
if y1<y2 then begin  Ys:=1;deltay:=y2-y1 end;


x:=x1;
y:=y1;
if deltax>deltay then
begin
d:=deltay/deltax;
for z:=1 to deltax do
begin
putpixel(x1+(z*xs),y1+round(r*ys),kolor);
r:=r+d;
end;
end;
if deltax<=deltay  then
begin   if deltay <> 0 then
d:=deltax/deltay else
d:=0;
for z:=1 to deltay do
begin
putpixel(x1+round(r*xs),y1+(z*ys),kolor);
r:=r+d;
end;

end;
end;
for i:=1 to 720 do begin
 linia(160,100,160+round(sin(i)*100),100+round(cos(i)*40),2);
 end;