| |
|
|
| KompilierenMarcaSeparación
nProc lineOfPoints(long x,y,xx,yy){
long max=abs(x-xx),\
tmp=abs(y-yy)
case tmp>max : max=tmp
long data=dim(16+max*8)
linedda(x,y,xx,yy,procaddr(lineOfPoints.lineDDAProc),data)
mov eax,data
mov ebx,[eax]
inc ebx
mov [eax],ebx
imul ebx,8
add eax,ebx
mov [eax],xx
add eax,4
mov [eax],yy
return data
}
nProc lineOfPoints.lineDDAProc(long x,y,data){
push ebx
push ecx
mov eax,data
mov ebx,[eax]
inc ebx
mov [eax],ebx
imul ebx,8
add eax,ebx
mov [eax],x
add eax,4
mov [eax],y
pop ecx
pop a>
}
|
|
|
| |
|
|
|
Nico Madysa | Liefert una Zona zurück, el el Koordinaten aller Punkte el Linie zwischen (x,y) y (xx,yy) enthält. Der Zona es como folgt strukturiert:
Largo a Offset 0: Anzahl el gezeichneten Punkte. Largo a Offset 4: no definiert. Longs a Offset 8/12: X-/Y-Koordinate des ersten Punktes, usw. Der Zona es i. A. größer como necesariamente nötig. |
|
|
| |
|
|