Advertisement
Guest User

Untitled

a guest
Sep 12th, 2012
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.36 KB | None | 0 0
  1. Program SVGA_Julia_DEMO_rel2 ;{  Diman rulez, Andrusha sucks !!!  }
  2. { Trident/S3 SVGA cards now supported, 640x480, 256 colors}
  3. { Trident9000 bug fixed }
  4. Const ChSiz=4096 ;
  5.       ITER=5000 ;
  6. Var Cache: array [0..ChSiz-1] of byte ;
  7.     sa,B,cp : word ;
  8.  
  9. Procedure SVGA (c:byte);
  10. Begin Cache[cp]:=c; inc(cp);
  11.  if cp=Chsiz then
  12.    Begin
  13.     cp:=0 ;
  14.     if sa=0 then       begin
  15.     asm mov dx, B
  16.     mov ax, 4f05h
  17.     xor bx, bx
  18.     int 10h end;
  19.     B:=B+1;        end;
  20. asm mov di, sa
  21.     push 0a000h
  22.     pop es
  23.     mov si, offset Cache
  24.     mov cx, ChSiz/4
  25.     cld
  26.     DB 66h
  27. rep movsw
  28.     add sa, ChSiz end;
  29.    End;
  30. End;
  31.  
  32.  
  33. Var x,y,pk,k: integer; dx,dy,xp,yp,xr,yr,x0,xl,yl,xs,ys,p,q,m : double ;
  34. Begin
  35. xl:=-0.095100101; yl:=-0.40001010099;
  36. xs:=0.2; ys:=0.2; p:=-0.9251; q:=0.301;
  37.       asm mov ax, 4f02h
  38.       mov bx, 101h
  39.       int 10h end;
  40. repeat
  41. begin
  42. sa:=0; B:=0; cp:=0;
  43. xp:=xl; yp:=yl; dx:=xs/639; dy:=ys/479;
  44. for y:=0 to 479 do
  45. Begin
  46. for x:=0 to 639 do
  47.  Begin
  48.  xr:=xp; yr:=yp; k:=-1;
  49.  repeat
  50.   x0:=xr;
  51.   xr:=xr*xr-yr*yr+p;
  52.   yr:=2*x0*yr+q;
  53.   inc (k);
  54.  until (k>=ITER) or (xr*xr+yr*yr > 400 );
  55.  if ((k=pk) and (k<=15)) or (k=ITER) then begin pk:=k; k:=0; end else pk:=k;
  56.  if (k>20) and (k<32) then k:=0;
  57.  SVGA (k); xp:=xp+dx;
  58.  End; xp:=xl; yp:=yp+dy;
  59. End;
  60. m:=xs*0.01;
  61. xs:=xs-m ; ys:=ys-m ; xl:=xl+m/2 ; yl:=yl+m/2 ;
  62. end
  63. until false ;
  64. End.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement