home *** CD-ROM | disk | FTP | other *** search
/ Collection of Hack-Phreak Scene Programs / cleanhpvac.zip / cleanhpvac / GFXFX2.ZIP / SAVEPCX.PAS < prev    next >
Pascal/Delphi Source File  |  1995-02-14  |  801b  |  28 lines

  1.  
  2. program save_pcx; { SAVEPCX.PAS }
  3. { Save complete screen to file in PCX-format (<64Kb!), by Bas van Gaalen }
  4. uses u_vga,u_ffpcx,u_pal,u_kb;
  5. var pal:pal_type; picbuf:pointer; i,j:word; r,g,b:byte;
  6. begin
  7.   setvideo($13);
  8.   getmem(picbuf,320*200);
  9.   for i:=0 to 319 do
  10.     for j:=0 to 199 do
  11.       mem[u_vidseg:j*320+i]:=j+i div 6;
  12.   move(mem[u_vidseg:0],mem[seg(picbuf^):0],320*200);
  13.   for i:=0 to 255 do begin
  14.     r:=0; g:=0; b:=i div 4;
  15.     setrgb(i,r,g,b);
  16.     pal[i].r:=r;
  17.     pal[i].g:=g;
  18.     pal[i].b:=b;
  19.   end;
  20.   waitkey(0);
  21.   if pcx_save('test.pcx',picbuf,pal)<>pcx_ok then begin
  22.     writeln('An error ocured: ',pcx_errstr); halt; end;
  23.   freemem(picbuf,320*200);
  24.   setvideo(u_lm);
  25.   writeln('Written: TEST.PCX, a 320x200x256 (default) pcx file.');
  26.   waitkey(0);
  27. end.
  28.