home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / spezial / 17 / wipeems.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1989-12-29  |  1.5 KB  |  48 lines

  1. (* ------------------------------------------------------ *)
  2. (*                      WIPEEMS.PAS                       *)
  3. (*       Freigabe "verlorener" EMS-Speicherbereiche       *)
  4. (*           Turbo Pascal Versionen 4.0 und 5.x           *)
  5. (*    Copyright (c) 1989  Karsten Gieselmann & TOOLBOX    *)
  6. (* ------------------------------------------------------ *)
  7.  
  8. PROGRAM WipeEms;
  9.  
  10. {B-,I-,R-,S-,V-}              (* keine Laufzeitprüfungen! *)
  11.  
  12. USES
  13.   DOS, EMS, Utility;
  14.  
  15. VAR
  16.   Count, Handle, Result, Pages : WORD;
  17.  
  18. BEGIN
  19.   StartUp('WIPEEMS - Freigabe "verlorener" EMS-Seiten');
  20.   IF EMS.Installed THEN BEGIN
  21.     IF ParamCount = 0 THEN BEGIN
  22.       WriteLn('Aufruf:  WIPEEMS [Handles]');
  23.     END ELSE BEGIN
  24.       FOR Count:=1 TO ParamCount DO BEGIN
  25.         Val(ParamStr(Count), Handle, Result);
  26.         IF Result = 0 THEN BEGIN
  27.           Pages := EMS.PagesOwned(Handle);
  28.           EMS.DeallocateMemory(Handle);
  29.           Write('Handle #', Handle);
  30.           IF EMS.Result = EMS.Ok THEN BEGIN
  31.             Write(' (', Pages, ' Seiten bzw. ', Pages*16);
  32.             WriteLn(' KBytes) freigegeben.');
  33.           END ELSE BEGIN
  34.             WriteLn(' kann nicht freigegeben werden!');
  35.           END;
  36.         END ELSE BEGIN
  37.           WriteLn('Ungültiges Handle "',
  38.                    ParamStr(Count), '"');
  39.         END;
  40.       END;
  41.     END;
  42.   END ELSE BEGIN
  43.     WriteLn('EMM.SYS nicht installiert!');
  44.   END;
  45. END.
  46. (* ------------------------------------------------------ *)
  47. (*                 Ende von WIPEEMS.PAS                   *)
  48.