home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 26 / CD_ASCQ_26_1295.iso / voxrom / textes / repwin08 / annexes / squirrel / mem2 / memtest1.pas < prev    next >
Pascal/Delphi Source File  |  1995-10-01  |  1KB  |  48 lines

  1. { Exemple portant sur l'EMS }
  2.  
  3. Uses Memory, crt;
  4. var h : word;
  5. BEGIN
  6.  
  7.   If isEms then begin
  8.     Writeln ('Ems version : ', ems_ver div 10, '.', ems_ver mod 10);
  9.     Writeln ('Segment Ems : ', Hexa(Ems_Seg));
  10.     Writeln ('Nombre de pages totales : ', Ems_GetTotalPages);
  11.     Writeln ('Avant allocation    : ', Ems_GetFreePages);
  12.     Ems_Alloc (h, 2);
  13.     Writeln ('Après allocation    : ', Ems_GetFreePages);
  14.     Ems_UnAlloc (h);
  15.     Writeln ('Après désallocation : ', Ems_GetFreePages);
  16.     Ems_Map (h, 0, 0);
  17.  
  18.     Ems_alloc (h, 2);
  19.  
  20.     readkey;
  21.  
  22.     textattr := 1*16+14;
  23.     clrscr;
  24.     Gotoxy (20, 12);
  25.     Writeln ('On sauve cet écran qui sera restauré ensuite');
  26.     Move    (Ptr($B800, 0)^, Ptr(Ems_Seg, 0)^, 4000);
  27.  
  28.     readkey;
  29.  
  30.     textattr := 15;
  31.     clrscr;
  32.     Writeln ('on va restaurer l''écran précédent . . .');
  33.     readkey;
  34.  
  35.     Move    (Ptr(Ems_Seg, 0)^, Ptr($B800, 0)^, 4000);
  36.  
  37.     readkey;
  38.  
  39.     textattr := 15;
  40.     clrscr;
  41.  
  42.     Ems_unalloc (h);
  43.  
  44.     Writeln (Ems_err (ems_state));
  45.  
  46.   end else Writeln ('Pas d''expanded memory manager !!! Chargez EMM386.EXE');
  47.  
  48. END.