home *** CD-ROM | disk | FTP | other *** search
/ PC Underground / UNDERGROUND.ISO / graphic / copper.pas < prev    next >
Pascal/Delphi Source File  |  1995-08-01  |  1KB  |  28 lines

  1. Uses Crt,ModeXLib;
  2. var y1,                         {y-location Copper 1}
  3.     y1_dir,                     {y-direction Copper 1}
  4.     Mask:Word;                  {overlay mask, for overlaying the copper}
  5.  
  6. Procedure MakeCopper(y_pos1,y_pos2,overlay_mask:word);external;
  7. {$l copper}
  8.  
  9. begin
  10.   TextMode(3);                  {Copper functions in EVERY video mode ! }
  11.   y1:=Port[$3da];               {switch ATC to Index-Mode}
  12.   Port[$3c0]:=$11 or 32;        {select Register 11h}
  13.   Port[$3c0]:=255;              {frame color 255}
  14.   y1:=0;                        {Start at upper screen border}
  15.   y1_dir:=2;                    {first movement down}
  16.   Mask:=$00ff;                  {first Copper 1 (red) in foreground}
  17.   Repeat
  18.     Inc(y1,y1_dir);             {Copper-movement}
  19.     If (y1<=0) or (y1>=150)     {at border : }
  20.       then Begin
  21.       y1_dir:=-y1_dir;          {reverse direction}
  22.       Mask:=Swap(Mask);         {each time a different copper in foreground}
  23.     End;
  24.     Write('T h  i  s   i  s  d  e  m  o   t  e  x  t  ');
  25.     MakeCopper(y1,150-y1,Mask); {Draw copper}
  26.   Until KeyPressed;
  27. End.
  28.