Index: oup/current/Helper/LevelDB.pas
===================================================================
--- oup/current/Helper/LevelDB.pas	(revision 131)
+++ oup/current/Helper/LevelDB.pas	(revision 132)
@@ -66,9 +66,6 @@
   Stream_Dat, Stream_Raw, Stream_Sep: TFileStream;
 
-//  Data, rawdata: Tdata;
   BeginTime, FileTime: Double;
   Step:     Integer;
-//  rawlist:  TRawDataList;
-//  datlinks: TDatLinks;
   OniImage:   TOniImage;
   LevelID:    Integer;
@@ -91,4 +88,10 @@
 
   DatFileStream, RawFileStream: TMemoryStream;
+
+// ###########################
+  datsum, linksum, rawsum: Int64;
+  freq: Int64;
+  tempticks1, tempticks2: Int64;
+// ###########################
 const
   Steps: Byte = 3;
@@ -281,4 +284,9 @@
   Application.ProcessMessages;
 
+  QueryPerformanceFrequency(freq);
+  datsum := 0;
+  linksum := 0;
+  rawsum := 0;
+
   FileTime := Time;
   for FileID := 0 to DatHeader.Files - 1 do
@@ -289,4 +297,6 @@
     if FileInfo.Size > 0 then
     begin
+      QueryPerformanceCounter(tempticks1);
+
       FilesHeader[FileID].DataAddr := Stream_Body.Size + 8;
       DatFileStream := TMemoryStream.Create;
@@ -294,4 +304,7 @@
       DatFileStream.Seek(4, soFromBeginning);
       DatFileStream.Write(LevelID, 4);
+
+      QueryPerformanceCounter(tempticks2);
+      datsum := datsum + (tempticks2 - tempticks1);
 
       DatLinks := Connection.GetDatLinks(FileID);
@@ -308,4 +321,7 @@
         end;
       end;
+
+      QueryPerformanceCounter(tempticks1);
+      linksum := linksum + (tempticks1 - tempticks2);
 
       RawLinks := Connection.GetRawList(FileID);
@@ -335,4 +351,7 @@
       DatFileStream.Seek(0, soFromBeginning);
       Stream_Body.CopyFrom(DatFileStream, DatFileStream.Size);
+
+      QueryPerformanceCounter(tempticks2);
+      rawsum := rawsum + (tempticks2 - tempticks1);
     end
     else
@@ -356,4 +375,9 @@
     Application.ProcessMessages;
   end;
+
+  ShowMessage('AvgDats: ' + FloatToStr((datsum / progress.Max) / freq) + #13#10 +
+      'AvgLinks: ' + FloatToStr((linksum / progress.Max) / freq) + #13#10 +
+      'AvgRaws: ' + FloatToStr((rawsum / progress.Max) / freq)
+   );
 
   Stream_Dat.Write(DatHeader, SizeOf(DatHeader));
