home *** CD-ROM | disk | FTP | other *** search
- (* ------------------------------------------------------ *)
- (* WIPEEMS.PAS *)
- (* Freigabe "verlorener" EMS-Speicherbereiche *)
- (* Turbo Pascal Versionen 4.0 und 5.x *)
- (* Copyright (c) 1989 Karsten Gieselmann & TOOLBOX *)
- (* ------------------------------------------------------ *)
-
- PROGRAM WipeEms;
-
- {B-,I-,R-,S-,V-} (* keine Laufzeitprüfungen! *)
-
- USES
- DOS, EMS, Utility;
-
- VAR
- Count, Handle, Result, Pages : WORD;
-
- BEGIN
- StartUp('WIPEEMS - Freigabe "verlorener" EMS-Seiten');
- IF EMS.Installed THEN BEGIN
- IF ParamCount = 0 THEN BEGIN
- WriteLn('Aufruf: WIPEEMS [Handles]');
- END ELSE BEGIN
- FOR Count:=1 TO ParamCount DO BEGIN
- Val(ParamStr(Count), Handle, Result);
- IF Result = 0 THEN BEGIN
- Pages := EMS.PagesOwned(Handle);
- EMS.DeallocateMemory(Handle);
- Write('Handle #', Handle);
- IF EMS.Result = EMS.Ok THEN BEGIN
- Write(' (', Pages, ' Seiten bzw. ', Pages*16);
- WriteLn(' KBytes) freigegeben.');
- END ELSE BEGIN
- WriteLn(' kann nicht freigegeben werden!');
- END;
- END ELSE BEGIN
- WriteLn('Ungültiges Handle "',
- ParamStr(Count), '"');
- END;
- END;
- END;
- END ELSE BEGIN
- WriteLn('EMM.SYS nicht installiert!');
- END;
- END.
- (* ------------------------------------------------------ *)
- (* Ende von WIPEEMS.PAS *)