home *** CD-ROM | disk | FTP | other *** search
/ RBBS in a Box Volume 1 #2 / RBBS_vol1_no2.iso / add2 / tavram.zip / TAVTEST.PAS < prev   
Pascal/Delphi Source File  |  1989-06-01  |  2KB  |  69 lines

  1. {$M 16384,50000,600000}
  2. uses
  3.   Crt,
  4.   {Mon,}
  5.   TaVram;
  6. const
  7.   MaxBigArray = 255;
  8.   MaxArraySize = 400;
  9. type
  10.   BigRecPtr = ^BigRec;
  11.   BigRec = Record
  12.     A: Array[1..MaxArraySize] of byte;
  13.   end;
  14. var
  15.   BRArray : Array[1..MaxBigArray] of BigRecPtr;
  16.   I,J : integer;
  17.   Temp : LongInt;
  18.  
  19. procedure AbortTest;
  20. begin
  21.   writeln('Test failed.');
  22.   Halt(1);
  23. end;
  24.  
  25. begin
  26. {$P+}
  27.   Write('Press ENTER to continue.');
  28.   Readln;
  29.   VRamOn;
  30.   VRamMaxHeapToUse:=20000;
  31.   { FreeMin:=(MaxBigArray * 4) * 2;   absolute safest if not using
  32.                                       VRamMaxHeapToUse.            }
  33.   ClrScr;
  34.   writeln('START MemAvail=',MemAvail:6);
  35.   Window(1,2,80,25);
  36.   VRamPageOff;
  37.   for i:=1 to MaxBigArray do begin
  38.     New(BRArray[i]);
  39.     FillChar(BRArray[i]^,MaxArraySize,i);
  40.     write(^M'MemAvail=',MemAvail:6,' VRamHeapUsed=',VRamHeapUsed:6);
  41.     if i>100 then  {Watch VRamHeapUsed go way above VRamMaxHeapToUse.}
  42.       VRamPageOn;  {then watch it pop back down.}
  43.   end;
  44.   writeln;
  45.   while not KeyPressed do begin
  46.     i:=Random(MaxBigArray)+1;
  47.     write('Testing ',i:4,'....');
  48.     for j:=1 to MaxArraySize do
  49.       if BRArray[i]^.A[j]<>i then
  50.         AbortTest;
  51.     writeln('Tested OK!');
  52.   end;
  53.   for i:=50 to 55 do begin
  54.     Dispose(BRArray[i]);
  55.     write(^M'MemAvail=',MemAvail:6,'  VRamHeapUsed=',VRamHeapUsed:6);
  56.   end;
  57.   for i:=1 to 49 do begin
  58.     Dispose(BRArray[i]);
  59.     write(^M'MemAvail=',MemAvail:6,'  VRamHeapUsed=',VRamHeapUsed:6);
  60.   end;
  61.   for i:=56 to MaxBigArray do begin
  62.     Dispose(BRArray[i]);
  63.     write(^M'MemAvail=',MemAvail:6,'  VRamHeapUsed=',VRamHeapUsed:6);
  64.   end;
  65.   writeln(^M'END MemAvail=',MemAvail:6,'  VRamHeapUsed=',VRamHeapUsed:6);
  66.   readln;
  67. {$P-}
  68. end.
  69.