blackmirror, конкретно на этом паскале вот:
От привычного паскаля отличается тем, что в функции и процедуры параметры не передаются (надеюсь, что только пока не передаются) и для этого используются глобальные переменные X1,Y1,X2,Y2. Процедура адаптирована на использование целочисленных переменных с разрядностью 16 бит, хотя, наверное хватит и 8 бит, если координаты не превышают 0-255. Позже попробую.Код:procedure DrawLine; begin dx:=0; if (x1-x2)<$8000 then dx:=x1-x2; if (x2-x1)<$8000 then dx:=x2-x1; dy:=0; if (y1-y2)<$8000 then dy:=y1-y2; if (y2-y1)<$8000 then dy:=y2-y1; if (x2-x1)<$8000 then dx1:=1 else dx1:=$FFFF; if (y2-y1)<$8000 then dy1:=1 else dy1:=$FFFF; if dx>dy then begin y:=dx / 2; for i:=dx downto 0 do begin asm(PUTPIXELA); y:=y+dy; if y>dx then begin y1:=y1+dy1; y:=y-dx; end; x1:=x1+dx1; end; end else begin y:=dy / 2; for i:=dy downto 0 do begin asm(PUTPIXELA); y:=y+dx; if y>dy then begin x1:=x1+dx1; y:=y-dy; end; y1:=y1+dy1; end; end; end;
Процедура точки PUTPIXELA на асме, берёт координаты из переменных X1 и Y1.




Ответить с цитированием
Размещение рекламы на форуме способствует его дальнейшему развитию 
