home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 19 / CD_ASCQ_19_010295.iso / dos / prg / pas / swag / tsr.swg / 0025_TSR.pas < prev    next >
Pascal/Delphi Source File  |  1994-08-24  |  1KB  |  41 lines

  1.  
  2. { This TSR, when press Crtl+Print Screen save to disk the screen. }
  3. {Antonio Moro's routines, from Spain TP Echo}
  4. {$M 1024, 0, 0}  (* 1 K for Stack *)
  5. {$S-}
  6. PROGRAM Caza;
  7. USES Dos, Crt;
  8. VAR   numfichero   : Byte;
  9.       fichero      : File;
  10.       s_num, drive : String [2];
  11.       buffg        : Pointer;
  12.  
  13. PROCEDURE Graba (Flags, CS, IP, AX, BX, CX, DX, SI, DI, DS, ES, BP: Word);
  14. INTERRUPT;
  15.    Begin
  16.         Str(numfichero,s_num);
  17.         Inc(numfichero);
  18.         Assign(fichero, drive + 'SCREEN.' + s_num);
  19.         Rewrite(fichero,1);
  20.         buffg:= Ptr($B000,0);     (* Hercules video memory direction *)
  21.         BlockWrite(fichero,buffg^,32768); (* save 32K block of video memory    
  22.                                           in a file*)
  23.         Close(fichero);
  24.    End;
  25.  
  26. BEGIN
  27.      If ParamCount = 1 Then  drive:=ParamStr(1) + ':'
  28.         Else drive:='C:';
  29.      Writeln;
  30.      HighVideo;
  31.      Writeln('Resident Savescreen.');
  32.      Write('For activate press SHIFT + PRTSCR');
  33.      LowVideo;
  34.      Writeln;
  35.      numfichero:=0;
  36.      SetINtVec(5, @Graba);  (* Change interrupt vector of 5 interruption
  37.                                (print screen) *) 
  38.      Keep(0);               (* End and Stay Resident *)
  39.  
  40. END.
  41.